asn1per.h File Reference

#include "rtsrc/asn1type.h"
#include "rtsrc/asn1CharSet.h"
#include "rtxsrc/rtxBitEncode.h"
#include "rtxsrc/rtxBitDecode.h"
#include "rtxsrc/rtxBuffer.h"

Go to the source code of this file.

Classes

struct  PERField
struct  BinDumpBuffer

Defines

#define ASN_K_EXTENUM   999
#define OSYEAR_BASIC   OSUINTCONST(0x8000000)
#define OSYEAR_PROLEPTIC   OSUINTCONST(0x4000000)
#define OSYEAR_NEGATIVE   OSUINTCONST(0x2000000)
#define OSYEAR_L(n)   ((OSUINT32)(n) << 28)
#define OSYEAR_MASK   (OSYEAR_BASIC|OSYEAR_PROLEPTIC|OSYEAR_NEGATIVE|OSYEAR_L(0xF))
#define OSANY   (OSYEAR_NEGATIVE|OSYEAR_L(5))
#define OSANY_MASK   (OSYEAR_NEGATIVE|OSYEAR_L(0xF))
#define OSCENTURY   0x4000u
#define OSYEAR   0x2000u
#define OSMONTH   0x1000u
#define OSWEEK   0x0800u
#define OSDAY   0x0400u
#define OSHOURS   0x0200u
#define OSMINUTES   0x0100u
#define OSSECONDS   0x0080u
#define OSUTC   0x0040u
#define OSDIFF   0x0020u
#define OSFRACTION   0x000Fu
#define OSDURATION   0x0010u
#define PU_SETCHARSET(csetvar, canset, abits, ubits)
#define PU_INSLENFLD(pctxt)
#define PU_NEWFIELD(pctxt, suffix)
#define PU_PUSHNAME(pctxt, name)
#define PU_PUSHELEMNAME(pctxt, idx)
#define PU_POPNAME(pctxt)
#define PU_SETBITOFFSET(pctxt)
#define PU_SETBITCOUNT(pctxt)
#define PU_SETOPENTYPEFLDLIST(pctxt, flist)
#define EXTPERMETHOD
#define EXTERNPER
#define EXTPERCLASS
#define PD_BIT(pctxt, pvalue)   DEC_BIT(pctxt,pvalue)
#define PU_SETSIZECONSTRAINT(pctxt, rootLower, rootUpper, extLower, extUpper)
#define PU_INITSIZECONSTRAINT(pctxt)   PU_SETSIZECONSTRAINT(pctxt,0,0,0,0)
#define PU_GETSIZECONSTRAINT(pctxt, extbit)
#define PU_GETCTXTBITOFFSET(pctxt)   (((pctxt)->buffer.byteIndex * 8) + (8 - (pctxt)->buffer.bitOffset))
#define PU_GETPADBITS(pctxt)   (((pctxt)->buffer.bitOffset == 8) ? 0 : (pctxt)->buffer.bitOffset)
#define PU_SETCTXTBITOFFSET(pctxt, _bitOffset)
#define PD_BYTE_ALIGN0(pctxt)
#define PD_BYTE_ALIGN   PD_BYTE_ALIGN0
#define PD_CHECKSEQOFLEN(pctxt, numElements, minElemBits)
#define PD_OPENTYPE_START(pctxt, pSavedSize, pSavedBitOff)   pd_OpenTypeStart(pctxt,pSavedSize,pSavedBitOff);
#define PD_OPENTYPE_END(pctxt, savedSize, savedBitOff)   pd_OpenTypeEnd(pctxt,savedSize,savedBitOff);
#define pd_moveBitCursor(pctxt, bitOffset)   rtxMoveBitCursor(pctxt,bitOffset)
#define pe_bit(pctxt, value)   rtxEncBit(pctxt,value)
#define pe_bits(pctxt, value, nbits)   rtxEncBits(pctxt,value,nbits)
#define pe_CheckBuffer(pctxt, nbytes)   rtxCheckOutputBuffer(pctxt,nbytes)
#define pe_octets(pctxt, pvalue, nbits)   rtxEncBitsFromByteArray(pctxt,pvalue,nbits)
#define pd_setp(pctxt, bufaddr, bufsiz, aligned)   pu_setBuffer(pctxt, bufaddr, bufsiz, aligned)
#define pe_setp(pctxt, bufaddr, bufsiz, aligned)   pu_setBuffer(pctxt, bufaddr, bufsiz, aligned)
#define pe_resetp(pctxt)   rtxResetContext(pctxt)
#define pd_resetp(pctxt)   rtxResetContext(pctxt)
#define pd_bit(pctxt, pvalue)   rtxDecBit(pctxt,pvalue)
#define pd_bits(pctxt, pvalue, nbits)   rtxDecBits(pctxt,pvalue,nbits)
#define pd_octets(pctxt, pbuffer, bufsiz, nbits)   rtxDecBitsToByteArray(pctxt,pbuffer,bufsiz,nbits)
#define pe_GeneralString(pctxt, value, permCharSet)   pe_VarWidthCharString(pctxt, value)
#define pe_GraphicString(pctxt, value, permCharSet)   pe_VarWidthCharString(pctxt, value)
#define pe_T61String(pctxt, value, permCharSet)   pe_VarWidthCharString(pctxt, value)
#define pe_TeletexString(pctxt, value, permCharSet)   pe_VarWidthCharString(pctxt, value)
#define pe_VideotexString(pctxt, value, permCharSet)   pe_VarWidthCharString(pctxt, value)
#define pe_ObjectDescriptor(pctxt, value, permCharSet)   pe_VarWidthCharString(pctxt, value)
#define pe_UTF8String(pctxt, value, permCharSet)   pe_VarWidthCharString(pctxt, value)
#define pe_IA5String(pctxt, value, permCharSet)   pe_ConstrainedStringEx (pctxt, value, permCharSet, 8, 7, 7)
#define pe_NumericString(pctxt, value, permCharSet)
#define pe_PrintableString(pctxt, value, permCharSet)   pe_ConstrainedStringEx (pctxt, value, permCharSet, 8, 7, 7)
#define pe_VisibleString(pctxt, value, permCharSet)   pe_ConstrainedStringEx (pctxt, value, permCharSet, 8, 7, 7)
#define pe_ISO646String   pe_IA5String
#define pe_GeneralizedTime   pe_IA5String
#define pe_UTCTime   pe_GeneralizedTime
#define pd_GeneralString(pctxt, pvalue, permCharSet)   pd_VarWidthCharString (pctxt, pvalue)
#define pd_GraphicString(pctxt, pvalue, permCharSet)   pd_VarWidthCharString (pctxt, pvalue)
#define pd_VideotexString(pctxt, pvalue, permCharSet)   pd_VarWidthCharString (pctxt, pvalue)
#define pd_TeletexString(pctxt, pvalue, permCharSet)   pd_VarWidthCharString (pctxt, pvalue)
#define pd_T61String(pctxt, pvalue, permCharSet)   pd_VarWidthCharString (pctxt, pvalue)
#define pd_ObjectDescriptor(pctxt, pvalue, permCharSet)   pd_VarWidthCharString (pctxt, pvalue)
#define pd_UTF8String(pctxt, pvalue, permCharSet)   pd_VarWidthCharString (pctxt, pvalue)
#define pd_IA5String(pctxt, pvalue, permCharSet)   pd_ConstrainedStringEx (pctxt, pvalue, permCharSet, 8, 7, 7)
#define pd_NumericString(pctxt, pvalue, permCharSet)
#define pd_PrintableString(pctxt, pvalue, permCharSet)   pd_ConstrainedStringEx (pctxt, pvalue, permCharSet, 8, 7, 7)
#define pd_VisibleString(pctxt, pvalue, permCharSet)   pd_ConstrainedStringEx (pctxt, pvalue, permCharSet, 8, 7, 7)
#define pd_ISO646String   pd_IA5String
#define pd_GeneralizedTime   pd_IA5String
#define pd_UTCTime   pd_GeneralizedTime
#define pe_GetMsgLen   pu_getMsgLen
#define pe_ExpandBuffer(pctxt, nbytes)   rtxCheckOutputBuffer(pctxt,nbytes)
#define pd_AnyCentury(pctxt, string)   pd_DateStr (pctxt, string, OSANY|OSCENTURY)
#define pd_AnyCenturyInt(pctxt, pvalue)   pd_UnconsInteger (pctxt, pvalue)
#define pd_AnyDate(pctxt, string)   pd_DateStr (pctxt, string, OSANY|OSYEAR|OSMONTH|OSDAY)
#define pd_AnyYear(pctxt, string)   pd_DateStr (pctxt, string, OSANY|OSYEAR)
#define pd_AnyYearInt(pctxt, pvalue)   pd_UnconsInteger (pctxt, pvalue)
#define pd_AnyYearDay(pctxt, string)   pd_DateStr (pctxt, string, OSANY|OSYEAR|OSDAY)
#define pd_AnyYearMonth(pctxt, string)   pd_DateStr (pctxt, string, OSANY|OSYEAR|OSMONTH)
#define pd_AnyYearMonthDay(pctxt, string)   pd_DateStr (pctxt, string, OSANY|OSYEAR|OSMONTH|OSDAY)
#define pd_AnyYearWeek(pctxt, string)   pd_DateStr (pctxt, string, OSANY|OSYEAR|OSWEEK)
#define pd_AnyYearWeekDay(pctxt, string)   pd_DateStr (pctxt, string, OSANY|OSYEAR|OSWEEK|OSDAY)
#define pd_Century(pctxt, string)   pd_DateStr (pctxt, string, OSCENTURY)
#define pd_CenturyInt(pctxt, pvalue)   pd_ConsUInt8 (pctxt, pvalue, 0, 99)
#define pd_Date(pctxt, string)   pd_DateStr (pctxt, string, OSYEAR_BASIC|OSYEAR|OSMONTH|OSDAY);
#define pd_DateTime(pctxt, string)
#define pd_DurationInterval(pctxt, string)   pd_Duration (pctxt, string, FALSE)
#define pd_DurationEndDateInterval(pctxt, string, flags)   pd_Interval (pctxt, string, FALSE, OSDURATION, flags)
#define pd_DurationEndTimeInterval(pctxt, string, flags)   pd_Interval (pctxt, string, FALSE, OSDURATION, flags)
#define pd_DurationEndDateTimeInterval(pctxt, string, flags)   pd_Interval (pctxt, string, FALSE, OSDURATION, flags)
#define pd_Hours(pctxt, string)   pd_TimeStr (pctxt, string, OSHOURS)
#define pd_HoursUtc(pctxt, string)   pd_TimeStr (pctxt, string, OSHOURS|OSUTC)
#define pd_HoursAndDiff(pctxt, string)   pd_TimeStr (pctxt, string, OSHOURS|OSDIFF)
#define pd_HoursAndFraction(pctxt, string, n)   pd_TimeStr (pctxt, string, OSHOURS|(n))
#define pd_HoursUtcAndFraction(pctxt, string, n)   pd_TimeStr (pctxt, string, OSHOURS|OSUTC|(n))
#define pd_HoursAndDiffAndFraction(pctxt, string, n)   pd_TimeStr (pctxt, string, OSHOURS|OSDIFF|(n))
#define pd_Minutes(pctxt, string)   pd_TimeStr (pctxt, string, OSHOURS|OSMINUTES)
#define pd_MinutesUtc(pctxt, string)   pd_TimeStr (pctxt, string, OSHOURS|OSMINUTES|OSUTC)
#define pd_MinutesAndDiff(pctxt, string)   pd_TimeStr (pctxt, string, OSHOURS|OSMINUTES|OSDIFF)
#define pd_MinutesAndFraction(pctxt, string, n)   pd_TimeStr (pctxt, string, OSHOURS|OSMINUTES|(n))
#define pd_MinutesUtcAndFraction(pctxt, string, n)   pd_TimeStr (pctxt, string, OSHOURS|OSMINUTES|OSUTC|(n))
#define pd_MinutesAndDiffAndFraction(pctxt, string, n)   pd_TimeStr (pctxt, string, OSHOURS|OSMINUTES|OSDIFF|(n))
#define pd_RecStartEndDateInterval(pctxt, string, flags)   pd_Interval (pctxt, string, TRUE, flags, flags)
#define pd_RecStartEndTimeInterval(pctxt, string, flags)   pd_Interval (pctxt, string, TRUE, flags, flags)
#define pd_RecStartEndDateTimeInterval(pctxt, string, flags)   pd_Interval (pctxt, string, TRUE, flags, flags)
#define pd_RecDurationInterval(pctxt, string)   pd_Duration (pctxt, string, TRUE)
#define pd_RecStartDateDurationInterval(pctxt, string, flags)   pd_Interval (pctxt, string, TRUE, flags, OSDURATION)
#define pd_RecStartTimeDurationInterval(pctxt, string, flags)   pd_Interval (pctxt, string, TRUE, flags, OSDURATION)
#define pd_RecStartDateTimeDurationInterval(pctxt, string, flags)   pd_Interval (pctxt, string, TRUE, flags, OSDURATION)
#define pd_RecDurationEndDateInterval(pctxt, string, flags)   pd_Interval (pctxt, string, TRUE, OSDURATION, flags)
#define pd_RecDurationEndTimeInterval(pctxt, string, flags)   pd_Interval (pctxt, string, TRUE, OSDURATION, flags)
#define pd_RecDurationEndDateTimeInterval(pctxt, string, flags)   pd_Interval (pctxt, string, TRUE, OSDURATION, flags)
#define pd_StartEndDateInterval(pctxt, string, flags)   pd_Interval (pctxt, string, FALSE, flags, flags)
#define pd_StartEndTimeInterval(pctxt, string, flags)   pd_Interval (pctxt, string, FALSE, flags, flags)
#define pd_StartEndDateTimeInterval(pctxt, string, flags)   pd_Interval (pctxt, string, FALSE, flags, flags)
#define pd_StartDateDurationInterval(pctxt, string, flags)   pd_Interval (pctxt, string, FALSE, flags, OSDURATION)
#define pd_StartTimeDurationInterval(pctxt, string, flags)   pd_Interval (pctxt, string, FALSE, flags, OSDURATION)
#define pd_StartDateTimeDurationInterval(pctxt, string, flags)   pd_Interval (pctxt, string, FALSE, flags, OSDURATION)
#define pd_TimeOfDay(pctxt, string)   pd_TimeStr (pctxt, string, OSHOURS|OSMINUTES|OSSECONDS)
#define pd_TimeOfDayUtc(pctxt, string)   pd_TimeStr (pctxt, string, OSHOURS|OSMINUTES|OSSECONDS|OSUTC)
#define pd_TimeOfDayAndDiff(pctxt, string)   pd_TimeStr (pctxt, string, OSHOURS|OSMINUTES|OSSECONDS|OSDIFF)
#define pd_TimeOfDayAndFraction(pctxt, string, n)   pd_TimeStr (pctxt, string, OSHOURS|OSMINUTES|OSSECONDS|(n))
#define pd_TimeOfDayUtcAndFraction(pctxt, string, n)   pd_TimeStr (pctxt, string, OSHOURS|OSMINUTES|OSSECONDS|OSUTC|(n))
#define pd_TimeOfDayAndDiffAndFraction(pctxt, string, n)   pd_TimeStr (pctxt, string, OSHOURS|OSMINUTES|OSSECONDS|OSDIFF|(n))
#define pd_Year(pctxt, string)   pd_DateStr (pctxt, string, OSYEAR)
#define pd_YearDay(pctxt, string)   pd_DateStr (pctxt, string, OSYEAR|OSDAY)
#define pd_YearMonth(pctxt, string)   pd_DateStr (pctxt, string, OSYEAR|OSMONTH)
#define pd_YearMonthDay(pctxt, string)   pd_DateStr (pctxt, string, OSYEAR|OSMONTH|OSDAY);
#define pd_YearWeek(pctxt, string)   pd_DateStr (pctxt, string, OSYEAR|OSWEEK)
#define pd_YearWeekDay(pctxt, string)   pd_DateStr (pctxt, string, OSYEAR|OSWEEK|OSDAY)
#define pe_AnyCentury(pctxt, string)   pe_DateStr (pctxt, string, OSANY|OSCENTURY)
#define pe_AnyCenturyInt(pctxt, value)   pe_UnconsInteger (pctxt, value)
#define pe_AnyDate(pctxt, string)   pe_DateStr (pctxt, string, OSANY|OSYEAR|OSMONTH|OSDAY)
#define pe_AnyYear(pctxt, string)   pe_DateStr (pctxt, string, OSANY|OSYEAR)
#define pe_AnyYearInt(pctxt, value)   pe_UnconsInteger (pctxt, value)
#define pe_AnyYearDay(pctxt, string)   pe_DateStr (pctxt, string, OSANY|OSYEAR|OSDAY)
#define pe_AnyYearMonth(pctxt, string)   pe_DateStr (pctxt, string, OSANY|OSYEAR|OSMONTH)
#define pe_AnyYearMonthDay(pctxt, string)   pe_DateStr (pctxt, string, OSANY|OSYEAR|OSMONTH|OSDAY)
#define pe_AnyYearWeek(pctxt, string)   pe_DateStr (pctxt, string, OSANY|OSYEAR|OSWEEK)
#define pe_AnyYearWeekDay(pctxt, string)   pe_DateStr (pctxt, string, OSANY|OSYEAR|OSWEEK|OSDAY)
#define pe_Century(pctxt, string)   pe_DateStr (pctxt, string, OSCENTURY)
#define pe_CenturyInt(pctxt, value)   pe_ConsUnsigned (pctxt, value, 0, 99)
#define pe_Date(pctxt, string)   pe_DateStr (pctxt, string, OSYEAR_BASIC|OSYEAR|OSMONTH|OSDAY)
#define pe_DateTime(pctxt, string)
#define pe_DurationInterval(pctxt, string)   pe_Duration (pctxt, string, FALSE)
#define pe_DurationEndDateInterval(pctxt, string, flags)   pe_Interval (pctxt, string, FALSE, OSDURATION, flags)
#define pe_DurationEndTimeInterval(pctxt, string, flags)   pe_Interval (pctxt, string, FALSE, OSDURATION, flags)
#define pe_DurationEndDateTimeInterval(pctxt, string, flags)   pe_Interval (pctxt, string, FALSE, OSDURATION, flags)
#define pe_Hours(pctxt, string)   pe_TimeStr (pctxt, string, OSHOURS)
#define pe_HoursUtc(pctxt, string)   pe_TimeStr (pctxt, string, OSHOURS|OSUTC)
#define pe_Hours(pctxt, string)   pe_TimeStr (pctxt, string, OSHOURS)
#define pe_HoursUtc(pctxt, string)   pe_TimeStr (pctxt, string, OSHOURS|OSUTC)
#define pe_HoursAndDiff(pctxt, string)   pe_TimeStr (pctxt, string, OSHOURS|OSDIFF)
#define pe_HoursAndFraction(pctxt, string, n)   pe_TimeStr (pctxt, string, OSHOURS|(n))
#define pe_HoursUtcAndFraction(pctxt, string, n)   pe_TimeStr (pctxt, string, OSHOURS|OSUTC|(n))
#define pe_HoursAndDiffAndFraction(pctxt, string, n)   pe_TimeStr (pctxt, string, OSHOURS|OSDIFF|(n))
#define pe_Minutes(pctxt, string)   pe_TimeStr (pctxt, string, OSHOURS|OSMINUTES)
#define pe_MinutesUtc(pctxt, string)   pe_TimeStr (pctxt, string, OSHOURS|OSMINUTES|OSUTC)
#define pe_MinutesAndDiff(pctxt, string)   pe_TimeStr (pctxt, string, OSHOURS|OSMINUTES|OSDIFF)
#define pe_MinutesAndFraction(pctxt, string, n)   pe_TimeStr (pctxt, string, OSHOURS|OSMINUTES|(n))
#define pe_MinutesUtcAndFraction(pctxt, string, n)   pe_TimeStr (pctxt, string, OSHOURS|OSMINUTES|OSUTC|(n))
#define pe_MinutesAndDiffAndFraction(pctxt, string, n)   pe_TimeStr (pctxt, string, OSHOURS|OSMINUTES|OSDIFF|(n))
#define pe_RecStartEndDateInterval(pctxt, string, flags)   pe_Interval (pctxt, string, TRUE, flags, flags)
#define pe_RecStartEndTimeInterval(pctxt, string, flags)   pe_Interval (pctxt, string, TRUE, flags, flags)
#define pe_RecStartEndDateTimeInterval(pctxt, string, flags)   pe_Interval (pctxt, string, TRUE, flags, flags)
#define pe_RecDurationInterval(pctxt, string)   pe_Duration (pctxt, string, TRUE)
#define pe_RecStartDateDurationInterval(pctxt, string, flags)   pe_Interval (pctxt, string, TRUE, flags, OSDURATION)
#define pe_RecStartTimeDurationInterval(pctxt, string, flags)   pe_Interval (pctxt, string, TRUE, flags, OSDURATION)
#define pe_RecStartDateTimeDurationInterval(pctxt, string, flags)   pe_Interval (pctxt, string, TRUE, flags, OSDURATION)
#define pe_RecDurationEndDateInterval(pctxt, string, flags)   pe_Interval (pctxt, string, TRUE, OSDURATION, flags)
#define pe_RecDurationEndTimeInterval(pctxt, string, flags)   pe_Interval (pctxt, string, TRUE, OSDURATION, flags)
#define pe_RecDurationEndDateTimeInterval(pctxt, string, flags)   pe_Interval (pctxt, string, TRUE, OSDURATION, flags)
#define pe_StartEndDateInterval(pctxt, string, flags)   pe_Interval (pctxt, string, FALSE, flags, flags)
#define pe_StartEndTimeInterval(pctxt, string, flags)   pe_Interval (pctxt, string, FALSE, flags, flags)
#define pe_StartEndDateTimeInterval(pctxt, string, flags)   pe_Interval (pctxt, string, FALSE, flags, flags)
#define pe_StartDateDurationInterval(pctxt, string, flags)   pe_Interval (pctxt, string, FALSE, flags, OSDURATION)
#define pe_StartTimeDurationInterval(pctxt, string, flags)   pe_Interval (pctxt, string, FALSE, flags, OSDURATION)
#define pe_StartDateTimeDurationInterval(pctxt, string, flags)   pe_Interval (pctxt, string, FALSE, flags, OSDURATION)
#define pe_TimeOfDay(pctxt, string)   pe_TimeStr (pctxt, string, OSHOURS|OSMINUTES|OSSECONDS)
#define pe_TimeOfDayUtc(pctxt, string)   pe_TimeStr (pctxt, string, OSHOURS|OSMINUTES|OSSECONDS|OSUTC)
#define pe_TimeOfDayAndDiff(pctxt, string)   pe_TimeStr (pctxt, string, OSHOURS|OSMINUTES|OSSECONDS|OSDIFF)
#define pe_TimeOfDayAndFraction(pctxt, string, n)   pe_TimeStr (pctxt, string, OSHOURS|OSMINUTES|OSSECONDS|(n))
#define pe_TimeOfDayUtcAndFraction(pctxt, string, n)   pe_TimeStr (pctxt, string, OSHOURS|OSMINUTES|OSSECONDS|OSUTC|(n))
#define pe_TimeOfDayAndDiffAndFraction(pctxt, string, n)   pe_TimeStr (pctxt, string, OSHOURS|OSMINUTES|OSSECONDS|OSDIFF|(n))
#define pe_Year(pctxt, string)   pe_DateStr (pctxt, string, OSYEAR)
#define pe_YearDay(pctxt, string)   pe_DateStr (pctxt, string, OSYEAR|OSDAY)
#define pe_YearMonth(pctxt, string)   pe_DateStr (pctxt, string, OSYEAR|OSMONTH)
#define pe_YearMonthDay(pctxt, string)   pe_DateStr (pctxt, string, OSYEAR|OSMONTH|OSDAY)
#define pe_YearWeek(pctxt, string)   pe_DateStr (pctxt, string, OSYEAR|OSWEEK)
#define pe_YearWeekDay(pctxt, string)   pe_DateStr (pctxt, string, OSYEAR|OSWEEK|OSDAY)

