1# Copyright Runtime.io 2018. All rights reserved.
2# Copyright Nordic Semiconductor ASA 2020-2022. All rights reserved.
3# SPDX-License-Identifier: Apache-2.0
4
5# The Kconfig is dedicated to mgmt subsystem of MCUmgr. Kconfig options defined
6# here affect behaviour of services provided by source code of mcumgr/mgmt/
7# directory, like management group registration or overall hooks support.
8#
9# All Kconfig options defined with this file should begin with prefix:
10#  MCUMGR_MGMT_
11
12config MCUMGR_MGMT_NOTIFICATION_HOOKS
13	bool "MCUmgr notification hook support"
14	help
15	  With this enabled, applications and parts of code can register for MCUmgr event
16	  notifications which will result in callbacks when a registered event occurs. Note that
17	  this enables the base notification functionality but itself does not enable any
18	  notifications, which must be enabled by selecting other Kconfig options.
19
20	  To enable notifications in code, mgmt_callback_register() must be called with the
21	  callback function and events that want to be received. Multiple handlers can be
22	  registered and will all be called when registered events occur.
23
24	  Some callbacks support notifying the calling function of a status, in which to accept
25	  or decline the current operation, by returning false this will signal to the calling
26	  function that the request should be denied, for informal-only notifications or
27	  acceptable, true must be returned by all the registered notification handlers.
28
29config MCUMGR_MGMT_HANDLER_USER_DATA
30	bool "MCUmgr mgmt handler user data support"
31	help
32	  This will add an extra field to the struct mgmt_handler that will allow a user
33	  to pass user_data when the defined handler is called.
34
35config MCUMGR_MGMT_CUSTOM_PAYLOAD
36	bool "MCUmgr custom payload"
37	help
38	  When this config is enabled, a user can use the field `custom_payload` in `mgmt_handler` to
39	  skip the generation of the cbor start- and end byte in `smp_handle_single_payload` and
40	  instead use a user defined payload in SMP messages.
41