C Streaming BER Encode Functions.
[Streaming BER Runtime Library Functions.]
Detailed Description
The C streaming BER encode functions encode ASN.1 primitive data types directly to the output stream. It must be already opened by using any of the following functions: rtxStreamFileOpen, rtxStreamFileAttach, rtxStreamSocketAttach, rtxStreamMemoryCreate, rtxStreamMemoryAttach.The streaming BER encoding uses indefinite length form for encode complex ASN.1 types.
Functions | |
| int | berEncStrmBigInt (OSCTXT *pctxt, const char *pvalue, ASN1TagType tagging) |
| int | berEncStrmBitStr (OSCTXT *pctxt, const OSOCTET *object_p, OSUINT32 numbits, ASN1TagType tagging) |
| int | berEncStrmBMPStr (OSCTXT *pctxt, const Asn116BitCharString *object_p, ASN1TagType tagging) |
| int | berEncStrmBool (OSCTXT *pctxt, OSBOOL value, ASN1TagType tagging) |
| int | berEncStrmCharStr (OSCTXT *pctxt, const char *object_p, ASN1TagType tagging, ASN1TAG tag) |
| int | berEncStrmEOC (OSCTXT *pctxt) |
| int | berEncStrmEnum (OSCTXT *pctxt, OSINT32 value, ASN1TagType tagging) |
| int | berEncStrmInt (OSCTXT *pctxt, OSINT32 value, ASN1TagType tagging) |
| int | berEncStrmInt8 (OSCTXT *pctxt, OSINT8 value, ASN1TagType tagging) |
| int | berEncStrmInt16 (OSCTXT *pctxt, OSINT16 value, ASN1TagType tagging) |
| int | berEncStrmInt64 (OSCTXT *pctxt, OSINT64 value, ASN1TagType tagging) |
| int | berEncStrmLength (OSCTXT *pctxt, int length) |
| int | berEncStrmNull (OSCTXT *pctxt, ASN1TagType tagging) |
| int | berEncStrmObjId (OSCTXT *pctxt, const ASN1OBJID *object_p, ASN1TagType tagging) |
| int | berEncStrmObjId64 (OSCTXT *pctxt, const ASN1OID64 *object_p, ASN1TagType tagging) |
| int | berEncStrmOctStr (OSCTXT *pctxt, const OSOCTET *object_p, OSUINT32 numocts, ASN1TagType tagging) |
| int | berEncStrmOpenTypeExt (OSCTXT *pctxt, OSRTDList *pElemList) |
| int | berEncStrmReal (OSCTXT *pctxt, OSREAL value, ASN1TagType tagging) |
| int | berEncStrmReal10 (OSCTXT *pctxt, const char *object_p, ASN1TagType tagging) |
| int | cerEncStrmReal10 (OSCTXT *pctxt, const char *object_p, ASN1TagType tagging) |
| int | berEncStrmRelativeOID (OSCTXT *pctxt, const ASN1OBJID *object_p, ASN1TagType tagging) |
| int | berEncStrmTag (OSCTXT *pctxt, ASN1TAG tag) |
| int | berEncStrmTagAndLen (OSCTXT *pctxt, ASN1TAG tag, int length) |
| int | berEncStrmTagAndIndefLen (OSCTXT *pctxt, ASN1TAG tag) |
| int | berEncStrmUInt (OSCTXT *pctxt, OSUINT32 value, ASN1TagType tagging) |
| int | berEncStrmUInt8 (OSCTXT *pctxt, OSUINT8 value, ASN1TagType tagging) |
| int | berEncStrmUInt16 (OSCTXT *pctxt, OSUINT16 value, ASN1TagType tagging) |
| int | berEncStrmUInt64 (OSCTXT *pctxt, OSUINT64 value, ASN1TagType tagging) |
| int | berEncStrmUnivStr (OSCTXT *pctxt, const Asn132BitCharString *object_p, ASN1TagType tagging) |
| int | berEncStrmXSDAny (OSCTXT *pctxt, OSXSDAny *pvalue, ASN1TagType tagging) |
| int | berEncStrmWriteOctet (OSCTXT *pctxt, OSOCTET octet) |
| int | berEncStrmWriteOctets (OSCTXT *pctxt, const OSOCTET *poctets, size_t numocts) |
| int | cerEncStrmBMPStr (OSCTXT *pctxt, const Asn116BitCharString *object_p, ASN1TagType tagging) |
| int | cerEncStrmBitStr (OSCTXT *pctxt, const OSOCTET *object_p, OSUINT32 numbits, ASN1TagType tagging) |
| int | cerEncStrmCharStr (OSCTXT *pctxt, const char *object_p, ASN1TagType tagging, ASN1TAG tag) |
| int | cerEncStrmOctStr (OSCTXT *pctxt, const OSOCTET *object_p, OSUINT32 numocts, ASN1TagType tagging) |
| int | cerEncStrmUnivStr (OSCTXT *pctxt, const Asn132BitCharString *object_p, ASN1TagType tagging) |
Function Documentation
|
||||||||||||||||
|
This function encodes a variable of the ASN.1 INTEGER type. In this case, the integer is assumed to be of a larger size than can fit in a C or C++ long type (normally 32 or 64 bits). For example, parameters used to calculate security values are typically larger than these sizes.
|
|
||||||||||||||||||||
|
This function encodes a variable of the ASN.1 BIT STRING type.
|
|
||||||||||||||||
|
This function encodes a variable of the ASN.1 BMPString type that is based on a 16-bit character sets.
|
|
||||||||||||||||
|
This function encodes a variable of the ASN.1 BOOLEAN type.
|
|
||||||||||||||||||||
|
This function encodes a variable one of the ASN.1 character string types that are based on 8-bit character sets. This includes IA5String, VisibleString, PrintableString, and NumericString.
|
|
||||||||||||||||
|
This function encodes a variable of the ASN.1 ENUMERATED type. The enumerated encoding is identical to that of an integer. The compiler adds additional checks to the generated code to ensure the value is within the given set.
|
|
|
This function encodes end-of-contents octets (EOC) into the stream. EOC is two zero octets (it is documented in the X.690 standard). This function must be called when the encoding of the complex type with indefinite length is finishing (see berEncStrmTagAndIndefLen).
|
|
||||||||||||||||
|
This function encodes a variable of the ASN.1 INTEGER type.
|
|
||||||||||||||||
|
This function encodes a 16-bit variable of the ASN.1 INTEGER type.
|
|
||||||||||||||||
|
This function encodes a 64-bit variable of the ASN.1 INTEGER type.
|
|
||||||||||||||||
|
This function encodes an 8-bit variable of the ASN.1 INTEGER type.
|
|
||||||||||||
|
This function is used to encode a BER length determinant value.
|
|
||||||||||||
|
This function encodes an ASN.1 NULL placeholder.
|
|
||||||||||||||||
|
This function encodes a variable of the ASN.1 OBJECT IDENTIFIER type.
|
|
||||||||||||||||
|
This function encodes a variable of the ASN.1 OBJECT IDENTIFIER type using 64-bit subidentifiers.
|
|
||||||||||||||||||||
|
This function encodes a variable of the ASN.1 OCTET STRING type.
|
|
||||||||||||
|
This function encodes an ASN.1 open type extension. An open type extension is defined as an extensibility marker on a constructed type without any extension elements defined (for example, SEQUENCE { a INTEGER, : }). The difference is that this is an implicit field that can span one or more elements whereas the standard Open Type is assumed to be a single tagged field.
|
|
||||||||||||||||
|
This function encodes a variable of the REAL data type. This function provides support for the plus-infinity and minus-infinity special real values. Use the rtxGetPlusInfinity or rtxGetMinusInfinity functions to get these special values.
|
|
||||||||||||||||
|
This function will encode a number from character string to ASN.1 real type using decimal encoding. Number may be represented in integer, decimal, and exponent formats.
|
|
||||||||||||||||
|
This function encodes a variable of the ASN.1 RELATIVE-OID type.
|
|
||||||||||||
|
This function is used to encode the ASN.1 tag field that preface each block of message data. The ASN1C compiler generates calls to this function to handle the encoding of user-defined tags within an ASN.1 specification.
|
|
||||||||||||
|
This function is used to encode a tag value and an indefinite length. This can be used to manually create an indefinite length wrapper around long or constructed records.
|
|
||||||||||||||||
|
This function is used to encode the ASN.1 tag and length fields that preface each block of message data. The ASN1C compiler generates calls to this function to handle the encoding of user-defined tags within an ASN.1 specification. This function is also called from within the run-time library functions to handle the addition of the universal tags defined for each of the ASN.1 primitive data types.
|
|
||||||||||||||||
|
This function encodes an unsigned variable of the ASN.1 INTEGER type.
|
|
||||||||||||||||
|
This function encodes an unsigned 16-bit variable of the ASN.1 INTEGER type.
|
|
||||||||||||||||
|
This function encodes an unsigned 64-bit variable of the ASN.1 INTEGER type.
|
|
||||||||||||||||
|
This function encodes an unsigned 8-bit variable of the ASN.1 INTEGER type.
|
|
||||||||||||||||
|
This function encodes a variable of the ASN.1 UniversalString type that is based on a 32-bit character sets.
|
|
||||||||||||
|
This function puts one octet into the output stream. It is used inside the run-time library or may be used by user to encode indicator of indefinite length (0x80, as defined in ITU-T X.690 standard).
|
|
||||||||||||||||
|
This function puts an array of octets into the output stream. It is used inside the run-time library or may be used by user to encode end-of-contents octets (EOC) or open type's content.
|
|
||||||||||||||||
|
This function encodes a variable of the XSD any element wildcard type. It is only used in generated code when and XSD file is compiled. It provides the option to encode the wildcard element as XML text or in binary form if ASN.1 binary encoding rules are being used.
|
|
||||||||||||||||||||
|
This function encodes a variable of the ASN.1 BIT STRING type with using Canonical Encoding Rules (CER).
|
|
||||||||||||||||
|
This function encodes a variable of the ASN.1 BMPString type with using Canonical Encoding Rules (CER). BMPString type is based on a 16-bit character sets.
|
|
||||||||||||||||||||
|
This function encodes a variable one of the ASN.1 character string types that are based on 8-bit character sets with using Canonical Encoding Rules (CER). This includes IA5String, VisibleString, PrintableString, and NumericString.
|
|
||||||||||||||||||||
|
This function encodes a variable of the ASN.1 OCTET STRING type with using Canonical Encoding Rules (CER).
|
|
||||||||||||||||
|
This function will encode a number from character string to ASN.1 real type with using CER/DER decimal encoding. Number may be represented in integer, decimal, and exponent formats.
|
|
||||||||||||||||
|
This function encodes a variable of the ASN.1 UniversalString type with using Canonical Encoding Rules (CER). UniversalString type is based on a 32-bit character sets.
|
