c - 无法将 pkcs#11 模块添加到 secmod 数据库

标签 c firefox pki windows-installer pkcs#11

我正在尝试通过 MSI 安装应用程序将 PKCS#11 模块安装到 Mozilla Firefox 中。在互联网上进行一些搜索后,我偶然发现了 modutil 工具,该工具具有多种职责,特别是在我的例子中,用于将 PKCS#11 模块安装/卸载到 NSS 安全数据库。我下载了 modutil 的最新源代码并使用 MozillaBuild 构建了它。

此外,我编写了一个 C 代码,使用 secmod_addnewmodule 将模块添加到数据库,该代码返回“-1”作为错误。

以下是我添加模块的代码,其中 configdirsecmoddb 数据库 的路径。

int rv = NSS_Initialize(configdir, "", "", SECMOD_DB, NSS_INIT_FORCEOPEN );
hr = SECMOD_AddNewModule("test","D:\\Pkcs\\PKCS11_VSC.dll",internalMechanismFlags,internalEnableFlags);

有谁知道我如何克服这个问题,以及使用这个实用程序是否有任何看不见的方面。另外,是否有一种解决方案可以通过一个通用流程为所有用户配置文件安装/卸载 pkcs#11 模块。最后,是否有更好的解决方案来使用我的设置完成安装任务。我正在使用 WiX Toolset 创建 MSI 设置

最佳答案

如果 NSS_Initialize 无法打开 secmod 数据库,我们无法将该模块添加到数据库。 nss 库自动采用添加数据库所需的默认标志。 secmod _deletemodule 删除添加到数据库的模块。

关于c - 无法将 pkcs#11 模块添加到 secmod 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32042981/

相关文章:

c - 为什么我的代码是逐字打印而不是逐句打印?

c++ - 即使明确指定,也使用 Makefile : picks file. c 而不是 file.cpp 进行构建

c - MPI 超额认购

c - 运算符优先级和演变

html - "text-overflow: ellipsis"在带有 float 元素的 Firefox 中无法正常工作

c# - Jquery DataTable TableTool 在 IE 和 Firefox 中不起作用

Java - 使用系统 TrustStore 验证证书

go - PKI基础设施

javascript - IMacros 从 CSV 文件读取/写入

macos - OS X 上钥匙串(keychain)中的不可提取私钥