функция CertStore_MoveCertificate
Заголовок: #include <applibs/certstore.h>
Переименовывает сертификат. Оба сертификата уже должны быть установлены в хранилище сертификатов.
int CertStore_MoveCertificate(const char *sourceIdentifier, const char *destIdentifier);
Параметры
sourceIdentifier
Текущий идентификатор сертификата.destIdentifier
Новый идентификатор сертификата.
Ошибки
Возвращает значение -1 при обнаружении ошибки и задает errno
значение ошибки.
EACCES: операция запрещена, так как возможность CertStore не задана в манифесте приложения.
EAGAIN: компонент хранилища сертификатов ОС еще не готов.
EFAULT:
sourceIdentifier
параметр илиdestIdentifier
имеет значение NULL.EINVAL:
sourceIdentifier
параметр илиdestIdentifier
не является допустимым именем идентификатора.ENOENT: сертификат с идентификатором
sourceIdentifier
не существует.
Можно также указать любой другой errno
вариант. Такие ошибки не являются детерминированными, и нет никакой гарантии, что такое же поведение будет сохранено при обновлении системы.
Возвращаемое значение
Возвращает значение 0 для успешного выполнения или -1 для сбоя. В этом случае errno
задается значение ошибки.
Требования к манифесту приложения
Манифест приложения должен включать возможность CertStore.
Замечания
Если какой-либо тип сертификата с идентификатором destIdentifier
уже существует, он будет заменен содержимым сертификата по адресу sourceIdentifier
, и sourceidentifier
больше не будет существовать.
Осторожностью
Так как идентификаторы сертификатов являются общесистемными, az sphere
команда или вызов функции, добавляющий новый сертификат, может перезаписать сертификат, добавленный ранее командой или вызовом функции, что может привести к сбоям сетевого подключения. Настоятельно рекомендуется разработать четкие процедуры обновления сертификатов и тщательно выбирать идентификаторы сертификатов.
Дополнительные сведения о том, как Azure Sphere использует идентификаторы сертификатов, см. в разделе Идентификаторы сертификатов.
Эта функция переименовывает сертификаты, но не обновляет конфигурации, в которых они используются. Чтобы использовать переименованные сертификаты, приложение должно перезагрузить конфигурацию Wi-Fi, вызвав WifiConfig_ReloadConfig. Wi-Fi конфигурации, использующие только sourceIdentifier
, должны быть обновлены для использования допустимого идентификатора.