36 #ifndef LWM2M_SECURITY_H 37 #define LWM2M_SECURITY_H 39 #define LWM2M_SECURITY_SERVER_URI_ID 0 40 #define LWM2M_SECURITY_BOOTSTRAP_SERVER_ID 1 41 #define LWM2M_SECURITY_MODE_ID 2 42 #define LWM2M_SECURITY_CLIENT_PKI_ID 3 43 #define LWM2M_SECURITY_SERVER_PKI_ID 4 44 #define LWM2M_SECURITY_KEY_ID 5 45 #define LWM2M_SECURITY_SHORT_SERVER_ID 10 48 #define LWM2M_SECURITY_MODE_PSK 0 50 #define LWM2M_SECURITY_MODE_RPK 1 52 #define LWM2M_SECURITY_MODE_CERTIFICATE 2 54 #define LWM2M_SECURITY_MODE_NOSEC 3 56 #ifdef LWM2M_SECURITY_CONF_URI_SIZE 57 #define LWM2M_SECURITY_URI_SIZE LWM2M_SECURITY_CONF_URI_SIZE 59 #define LWM2M_SECURITY_URI_SIZE 64 62 #ifdef LWM2M_SECURITY_CONF_KEY_SIZE 63 #define LWM2M_SECURITY_KEY_SIZE LWM2M_SECURITY_CONF_KEY_SIZE 65 #define LWM2M_SECURITY_KEY_SIZE 32 69 lwm2m_object_instance_t instance;
72 uint8_t security_mode;
73 uint8_t server_uri[LWM2M_SECURITY_URI_SIZE];
74 uint8_t server_uri_len;
75 uint8_t public_key[LWM2M_SECURITY_KEY_SIZE];
76 uint8_t public_key_len;
77 uint8_t secret_key[LWM2M_SECURITY_KEY_SIZE];
78 uint8_t secret_key_len;
79 uint8_t server_public_key[LWM2M_SECURITY_KEY_SIZE];
80 uint8_t server_public_key_len;
81 } lwm2m_security_server_t;
83 lwm2m_security_server_t *lwm2m_security_get_first(
void);
84 lwm2m_security_server_t *lwm2m_security_get_next(lwm2m_security_server_t *last);
86 lwm2m_security_server_t *lwm2m_security_add_server(uint16_t instance_id,
88 const uint8_t *server_uri,
89 uint8_t server_uri_len);
91 int lwm2m_security_set_server_psk(lwm2m_security_server_t *server,
92 const uint8_t *identity,
97 void lwm2m_security_init(
void);