ASN1_ENUMERATED の操作方法に関する openssl のページにドキュメントが見つかりませんでした。
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を返します。なぜゼロにしないのですか?
記事は大歓迎です。