我想在asn1c中使用CONTAINING(http://lionet.info/asn1c/blog/)。我不知道如何給CONTAINING結構賦值。如何在asn1c中使用封裝的結構? (使用CONTAINING)
在我的例子中,我想給版本和tsapolicy的Octasd SEQUENCE值。我以爲我可以像任何其他asn1類型那樣做。
其他類型,例如INTGER,你可以使用函數來給出值。 我可以asn_long2INTEGER功能給予的contentType值:
EncapsulatedContentInfo_t *encapcontinfo;
asn_long2INTEGER(&encapcontinfo->contentType, 32);
在例如代碼:EncapsulatedContentInfo-> eContent.octasd.version 但我不 「見」 的背後octasd。
有沒有辦法達到封裝結構?我ASN1的
部分:
EncapsulatedContentInfo ::= SEQUENCE {
contentType INTEGER,
eContent [0] IMPLICIT SEQUENCE {
octasd Octasd
}
}
Octasd ::= OCTET STRING (CONTAINING SEQUENCE {
version INTEGER,
tsapolicy OBJECT IDENTIFIER
})
任何意見讚賞。