我要评分
获取效率
正确性
完整性
易理解

ASN.1 Encoding and Decoding Interfaces

BER Encoding Interfaces

Table 1 Definition of the BER encoding interfaces

Interface

Definition

Description

AsnBerEncodeBool

void AsnBerEncodeBool(const AsnDesc * desc, void* stru, AsnCtx* ctx);

Encodes data of the BOOL type.

AsnBerEncodeInt32

void AsnBerEncodeInt32(const AsnDesc* desc, void* stru, AsnCtx* ctx);

Encodes data of the INTEGER type within the int32 range.

AsnBerEncodeUint32

void AsnBerEncodeUint32(const AsnDesc* desc, void* stru, AsnCtx* ctx);

Encodes data of the INTEGER type within the uint32 range.

AsnBerEncodeInt64

void AsnBerEncodeInt64(const AsnDesc* desc, void* stru, AsnCtx* ctx);

Encodes data of the INTEGER type within the int64 range.

AsnBerEncodeUint64

void AsnBerEncodeUint64(const AsnDesc* desc, void* stru, AsnCtx* ctx);

Encodes data of the INTEGER type within the uint64 range.

AsnBerEncodeEnum

void AsnBerEncodeEnum(const AsnDesc* desc, void* stru, AsnCtx* ctx);

Encodes data of the ENUMERATED type.

AsnBerEncodeNull

void AsnBerEncodeNull(const AsnDesc* desc, void* stru, AsnCtx* ctx);

Encodes data of the NULL type.

AsnBerEncodeReal

void AsnBerEncodeReal(const AsnDesc* desc, void* stru, AsnCtx* ctx);

Encodes data of the REAL type.

AsnBerEncodeBitStringInt

void AsnBerEncodeBitStringInt(const AsnDesc* desc, void* stru, AsnCtx* ctx);

Encodes data of the BIT STRING type for integer type structures.

AsnBerEncodeBitStringArr

void AsnBerEncodeBitStringArr(const AsnDesc* desc, void* stru, AsnCtx* ctx);

Encodes data of the BIT STRING type for array type structures.

AsnBerEncodeOctStringInt

void AsnBerEncodeOctStringInt(const AsnDesc* desc, void* stru, AsnCtx* ctx);

Encodes data of the OCTET STRING type for integer type structures.

AsnBerEncodeOctStringArr

void AsnBerEncodeOctStringArr(const AsnDesc* desc, void* stru, AsnCtx* ctx);

Encodes data of the OCTET STRING type for array type structures.

AsnBerEncodeCharString

void AsnBerEncodeCharString(const AsnDesc* desc, void* stru, AsnCtx* ctx);

Encodes data of the string type, including PrintableString, IA5String, VisibleString, GeneralString, and UTF8String.

AsnBerEncodeSequence

void AsnBerEncodeSequence(const AsnDesc* desc, void* stru, AsnCtx* ctx);

Encodes data of the SEQUENCE type.

AsnBerEncodeList

void AsnBerEncodeList(const AsnDesc* desc, void* stru, AsnCtx* ctx);

Encodes data of the SEQUENCE OF type.

AsnBerEncodeChoice

void AsnBerEncodeChoice(const AsnDesc* desc, void* stru, AsnCtx* ctx);

Encodes data of the CHOICE type.

BER Decoding Interfaces

Table 2 Definition of the BER decoding interfaces

Interface

Definition

Description

AsnBerDecodeBool

void AsnBerDecodeBool(const AsnDesc * desc, void* stru, AsnCtx* ctx);

Decodes data of the BOOL type.

AsnBerDecodeInt32

void AsnBerDecodeInt32(const AsnDesc* desc, void* stru, AsnCtx* ctx);

Decodes data of the INTEGER type within the int32 range.

AsnBerDecodeUint32

void AsnBerDecodeUint32(const AsnDesc* desc, void* stru, AsnCtx* ctx);

Decodes data of the INTEGER type within the uint32 range.

AsnBerDecodeInt64

void AsnBerDecodeInt64(const AsnDesc* desc, void* stru, AsnCtx* ctx);

Decodes data of the INTEGER type within the int64 range.

AsnBerDecodeUint64

void AsnBerDecodeUint64(const AsnDesc* desc, void* stru, AsnCtx* ctx);

Decodes data of the INTEGER type within the uint64 range.

AsnBerDecodeEnum

void AsnBerDecodeEnum(const AsnDesc* desc, void* stru, AsnCtx* ctx);

Decodes data of the ENUMERATED type.

AsnBerDecodeNull

void AsnBerDecodeNull(const AsnDesc* desc, void* stru, AsnCtx* ctx);

Decodes data of the NULL type.

AsnBerDecodeReal

void AsnBerDecodeReal(const AsnDesc* desc, void* stru, AsnCtx* ctx);

Decodes data of the REAL type.

AsnBerDecodeBitStringInt

void AsnBerDecodeBitStringInt(const AsnDesc* desc, void* stru, AsnCtx* ctx);

