Zephyr Project API  3.3.0
A Scalable Open Source RTOS
mgmt.h File Reference

Go to the source code of this file.

Data Structures

struct  mgmt_handler
 Read handler and write handler for a single command ID. More...
 
struct  mgmt_group
 A collection of handlers for an entire command group. More...
 

Macros

#define MGMT_HDR_SIZE   8
 
#define MGMT_CTXT_SET_RC_RSN(mc, rsn)
 
#define MGMT_CTXT_RC_RSN(mc)   NULL
 

Typedefs

typedef void *(* mgmt_alloc_rsp_fn) (const void *src_buf, void *arg)
 Allocates a buffer suitable for holding a response. More...
 
typedef void(* mgmt_reset_buf_fn) (void *buf, void *arg)
 Resets a buffer to a length of 0. More...
 
typedef int(* mgmt_handler_fn) (struct smp_streamer *ctxt)
 Processes a request and writes the corresponding response. More...
 

Enumerations

enum  mcumgr_op_t { MGMT_OP_READ = 0 , MGMT_OP_READ_RSP , MGMT_OP_WRITE , MGMT_OP_WRITE_RSP }
 
enum  mcumgr_group_t {
  MGMT_GROUP_ID_OS = 0 , MGMT_GROUP_ID_IMAGE , MGMT_GROUP_ID_STAT , MGMT_GROUP_ID_CONFIG ,
  MGMT_GROUP_ID_LOG , MGMT_GROUP_ID_CRASH , MGMT_GROUP_ID_SPLIT , MGMT_GROUP_ID_RUN ,
  MGMT_GROUP_ID_FS , MGMT_GROUP_ID_SHELL , MGMT_GROUP_ID_PERUSER = 64 , ZEPHYR_MGMT_GRP_BASIC = (MGMT_GROUP_ID_PERUSER - 1)
}
 
enum  mcumgr_err_t {
  MGMT_ERR_EOK = 0 , MGMT_ERR_EUNKNOWN , MGMT_ERR_ENOMEM , MGMT_ERR_EINVAL ,
  MGMT_ERR_ETIMEOUT , MGMT_ERR_ENOENT , MGMT_ERR_EBADSTATE , MGMT_ERR_EMSGSIZE ,
  MGMT_ERR_ENOTSUP , MGMT_ERR_ECORRUPT , MGMT_ERR_EBUSY , MGMT_ERR_EACCESSDENIED ,
  MGMT_ERR_EPERUSER = 256
}
 

Functions

void mgmt_register_group (struct mgmt_group *group)
 Registers a full command group. More...
 
void mgmt_unregister_group (struct mgmt_group *group)
 Unregisters a full command group. More...
 
const struct mgmt_handlermgmt_find_handler (uint16_t group_id, uint16_t command_id)
 Finds a registered command handler. More...