CertStore_MoveCertificate 函数

标头: #include <applibs/certstore.h>

重命名证书。 这两个证书必须已安装在证书存储中。

int CertStore_MoveCertificate(const char *sourceIdentifier, const char *destIdentifier);

参数

  • sourceIdentifier 证书的当前 ID。

  • destIdentifier 证书的新 ID。

错误

如果遇到错误并设置为 errno 错误值,则返回 -1。

  • EACCES:不允许此操作,因为应用程序清单中未设置 CertStore 功能。

  • EAGAIN:OS 证书存储组件尚未准备就绪。

  • EFAULT: sourceIdentifierdestIdentifier 参数为 NULL。

  • EINVAL: sourceIdentifierdestIdentifier 参数不是有效的标识符名称。

  • ENOENT:具有标识符 sourceIdentifier 的证书不存在。

还可以指定任何其他 errno 错误;此类错误不是确定性的,也不能保证通过系统更新保留相同的行为。

返回值

如果成功,则返回 0,如果失败,则返回 -1,在这种情况下 errno ,将 设置为错误值。

应用程序清单要求

应用程序清单必须包含 CertStore 功能。

言论

如果已存在任何类型的具有标识符 destIdentifier 的证书,则会将其替换为 证书的内容, sourceIdentifier并且 sourceidentifier 将不再存在。

谨慎

由于证书 ID 是系统范围的,因此添加新证书的 az sphere 命令或函数调用可能会覆盖先前的命令或函数调用添加的证书,这可能会导致网络连接失败。 强烈建议你制定明确的证书更新过程,并仔细选择证书 ID。

有关 Azure Sphere 如何使用 证书 ID 的详细信息,请参阅证书 ID。

此函数重命名证书,但不更新使用证书的配置。 若要使用重命名的证书,应用必须通过调用 WifiConfig_ReloadConfig 重新加载 Wi-Fi 配置。 Wi-Fi 仅使用 的配置 sourceIdentifier 必须更新为使用有效标识符。