LCOV - code coverage report
Current view: top level - zephyr/mgmt/mcumgr/grp/os_mgmt - os_mgmt_client.h Hit Total Coverage
Test: new.info Lines: 6 7 85.7 %
Date: 2024-12-22 00:14:23

          Line data    Source code
       1           0 : /*
       2             :  * Copyright (c) 2023 Nordic Semiconductor ASA
       3             :  *
       4             :  * SPDX-License-Identifier: Apache-2.0
       5             :  */
       6             : 
       7             : #ifndef H_OS_MGMT_CLIENT_
       8             : #define H_OS_MGMT_CLIENT_
       9             : 
      10             : #include <inttypes.h>
      11             : #include <zephyr/mgmt/mcumgr/smp/smp_client.h>
      12             : 
      13             : /**
      14             :  * @brief MCUmgr OS management client API
      15             :  * @defgroup mcumgr_os_mgmt_client MCUmgr os_mgmt_client API
      16             :  * @ingroup mcumgr
      17             :  * @{
      18             :  */
      19             : 
      20             : #ifdef __cplusplus
      21             : extern "C" {
      22             : #endif
      23             : 
      24             : /**
      25             :  * @brief OS mgmt client object
      26             :  */
      27           1 : struct os_mgmt_client {
      28             :         /** SMP client object  */
      29           1 :         struct smp_client_object *smp_client;
      30             :         /** Command status */
      31           1 :         int status;
      32             : };
      33             : 
      34             : /**
      35             :  * @brief Initialize OS management client.
      36             :  *
      37             :  * @param client OS mgmt client object
      38             :  * @param smp_client SMP client object
      39             :  *
      40             :  */
      41           1 : void os_mgmt_client_init(struct os_mgmt_client *client, struct smp_client_object *smp_client);
      42             : 
      43             : /**
      44             :  * @brief Send SMP message for Echo command.
      45             :  *
      46             :  * @param client OS mgmt client object
      47             :  * @param echo_string Echo string
      48             :  * @param max_len Max length of @p echo_string
      49             :  *
      50             :  * @return 0 on success.
      51             :  * @return @ref mcumgr_err_t code on failure.
      52             :  */
      53           1 : int os_mgmt_client_echo(struct os_mgmt_client *client, const char *echo_string, size_t max_len);
      54             : 
      55             : /**
      56             :  * @brief Send SMP Reset command.
      57             :  *
      58             :  * @param client OS mgmt client object
      59             :  *
      60             :  * @return 0 on success.
      61             :  * @return @ref mcumgr_err_t code on failure.
      62             :  */
      63           1 : int os_mgmt_client_reset(struct os_mgmt_client *client);
      64             : 
      65             : /**
      66             :  * @}
      67             :  */
      68             : 
      69             : #ifdef __cplusplus
      70             : }
      71             : #endif
      72             : 
      73             : #endif /* H_OS_MGMT_CLIENT_ */

Generated by: LCOV version 1.14