|
Yate
|
Public Types | |
| enum | Flags { XmlDumpMsg = 0x01 , XmlDumpIEs = 0x02 , MSCoder = 0x04 } |
| enum | Status { NoError = 0 , MsgTooShort , UnknownProto , ParserErr , MissingParam , IncorrectOptionalIE , IncorrectMandatoryIE , MissingMandatoryIE , UnknownMsgType } |
| enum | Protocol { GCC = 0x00 , BCC = 0x01 , EPS_SM = 0x02 , CC = 0x03 , GTTP = 0x04 , MM = 0x05 , RRM = 0x06 , EPS_MM = 0x07 , GPRS_MM = 0x08 , SMS = 0x09 , GPRS_SM = 0x0a , SS = 0x0b , LCS = 0x0c , Extension = 0x0e , Test = 0x0f , Unknown = 0xff } |
| enum | Type { NoType = 0 , T , V , TV , LV , TLV , LVE , TLVE } |
| enum | XmlType { Skip , XmlElem , XmlRoot } |
| enum | EPSSecurityHeader { PlainNAS = 0x00 , IntegrityProtect = 0x01 , IntegrityProtectCiphered = 0x02 , IntegrityProtectNewEPSCtxt = 0x03 , IntegrityProtectCipheredNewEPSCtxt = 0x04 , ServiceRequestHeader = 0xa0 } |
Public Member Functions | |
| GSML3Codec (DebugEnabler *dbg=0) | |
| unsigned int | decode (const uint8_t *in, unsigned int len, XmlElement *&out, const NamedList ¶ms=NamedList::empty()) |
| unsigned int | encode (const XmlElement *in, DataBlock &out, const NamedList ¶ms=NamedList::empty()) |
| unsigned int | decode (XmlElement *xml, const NamedList ¶ms=NamedList::empty()) |
| unsigned int | encode (XmlElement *xml, const NamedList ¶ms=NamedList::empty()) |
| void | setCodecDebug (DebugEnabler *enabler=0, void *ptr=0) |
| uint8_t | flags () const |
| void | setFlags (uint8_t flgs, bool reset=false) |
| void | resetFlags (uint8_t flgs=0) |
| void | setPrintDbg (bool on=false) |
| bool | printDbg () const |
| DebugEnabler * | dbg () const |
| void * | ptr () const |
Static Public Member Functions | |
| static void | decodeGSM7Bit (unsigned char *buf, unsigned int len, String &text, unsigned int heptets=(unsigned int) -1) |
| static bool | encodeGSM7Bit (const String &text, DataBlock &buf) |
Static Public Attributes | |
| static const TokenDict | s_typeDict [] |
| static const TokenDict | s_protoDict [] |
| static const TokenDict | s_securityHeaders [] |
| static const TokenDict | s_errorsDict [] |
| static const TokenDict | s_mmRejectCause [] |
| static const TokenDict | s_gmmRejectCause [] |
| enum EPSSecurityHeader |
EPS Security Headers
| enum Flags |
Codec flags
| enum Status |
Codec return status
| enum Type |
IE types
| GSML3Codec | ( | DebugEnabler * | dbg = 0 | ) |
Constructor
References dbg().
|
inline |
Get DebugEnabler used by this codec
Referenced by GSML3Codec().
| unsigned int decode | ( | const uint8_t * | in, |
| unsigned int | len, | ||
| XmlElement *& | out, | ||
| const NamedList & | params = NamedList::empty() ) |
Decode layer 3 message payload
| in | Input buffer containing the data to be decoded |
| len | Length of input buffer |
| out | XmlElement into which the decoded data is returned |
| params | Encoder parameters |
References NamedList::empty().
| unsigned int decode | ( | XmlElement * | xml, |
| const NamedList & | params = NamedList::empty() ) |
Decode layer 3 message from an existing XML
| xml | XML which contains layer 3 messages to decode and into which the decoded XML will be put |
| params | Decoder parameters |
References NamedList::empty().
|
static |
Decode GSM 7bit buffer
| buf | Input buffer |
| len | Input buffer length |
| text | Destination text |
| heptets | Maximum number of heptets in buffer |
| unsigned int encode | ( | const XmlElement * | in, |
| DataBlock & | out, | ||
| const NamedList & | params = NamedList::empty() ) |
Encode a layer 3 message
| in | Layer 3 message in XML form |
| out | Output buffer into which to put encoded data |
| params | Encoder parameters |
References NamedList::empty().
| unsigned int encode | ( | XmlElement * | xml, |
| const NamedList & | params = NamedList::empty() ) |
Encode a layer 3 message from an existing XML
| xml | XML which contains a layer 3 message in XML form. The message will be replaced with its encoded buffer |
| params | Encoder parameters |
References NamedList::empty().
Encode GSM 7bit buffer
| text | Input text |
| buf | Destination buffer |
|
inline |
Retrieve codec flags
|
inline |
Get printing of debug messages flag
|
inline |
Retrieve the codec pointer used for debug messages
Referenced by setCodecDebug().
|
inline |
Reset codec flags
| flgs | Flags to reset. If 0, all flags are reset |
Referenced by setFlags().
| void setCodecDebug | ( | DebugEnabler * | enabler = 0, |
| void * | ptr = 0 ) |
Set data used in debug
| enabler | The DebugEnabler to use (0 to to use the engine) |
| ptr | Pointer to print, 0 to use the codec pointer |
References ptr().
|
inline |
Set codec flags
| flgs | Flags to set |
| reset | Reset flags before setting these ones |
References resetFlags().
|
inline |
Activate printing of debug messages
| on | True to activate, false to disable |
|
static |
Errors dictionary
|
static |
GPRS Mobility Management reject causes dictionary
|
static |
Mobility Management reject causes dictionary
|
static |
L3 Protocols dictionary
|
static |
EPS Security Headers dictionary
|
static |
IE types dictionary