Network Credential#
Functions#
Set a network credential including client credentials, certificates, and keys.
Retrieve a stored network credential.
Delete a stored network credential.
Function Documentation#
sl_net_set_credential#
sl_status_t sl_net_set_credential (sl_net_credential_id_t id, sl_net_credential_type_t type, const void * credential, uint32_t credential_length)
Set a network credential including client credentials, certificates, and keys.
[in] | id | Network credential identifier as identified by sl_net_credential_id_t. |
[in] | type | Network credential type as identified by sl_net_credential_type_t. |
[in] | credential | Pointer to the credential data object. |
[in] | credential_length | Length of the credential data object. |
This function sets the network credential type and data for the specified credential ID. The credential data can include client credentials, certificates, and keys.
Repeatedly calling this API with the same ID will overwrite the existing credential type and data.
Pre-conditions:
sl_net_init should be called before this API.
Returns
sl_status_t. See Status Codes and Additional Status Codes for details. If the credential is NULL or the credential length is zero, this API will return an error
SL_STATUS_INVALID_PARAMETER
.
Note
Certificates should follow the standard array format.
After every 64 bytes, the special character
\n
should be used as a delimiter.The private key is prefixed with a header like "-----BEGIN PRIVATE KEY-----" line and postfixed with an footer like"-----END PRIVATE KEY-----".
Certificates are prefixed with a header like "-----BEGIN CERTIFICATE-----" line and postfixed with an footer like"-----END CERTIFICATE-----" line.
Text outside the prefix and postfix lines is ignored and can be used for metadata.
The above mentioned Headers and Footers might vary
This API does not support the OPEN Security type for Wi-Fi client credentials.
338
of file components/service/network_manager/inc/sl_net.h
sl_net_get_credential#
sl_status_t sl_net_get_credential (sl_net_credential_id_t id, sl_net_credential_type_t * type, void * credential, uint32_t * credential_length)
Retrieve a stored network credential.
[in] | id | Network credential identifier as identified by sl_net_credential_id_t. |
[out] | type | Network credential type as identified by sl_net_credential_type_t. |
[out] | credential | Pointer to location where credential data is stored. |
[inout] | credential_length | in: Number of bytes available at credential, out: Number of bytes written. |
This function retrieves the network credential data for the specified credential ID. The retrieved credential data is stored in the provided credential object.
Pre-conditions:
sl_net_init should be called before this API.
Returns
sl_status_t. See Status Codes and Additional Status Codes for details.
Note
Currently, SL_NET_CERTIFICATE and SL_NET_SIGNING_CERTIFICATE are not supported for retrieval.
373
of file components/service/network_manager/inc/sl_net.h
sl_net_delete_credential#
sl_status_t sl_net_delete_credential (sl_net_credential_id_t id, sl_net_credential_type_t type)
Delete a stored network credential.
[in] | id | Network credential identifier as identified by sl_net_credential_id_t. |
[out] | type | Network credential type as identified by sl_net_credential_type_t. |
This function deletes the network credential data for the specified credential ID and type. Once deleted, the credential cannot be used for network operations.
Pre-conditions:
sl_net_init should be called before this API.
Returns
sl_status_t. See Status Codes and Additional Status Codes for details.
399
of file components/service/network_manager/inc/sl_net.h