Decodes data of the BIT STRING type for integer type structures.

AsnBerDecodeBitStringArr

void AsnBerDecodeBitStringArr(const AsnDesc* desc, void* stru, AsnCtx* ctx);

Decodes data of the BIT STRING type for array type structures.

AsnBerDecodeOctStringInt

void AsnBerDecodeOctStringInt(const AsnDesc* desc, void* stru, AsnCtx* ctx);

Decodes data of the OCTET STRING type for integer type structures.

AsnBerDecodeOctStringArr

void AsnBerDecodeOctStringArr(const AsnDesc* desc, void* stru, AsnCtx* ctx);

Decodes data of the OCTET STRING type for array type structures.

AsnBerDecodeCharString

void AsnBerDecodeCharString(const AsnDesc* desc, void* stru, AsnCtx* ctx);

Decodes data of the string type, including PrintableString, IA5String, VisibleString, GeneralString, and UTF8String.

AsnBerDecodeSequence

void AsnBeDecodeSequence(const AsnDesc* desc, void* stru, AsnCtx* ctx);

Decodes data of the SEQUENCE type.

AsnBerDecodeList

void AsnBerDecodeList(const AsnDesc* desc, void* stru, AsnCtx* ctx);

Decodes data of the SEQUENCE OF type.

AsnBerDecodeChoice

void AsnBerDecodeChoice(const AsnDesc* desc, void* stru, AsnCtx* ctx);

Decodes data of the CHOICE type.

PER Encoding Interfaces

Table 3 Definition of the PER encoding interfaces

Interface

Definition

Description

AsnPerEncodeInt

