1 /*
2  * Copyright (c) 2023 Nordic Semiconductor ASA
3  *
4  * SPDX-License-Identifier: Apache-2.0
5  */
6 
7 #ifndef H_SETTINGS_MGMT_
8 #define H_SETTINGS_MGMT_
9 
10 #ifdef __cplusplus
11 extern "C" {
12 #endif
13 
14 /**
15  * Command IDs for settings management group.
16  */
17 #define SETTINGS_MGMT_ID_READ_WRITE		0
18 #define SETTINGS_MGMT_ID_DELETE			1
19 #define SETTINGS_MGMT_ID_COMMIT			2
20 #define SETTINGS_MGMT_ID_LOAD_SAVE		3
21 
22 /**
23  * Command result codes for settings management group.
24  */
25 enum settings_mgmt_ret_code_t {
26 	/** No error, this is implied if there is no ret value in the response. */
27 	SETTINGS_MGMT_ERR_OK = 0,
28 
29 	/** Unknown error occurred. */
30 	SETTINGS_MGMT_ERR_UNKNOWN,
31 
32 	/** The provided key name is too long to be used. */
33 	SETTINGS_MGMT_ERR_KEY_TOO_LONG,
34 
35 	/** The provided key name does not exist. */
36 	SETTINGS_MGMT_ERR_KEY_NOT_FOUND,
37 
38 	/** The provided key name does not support being read. */
39 	SETTINGS_MGMT_ERR_READ_NOT_SUPPORTED,
40 
41 	/** The provided root key name does not exist. */
42 	SETTINGS_MGMT_ERR_ROOT_KEY_NOT_FOUND,
43 
44 	/** The provided key name does not support being written. */
45 	SETTINGS_MGMT_ERR_WRITE_NOT_SUPPORTED,
46 
47 	/** The provided key name does not support being deleted. */
48 	SETTINGS_MGMT_ERR_DELETE_NOT_SUPPORTED,
49 };
50 
51 #ifdef __cplusplus
52 }
53 #endif
54 
55 #endif
56