我在 openssl 的页面上没有找到关于如何使用 ASN1_ENUMERATED 的文档。
使用 BERViewer 可视化结构:
所以我用:
ASN1_SEQUENCE_ANY *asn1SequenceAny = sk_ASN1_TYPE_new_null();
asn1SequenceAny = d2i_ASN1_SEQUENCE_ANY(&asn1SequenceAny, (const unsigned char**)&data,len);
ASN1_TYPE *asn1Type = NULL;
asn1Type = sk_ASN1_TYPE_pop(asn1SequenceAny);
if(asn1Type->type == V_ASN1_ENUMERATED)
{
asn1Type->value.enumerated->data; // How to get sequence inside [0] ?
}
磁盘“asn1Type->value.enumerated->data”上的枚举数据如下所示:
如何从 [0] 获取 ASN1_SEQUENCE_ANY:
SEQUENCE
|__SEQUENCE
|__SEQUENCE
我试过:ASN1_ENUMERATED_get,返回-1。为什么不是零?
文章非常受欢迎。