void AsnPerEncodeInt(const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes signed constrained integers.

AsnPerEncodeUint

void AsnPerEncodeUint (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes unsigned constrained integers.

AsnPerEncodeIntUc

void AsnPerEncodeIntUc (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes unconstrained integers.

AsnPerEncodeIntSc

void AsnPerEncodeIntSc (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes semi-constrained integers.

AsnPerEncodeIntExt

void AsnPerEncodeIntExt (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes constrained integers with the extension flag.

AsnPerEncodeBool

void AsnPerEncodeBool (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes data of the BOOL type.

AsnPerEncodeEnum

void AsnPerEncodeEnum (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes data of the ENUMERATED type without the extension flag.

AsnPerEncodeEnumExt

void AsnPerEncodeEnumExt (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes data of the ENUMERATED type with the extension flag.

AsnPerEncodeReal

void AsnPerEncodeReal (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes data of the REAL type.

AsnPerEncodeNull

void AsnPerEncodeNull (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes data of the NULL type.

AsnPerEncodeBitString

void AsnPerEncodeBitString (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes constrained data of the BIT STRING type.

AsnPerEncodeBitStringEq

void AsnPerEncodeBitStringEq (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes data of the BIT STRING type in scenarios where upper and lower bounds exist and are the same.

AsnPerEncodeOctString

void AsnPerEncodeOctString (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes constrained data of the OCTET STRING type.

AsnPerEncodeOctStringEq

void AsnPerEncodeOctStringEq (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes data of the OCTET STRING type in scenarios where upper and lower bounds exist and are the same.

AsnPerEncodeCharStrKnownMulti

void AsnPerEncodeCharStrKnownMulti (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes data of the known multiplier string type.

AsnPerEncodeCharStrOthers

void AsnPerEncodeCharStrOthers (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes data of the other string types.

AsnPerEncodeSequence

void AsnPerEncodeSequence (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes data of the SEQUENCE type without the extension flag.

AsnPerEncodeSequenceExt

void AsnPerEncodeSequenceExt (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes data of the SEQUENCE type with the extension flag.

AsnPerEncodeList

void AsnPerEncodeList (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes data of the SEQUENCE OF type.

AsnPerEncodeChoice

void AsnPerEncodeChoice (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes data of the CHOICE type without the extension flag.

AsnPerEncodeChoiceExt

void AsnPerEncodeChoiceExt (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes data of the CHOICE type with the extension flag.

AsnPerEncodeObjectIdentifier

void AsnPerEncodeObjectIdentifier (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes data of the OBJECT IDENTIFIER type.

PER Decoding Interfaces

Table 4 Definition of the PER decoding interfaces

Interface

Definition

Description

AsnPerDecodeInt

void AsnPerDecodeInt(const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes signed constrained integers.

AsnPerDecodeUint

void AsnPerDecodeUint (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes unsigned constrained integers.

AsnPerDecodeIntUc

void AsnPerDecodeIntUc (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes unconstrained integers.

AsnPerDecodeIntSc

void AsnPerDecodeIntSc (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes semi-constrained integers.

AsnPerDecodeIntExt

void AsnPerDecodeIntExt (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes constrained integers with the extension flag.

AsnPerDecodeBool

void AsnPerDecodeBool (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes data of the BOOL type.

AsnPerDecodeEnum

void AsnPerDecodeEnum (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes data of the ENUMERATED type without the extension flag.

AsnPerDecodeEnumExt

void AsnPerDecodeEnumExt (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes data of the ENUMERATED type with the extension flag.

AsnPerDecodeReal

void AsnPerDecodeReal (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes data of the REAL type.

AsnPerDecodeNull

void AsnPerDecodeNull (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes data of the NULL type.

AsnPerDecodeBitString

void AsnPerDecodeBitString (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes constrained data of the BIT STRING type.

AsnPerDecodeBitStringEq

void AsnPerDecodeBitStringEq (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes data of the BIT STRING type in scenarios where upper and lower bounds exist and are the same.

AsnPerDecodeOctString

void AsnPerDecodeOctString (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes constrained data of the OCTET STRING type.

AsnPerDecodeOctStringEq

void AsnPerDecodeOctStringEq (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes data of the OCTET STRING type in scenarios where upper and lower bounds exist and are the same.

AsnPerDecodeCharStrKnownMulti

void AsnPerDecodeCharStrKnownMulti (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes data of the known multiplier string type.

AsnPerDecodeCharStrOthers

void AsnPerDecodeCharStrOthers (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes data of the other string types.

AsnPerDecodeSequence

void AsnPerDecodeSequence (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes data of the SEQUENCE type without the extension flag.

AsnPerDecodeSequenceExt

void AsnPerDecodeSequenceExt (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes data of the SEQUENCE type with the extension flag.

AsnPerDecodeList

void AsnPerDecodeList (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes data of the SEQUENCE OF type.

AsnPerDecodeChoice

void AsnPerDecodeChoice (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes data of the CHOICE type without the extension flag.

AsnPerDecodeChoiceExt

void AsnPerDecodeChoiceExt (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes data of the CHOICE type with the extension flag.

AsnPerDecodeObjectIdentifier

void AsnPerDecodeObjectIdentifier (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes data of the OBJECT IDENTIFIER type.

XER Encoding Interfaces

Table 5 Definition of the XER encoding interfaces

Interface

Definition

Description

AsnXerEncodeBool

void AsnXerEncodeBool (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes data of the BOOLEAN type.

AsnXerEncodeUint

void AsnXerEncodeUint (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes data of the INTEGER type (unsigned).

AsnXerEncodeInt

void AsnXerEncodeInt (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes data of the INTEGER type (signed).

AsnXerEncodeEnum

void AsnXerEncodeEnum (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes data of the ENUMERATED type.

AsnXerEncodeReal

void AsnXerEncodeReal (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes data of the REAL type.

AsnXerEncodeBitString

void AsnXerEncodeBitString (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes data of the BIT STRING type.

AsnXerEncodeOctString

void AsnXerEncodeOctString (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes data of the OCTET STRING type.

AsnXerEncodeCharString

void AsnXerEncodeCharString (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes data of the CHARACTER STRING type.

AsnXerEncodeNull

void AsnXerEncodeNull (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes data of the NULL type.

AsnXerEncodeSequence

void AsnXerEncodeSequence (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes data of the SEQUENCE type.

AsnXerEncodeChoice

void AsnXerEncodeChoice (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes data of the CHOICE type.

AsnXerEncodeList

void AsnXerEncodeList (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes data of the SEQUENCE OF type.

AsnXerEncodeObjectIdentifier

void AsnXerEncodeObjectIdentifier (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Encodes data of the OBJECT IDENTIFIER type.

XER Decoding Interfaces

Table 6 Definition of the XER decoding interfaces

Interface

Definition

Description

AsnXerDecodeBool

void AsnXerDecodeBool (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes data of the BOOLEAN type.

AsnXerDecodeUint

void AsnXerDecodeUint (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes data of the INTEGER type (unsigned).

AsnXerDecodeInt

void AsnXerDecodeInt (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes data of the INTEGER type (signed).

AsnXerDecodeEnum

void AsnXerDecodeEnum (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes data of the ENUMERATED type.

AsnXerDecodeReal

void AsnXerDecodeReal (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes data of the REAL type.

AsnXerDecodeBitString

void AsnXerDecodeBitString (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes data of the BIT STRING type.

AsnXerDecodeOctString

void AsnXerDecodeOctString (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes data of the OCTET STRING type.

AsnXerDecodeCharString

void AsnXerDecodeCharString (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes data of the CHARACTER STRING type.

AsnXerDecodeNull

void AsnXerDecodeNull (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes data of the NULL type.

AsnXerDecodeSequence

void AsnXerDecodeSequence (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes data of the SEQUENCE type.

AsnXerDecodeChoice

void AsnXerDecodeChoice (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes data of the CHOICE type.

AsnXerDecodeList

void AsnXerDecodeList (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes data of the SEQUENCE OF type.

AsnXerDecodeObjectIdentifier

void AsnXerDecodeObjectIdentifier (const AsnDesc *desc, const void *stru, AsnCtx *ctx);

Decodes data of the OBJECT IDENTIFIER type.