我正在PEM
中加载BIO
(来自文件或直接来自用户输入)。
此PEM可以包含1到N个堆叠的证书。
我找不到一个功能,可以从我的个人标签中获取STACK_OF(X509*)
,就像PEM_read_bio_X509
对单个X509*
一样。
这样的功能存在吗?如果它没有,我可以用另一种方式得出相同的结果吗?
答案 0 :(得分:0)
这是link @Reinier Torenbeek提供的相关部分:
STACK_OF(X509_INFO) *certstack;
const char ca_filestr[] = "./cabundle.pem";
stackbio = BIO_new(BIO_s_file());
outbio = BIO_new_fp(stdout, BIO_NOCLOSE);
/* ---------------------------------------------------------- *
* Load the file with the list of certificates in PEM format *
* ---------------------------------------------------------- */
if (BIO_read_filename(stackbio, ca_filestr) <= 0) {
BIO_printf(outbio, "Error loading cert bundle into memory\n");
exit(-1);
}
certstack = PEM_X509_INFO_read_bio(stackbio, NULL, NULL, NULL);