Typedefs

typedef struct PERField PERField

Functions

int pd_BigInteger (OSCTXT *pctxt, const char **ppvalue)
int pd_BigIntegerEx (OSCTXT *pctxt, const char **ppvalue, int radix)
int pd_BigIntegerValue (OSCTXT *pctxt, const char **ppvalue, int radix, OSUINT32 nbytes)
int pd_BitString (OSCTXT *pctxt, OSUINT32 *numbits_p, OSOCTET *buffer, OSUINT32 bufsiz)
int pd_BitString32 (OSCTXT *pctxt, ASN1BitStr32 *pbitstr, OSUINT32 lower, OSUINT32 upper)
int pd_BMPString (OSCTXT *pctxt, ASN1BMPString *pvalue, Asn116BitCharSet *permCharSet)
int pd_UniversalString (OSCTXT *pctxt, ASN1UniversalString *pvalue, Asn132BitCharSet *permCharSet)
int pd_byte_align (OSCTXT *pctxt)
int pd_ChoiceOpenTypeExt (OSCTXT *pctxt, const OSOCTET **object_p2, OSUINT32 *pnumocts)
int pd_ConsInteger (OSCTXT *pctxt, OSINT32 *pvalue, OSINT32 lower, OSINT32 upper)
int pd_ConsInt8 (OSCTXT *pctxt, OSINT8 *pvalue, OSINT32 lower, OSINT32 upper)
int pd_ConsInt16 (OSCTXT *pctxt, OSINT16 *pvalue, OSINT32 lower, OSINT32 upper)
int pd_ConsInt64 (OSCTXT *pctxt, OSINT64 *pvalue, OSINT64 lower, OSINT64 upper)
int pd_ConsUnsigned (OSCTXT *pctxt, OSUINT32 *pvalue, OSUINT32 lower, OSUINT32 upper)
int pd_ConsUInt8 (OSCTXT *pctxt, OSUINT8 *pvalue, OSUINT32 lower, OSUINT32 upper)
int pd_ConsUInt16 (OSCTXT *pctxt, OSUINT16 *pvalue, OSUINT32 lower, OSUINT32 upper)
int pd_ConsUInt64 (OSCTXT *pctxt, OSUINT64 *pvalue, OSUINT64 lower, OSUINT64 upper)
int pd_ConsWholeNumber (OSCTXT *pctxt, OSUINT32 *padjusted_value, OSUINT32 range_value)
int pd_ConsWholeNumber64 (OSCTXT *pctxt, OSUINT64 *padjusted_value, OSUINT64 range_value)
int pd_ConstrainedString (OSCTXT *pctxt, const char **string, Asn1CharSet *pCharSet)
int pd_ConstrainedStringEx (OSCTXT *pctxt, const char **string, const char *charSet, OSUINT32 abits, OSUINT32 ubits, OSUINT32 canSetBits)
int pd_ConstrFixedLenStringEx (OSCTXT *pctxt, char *strbuf, size_t bufsiz, const char *charSet, OSUINT32 abits, OSUINT32 ubits, OSUINT32 canSetBits)
int pd_16BitConstrainedString (OSCTXT *pctxt, Asn116BitCharString *pString, Asn116BitCharSet *pCharSet)
int pd_32BitConstrainedString (OSCTXT *pctxt, Asn132BitCharString *pString, Asn132BitCharSet *pCharSet)
int pd_DateStr (OSCTXT *pctxt, const char **string, OSUINT32 flags)
int pd_DateTimeStr (OSCTXT *pctxt, const char **string, OSUINT32 flags)
int pd_Duration (OSCTXT *pctxt, const char **string, OSBOOL rec)
int pd_DynBitString (OSCTXT *pctxt, ASN1DynBitStr *pBitStr)
int pd_DynOctetString (OSCTXT *pctxt, ASN1DynOctStr *pOctStr)
int pd_GetBinStrDataOffset (OSCTXT *pctxt, OSUINT32 *pnumbits, OSBOOL bitStrFlag)
int pd_GetComponentLength (OSCTXT *pctxt, OSUINT32 itemBits)
int pd_Interval (OSCTXT *pctxt, const char **string, OSBOOL rec, OSUINT32 startFlags, OSUINT32 endFlags)
int pd_Length (OSCTXT *pctxt, OSUINT32 *pvalue)
int pd_ObjectIdentifier (OSCTXT *pctxt, ASN1OBJID *pvalue)
int pd_oid64 (OSCTXT *pctxt, ASN1OID64 *pvalue)
int pd_RelativeOID (OSCTXT *pctxt, ASN1OBJID *pvalue)
int pd_OctetString (OSCTXT *pctxt, OSUINT32 *pnumocts, OSOCTET *buffer, OSUINT32 bufsiz)
int pd_OpenType (OSCTXT *pctxt, const OSOCTET **object_p2, OSUINT32 *pnumocts)
int pd_OpenTypeExt (OSCTXT *pctxt, const OSOCTET **object_p2, OSUINT32 *pnumocts)
int pd_Real (OSCTXT *pctxt, OSREAL *pvalue)
int pd_SmallLength (OSCTXT *pctxt, OSUINT32 *pvalue)
int pd_SmallNonNegWholeNumber (OSCTXT *pctxt, OSUINT32 *pvalue)
int pd_SemiConsInteger (OSCTXT *pctxt, OSINT32 *pvalue, OSINT32 lower)
int pd_SemiConsUnsigned (OSCTXT *pctxt, OSUINT32 *pvalue, OSUINT32 lower)
int pd_SemiConsInt64 (OSCTXT *pctxt, OSINT64 *pvalue, OSINT64 lower)
int pd_SemiConsUInt64 (OSCTXT *pctxt, OSUINT64 *pvalue, OSUINT64 lower)
int pd_TimeStr (OSCTXT *pctxt, const char **string, OSUINT32 flags)
int pd_UnconsInteger (OSCTXT *pctxt, OSINT32 *pvalue)
int pd_UnconsLength (OSCTXT *pctxt, OSUINT32 *pvalue)
int pd_UnconsUnsigned (OSCTXT *pctxt, OSUINT32 *pvalue)
int pd_UnconsInt64 (OSCTXT *pctxt, OSINT64 *pvalue)
int pd_UnconsUInt64 (OSCTXT *pctxt, OSUINT64 *pvalue)
int pd_VarWidthCharString (OSCTXT *pctxt, const char **pvalue)
int pd_YearInt (OSCTXT *pctxt, OSINT32 *pvalue)
int pd_Real10 (OSCTXT *pctxt, const char **ppvalue)
OSBOOL pd_isFragmented (OSCTXT *pctxt)
void pd_OpenTypeStart (OSCTXT *pctxt, OSUINT32 *pSavedSize, OSINT16 *pSavedBitOff)
int pd_OpenTypeEnd (OSCTXT *pctxt, OSUINT32 savedSize, OSINT16 savedBitOff)
int uperDecConstrString (OSCTXT *pctxt, const char **string, const char *charSet, OSUINT32 nbits, OSUINT32 canSetBits)
int uperDecConstrFixedLenString (OSCTXT *pctxt, char *strbuf, size_t bufsiz, const char *charSet, OSUINT32 nbits, OSUINT32 canSetBits)
int pe_16BitConstrainedString (OSCTXT *pctxt, Asn116BitCharString value, Asn116BitCharSet *pCharSet)
int pe_32BitConstrainedString (OSCTXT *pctxt, Asn132BitCharString value, Asn132BitCharSet *pCharSet)
int pe_2sCompBinInt (OSCTXT *pctxt, OSINT32 value)
int pe_2sCompBinInt64 (OSCTXT *pctxt, OSINT64 value)
int pe_aligned_octets (OSCTXT *pctxt, OSOCTET *pvalue, OSUINT32 nocts)
int pe_BigInteger (OSCTXT *pctxt, const char *pvalue)
int pe_bits64 (OSCTXT *pctxt, OSUINT64 value, OSUINT32 nbits)
int pe_BitString (OSCTXT *pctxt, OSUINT32 numocts, const OSOCTET *data)
int pe_BitString32 (OSCTXT *pctxt, ASN1BitStr32 *pbitstr, OSUINT32 lower, OSUINT32 upper)
int pe_BMPString (OSCTXT *pctxt, ASN1BMPString value, Asn116BitCharSet *permCharSet)
int pe_UniversalString (OSCTXT *pctxt, ASN1UniversalString value, Asn132BitCharSet *permCharSet)
int pe_byte_align (OSCTXT *pctxt)
int pe_ChoiceTypeExt (OSCTXT *pctxt, OSUINT32 numocts, const OSOCTET *data)
int pe_ConsInteger (OSCTXT *pctxt, OSINT32 value, OSINT32 lower, OSINT32 upper)
int pe_ConsInt64 (OSCTXT *pctxt, OSINT64 value, OSINT64 lower, OSINT64 upper)
int pe_ConstrainedString (OSCTXT *pctxt, const char *string, Asn1CharSet *pCharSet)
int pe_ConstrainedStringEx (OSCTXT *pctxt, const char *string, const char *charSet, OSUINT32 abits, OSUINT32 ubits, OSUINT32 canSetBits)
int pe_ConsUnsigned (OSCTXT *pctxt, OSUINT32 value, OSUINT32 lower, OSUINT32 upper)
int pe_ConsUInt64 (OSCTXT *pctxt, OSUINT64 value, OSUINT64 lower, OSUINT64 upper)
int pe_ConsWholeNumber (OSCTXT *pctxt, OSUINT32 adjusted_value, OSUINT32 range_value)
int pe_ConsWholeNumber64 (OSCTXT *pctxt, OSUINT64 adjusted_value, OSUINT64 range_value)
int pe_DateStr (OSCTXT *pctxt, const char *string, OSUINT32 flags)
int pe_DateTimeStr (OSCTXT *pctxt, const char *string, OSUINT32 flags)
int pe_Duration (OSCTXT *pctxt, const char *string, OSBOOL rec)
OSUINT32 pe_GetIntLen (OSUINT32 value)
size_t pe_GetMsgBitCnt (OSCTXT *pctxt)
OSOCTET * pe_GetMsgPtr (OSCTXT *pctxt, OSINT32 *pLength)
OSOCTET * pe_GetMsgPtrU (OSCTXT *pctxt, OSUINT32 *pLength)
int pe_Interval (OSCTXT *pctxt, const char *string, OSBOOL rec, OSUINT32 startFlags, OSUINT32 endFlags)
int pe_Length (OSCTXT *pctxt, OSUINT32 value)
int pe_NonNegBinInt (OSCTXT *pctxt, OSUINT32 value)
int pe_NonNegBinInt64 (OSCTXT *pctxt, OSUINT64 value)
int pe_ObjectIdentifier (OSCTXT *pctxt, ASN1OBJID *pvalue)
int pe_oid64 (OSCTXT *pctxt, ASN1OID64 *pvalue)
int pe_RelativeOID (OSCTXT *pctxt, ASN1OBJID *pvalue)
int pe_OctetString (OSCTXT *pctxt, OSUINT32 numocts, const OSOCTET *data)
int pe_OpenType (OSCTXT *pctxt, OSUINT32 numocts, const OSOCTET *data)
int pe_OpenTypeEnd (OSCTXT *pctxt, OSUINT32 pos, void *pPerField)
int pe_OpenTypeExt (OSCTXT *pctxt, OSRTDList *pElemList)
int pe_OpenTypeExtBits (OSCTXT *pctxt, OSRTDList *pElemList)
int pe_OpenTypeStart (OSCTXT *pctxt, OSUINT32 *pPos, void **ppPerField)
int pe_Real (OSCTXT *pctxt, OSREAL value)
int pe_SmallNonNegWholeNumber (OSCTXT *pctxt, OSUINT32 value)
int pe_SmallLength (OSCTXT *pctxt, OSUINT32 value)
int pe_SemiConsInteger (OSCTXT *pctxt, OSINT32 value, OSINT32 lower)
int pe_SemiConsInt64 (OSCTXT *pctxt, OSINT64 value, OSINT64 lower)
int pe_SemiConsUnsigned (OSCTXT *pctxt, OSUINT32 value, OSUINT32 lower)
int pe_SemiConsUInt64 (OSCTXT *pctxt, OSUINT64 value, OSUINT64 lower)
int pe_TimeStr (OSCTXT *pctxt, const char *string, OSUINT32 flags)
int pe_UnconsLength (OSCTXT *pctxt, OSUINT32 value)
int pe_UnconsInteger (OSCTXT *pctxt, OSINT32 value)
int pe_UnconsInt64 (OSCTXT *pctxt, OSINT64 value)
int pe_UnconsUnsigned (OSCTXT *pctxt, OSUINT32 value)
int pe_UnconsUInt64 (OSCTXT *pctxt, OSUINT64 value)
int pe_VarWidthCharString (OSCTXT *pctxt, const char *value)
int pe_YearInt (OSCTXT *pctxt, OSINT32 value)
int pe_Real10 (OSCTXT *pctxt, const char *pvalue)
int uperEncConstrString (OSCTXT *pctxt, const char *string, const char *charSet, OSUINT32 nbits, OSUINT32 canSetBits)
int pu_addSizeConstraint (OSCTXT *pctxt, const Asn1SizeCnst *pSize)
OSBOOL pu_alignCharStr (OSCTXT *pctxt, OSUINT32 len, OSUINT32 nbits, Asn1SizeCnst *pSize)
OSUINT32 pu_bitcnt (OSUINT32 value)
Asn1SizeCnst * pu_checkSize (Asn1SizeCnst *pSizeList, OSUINT32 value, OSBOOL *pExtendable)
int pu_checkSizeExt (Asn1SizeCnst *pSizeCnst, OSUINT32 value, OSBOOL *pExtendable, Asn1SizeValueRange *pSizeRange, OSBOOL *pExtSize)
void pu_freeContext (OSCTXT *pctxt)
size_t pu_getMaskAndIndex (size_t bitOffset, unsigned char *pMask)
size_t pu_getMsgLen (OSCTXT *pctxt)
size_t pu_getMsgLenBits (OSCTXT *pctxt)
void pu_hexdump (OSCTXT *pctxt)
int pu_setBuffer (OSCTXT *pctxt, OSOCTET *bufaddr, size_t bufsiz, OSBOOL aligned)
int pu_initContext (OSCTXT *pctxt, OSOCTET *bufaddr, OSUINT32 bufsiz, OSBOOL aligned)
int pu_initContextBuffer (OSCTXT *pTarget, OSCTXT *pSource)
const char * pu_getFullName (OSCTXT *pctxt, const char *suffix)
void pu_init16BitCharSet (Asn116BitCharSet *pCharSet, OSUNICHAR first, OSUNICHAR last, OSUINT32 abits, OSUINT32 ubits)
void pu_insLenField (OSCTXT *pctxt)
OSBOOL pu_isFixedSize (const Asn1SizeCnst *pSizeList)
OSCTXT * pu_newContext (OSOCTET *bufaddr, OSUINT32 bufsiz, OSBOOL aligned)
PERFieldpu_newField (OSCTXT *pctxt, const char *nameSuffix)
void pu_initFieldList (OSCTXT *pctxt, OSINT16 bitOffset)
void pu_popName (OSCTXT *pctxt)
void pu_pushElemName (OSCTXT *pctxt, int idx)
void pu_pushName (OSCTXT *pctxt, const char *name)
void pu_setCharSet (Asn1CharSet *pCharSet, const char *permSet)
void pu_set16BitCharSet (OSCTXT *pctxt, Asn116BitCharSet *pCharSet, Asn116BitCharSet *pAlphabet)
void pu_set16BitCharSetFromRange (Asn116BitCharSet *pCharSet, OSUINT16 firstChar, OSUINT16 lastChar)
void pu_setFldBitCount (OSCTXT *pctxt)
void pu_setFldBitOffset (OSCTXT *pctxt)
void pu_setFldListFromCtxt (OSCTXT *pctxt, OSCTXT *srcctxt)
void pu_setOpenTypeFldList (OSCTXT *pctxt, OSRTSList *plist)
OSBOOL pu_setTrace (OSCTXT *pCtxt, OSBOOL value)
void pu_setAligned (OSCTXT *pctxt, OSBOOL value)
void pu_deleteFieldList (OSCTXT *pctxt)
void pu_bindump (OSCTXT *pctxt, const char *varname)
void pu_dumpField (OSCTXT *pctxt, PERField *pField, const char *varname, size_t nextBitOffset, BinDumpBuffer *pbuf)
void pu_init32BitCharSet (Asn132BitCharSet *pCharSet, OS32BITCHAR first, OS32BITCHAR last, OSUINT32 abits, OSUINT32 ubits)
void pu_set32BitCharSet (OSCTXT *pctxt, Asn132BitCharSet *pCharSet, Asn132BitCharSet *pAlphabet)
void pu_set32BitCharSetFromRange (Asn132BitCharSet *pCharSet, OSUINT32 firstChar, OSUINT32 lastChar)
int pu_GetLibVersion (void)
const char * pu_GetLibInfo (void)
int pu_checkSizeConstraint (OSCTXT *pctxt, int size)
Asn1SizeCnst * pu_getSizeConstraint (OSCTXT *pctxt, OSBOOL extbit)
int pu_getBitOffset (OSCTXT *pctxt)
void pu_setBitOffset (OSCTXT *pctxt, int bitOffset)

Detailed Description

ASN.1 runtime constants, data structure definitions, and functions to support the Packed Encoding Rules (PER) as defined in the ITU-T X.691 standard.