nRF Connect SDK API 3.4.99
Loading...
Searching...
No Matches
modem_key_mgmt.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2019 Nordic Semiconductor ASA
3 *
4 * SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
5 */
6
7#ifndef MODEM_KEY_MGMT_H__
8#define MODEM_KEY_MGMT_H__
9
10#include <stdbool.h>
11#include <stdint.h>
12
13#include <nrf_socket.h>
14#include <time.h>
15
16#ifdef __cplusplus
17extern "C" {
18#endif
19
28#define MODEM_KEY_MGMT_DIGEST_SIZE (32)
29
38
46 nrf_sec_tag_t sec_tag, enum modem_key_mgmt_cred_type cred_type);
47
71int modem_key_mgmt_write(nrf_sec_tag_t sec_tag,
72 enum modem_key_mgmt_cred_type cred_type,
73 const void *buf, size_t len);
74
92int modem_key_mgmt_delete(nrf_sec_tag_t sec_tag,
93 enum modem_key_mgmt_cred_type cred_type);
94
109int modem_key_mgmt_clear(nrf_sec_tag_t sec_tag);
110
129int modem_key_mgmt_read(nrf_sec_tag_t sec_tag,
130 enum modem_key_mgmt_cred_type cred_type,
131 void *buf, size_t *len);
132
148int modem_key_mgmt_cmp(nrf_sec_tag_t sec_tag,
149 enum modem_key_mgmt_cred_type cred_type,
150 const void *buf, size_t len);
151
165int modem_key_mgmt_digest(nrf_sec_tag_t sec_tag,
166 enum modem_key_mgmt_cred_type cred_type,
167 void *buf, size_t len);
168
181int modem_key_mgmt_certexpiry(nrf_sec_tag_t sec_tag,
182 enum modem_key_mgmt_cred_type cred_type,
183 time_t *expiry);
184
197int modem_key_mgmt_exists(nrf_sec_tag_t sec_tag,
198 enum modem_key_mgmt_cred_type cred_type,
199 bool *exists);
200
211
214#ifdef __cplusplus
215}
216#endif
217
218#endif /* MODEM_KEY_MGMT_H__ */
int modem_key_mgmt_write(nrf_sec_tag_t sec_tag, enum modem_key_mgmt_cred_type cred_type, const void *buf, size_t len)
Write or update a credential in persistent storage.
int modem_key_mgmt_read(nrf_sec_tag_t sec_tag, enum modem_key_mgmt_cred_type cred_type, void *buf, size_t *len)
Read a credential from persistent storage.
void(* modem_key_mgmt_list_cb_t)(nrf_sec_tag_t sec_tag, enum modem_key_mgmt_cred_type cred_type)
Credential list entry handler function prototype.
Definition modem_key_mgmt.h:45
int modem_key_mgmt_clear(nrf_sec_tag_t sec_tag)
Delete all credentials for a given sectag from persistent storage.
int modem_key_mgmt_delete(nrf_sec_tag_t sec_tag, enum modem_key_mgmt_cred_type cred_type)
Delete a credential from persistent storage.
int modem_key_mgmt_certexpiry(nrf_sec_tag_t sec_tag, enum modem_key_mgmt_cred_type cred_type, time_t *expiry)
Read the expiry time of a certificate from persistent storage.
int modem_key_mgmt_digest(nrf_sec_tag_t sec_tag, enum modem_key_mgmt_cred_type cred_type, void *buf, size_t len)
Read the SHA-256 digest of a credential from persistent storage.
int modem_key_mgmt_cmp(nrf_sec_tag_t sec_tag, enum modem_key_mgmt_cred_type cred_type, const void *buf, size_t len)
Compare a credential with a credential in persistent storage.
int modem_key_mgmt_exists(nrf_sec_tag_t sec_tag, enum modem_key_mgmt_cred_type cred_type, bool *exists)
Check if a credential exists in persistent storage.
int modem_key_mgmt_list(modem_key_mgmt_list_cb_t list_cb)
List all the available credentials in persistent storage.
modem_key_mgmt_cred_type
Credential types.
Definition modem_key_mgmt.h:31
@ MODEM_KEY_MGMT_CRED_TYPE_PRIVATE_CERT
Definition modem_key_mgmt.h:34
@ MODEM_KEY_MGMT_CRED_TYPE_IDENTITY
Definition modem_key_mgmt.h:36
@ MODEM_KEY_MGMT_CRED_TYPE_CA_CHAIN
Definition modem_key_mgmt.h:32
@ MODEM_KEY_MGMT_CRED_TYPE_PSK
Definition modem_key_mgmt.h:35
@ MODEM_KEY_MGMT_CRED_TYPE_PUBLIC_CERT
Definition modem_key_mgmt.h:33