OVERVIEW   INDEX   DEPRECATED   HELP   CORRESPONDENCES   |
|
| Constants Summary | |
|---|---|
| MAGIC_COOKIE | |
type hexstring MagicCookie;
type universal charstring utf8string length(0 .. 127)
with {
variant "UTF-8"
}
type enumerated STUNMessageType {
request, success_response, failure_response, indication
}
type enumerated STUNMessageAttributeType {
MAPPED_ADDRESS,
XOR_MAPPED_ADDRESS,
USERNAME,
MESSAGE_INTEGRITY,
ERROR_CODE,
REALM,
NONCE,
UNKNOWN_ATTRIBUTES,
SOFTWARE,
ALTERNATE_SERVER,
FINGERPRINT
}
type enumerated Family {
IPv4, IPv6
}
type record STUNMessage {
STUNMessageHeader header,
STUNMessageAttributGroup messageAttributes optional
}
type record STUNMessageHeader {
STUNMessageType messageType,
integer messageLength,
MagicCookie magicCookie,
integer transactionID
}
type record MappedAddress {
STUNMessageAttributeType stunType (MAPPED_ADDRESS) ,
integer stunLength,
Family family,
integer mappedAddressPort,
octetstring mappedAdressAddress
}
type record XORMappedAddress {
STUNMessageAttributeType stunType (XOR_MAPPED_ADDRESS) ,
integer stunLength,
Family family,
integer xPort,
octetstring xAddress
}
type record Username {
STUNMessageAttributeType stunType (USERNAME) ,
integer stunLength,
utf8string username
}
type record MessageIntegrity {
STUNMessageAttributeType stunType (MESSAGE_INTEGRITY) ,
integer stunLength,
octetstring integrity
}
type record Fingerprint {
STUNMessageAttributeType stunType (FINGERPRINT) ,
integer stunLength,
octetstring
fingerprint
}
type record ErrorCode {
STUNMessageAttributeType stunType (ERROR_CODE) ,
integer stunLength,
integer classnumber (300 .. 699) ,
charstring reasonPhrase
}
type record Realm {
STUNMessageAttributeType stunType (REALM) ,
integer stunLength,
utf8string realm
}
type record Nonce {
STUNMessageAttributeType stunType (NONCE) ,
integer stunLength,
utf8string nonce
}
type record UnknownAttributes {
STUNMessageAttributeType stunType (UNKNOWN_ATTRIBUTES) ,
integer stunLength,
UnknownAttributesGroup unknownAttributeGroup
}
type record Software {
STUNMessageAttributeType stunType (SOFTWARE) ,
integer stunLength,
utf8string software
}
type record AlternateServer {
STUNMessageAttributeType stunType (ALTERNATE_SERVER) ,
integer stunLength,
Family family,
integer alternateServerPort,
octetstring alternateServerAddress
}
type record of STUNMessageAttribute STUNMessageAttributGroup
type record of bitstring UnknownAttributesGroup
type union STUNMessageAttribute {
MappedAddress mappedAdress,
XORMappedAddress xorMappedAddress,
Username username,
MessageIntegrity messageIntegrity,
Fingerprint fingerprint,
ErrorCode errorCode,
Realm realm,
Nonce nonce,
UnknownAttributes unknownAttributes,
Software software,
AlternateServer alternateServer
}
const MagicCookie MAGIC_COOKIE := '2112A442'H