windows-nt/Source/XPSP1/NT/net/rras/ip/nath323/q931defs.h
2020-09-26 16:20:57 +08:00

112 lines
3.7 KiB
C

#ifndef __iptel_q931defs_h
#define __iptel_q931defs_h
// This module contains constants and enumerated types for values used in the Q.931 protocol.
// It does not contain any structures, definitions, or APIs relevant to any implementation.
// Q931_PROTOCOL_DISCRIMINATOR identifies Q.931 PDUs on links that may carry
// PDUs from more than one protocol, such as LAPD D-channel links on PRI.
#define Q931_PROTOCOL_DISCRIMINATOR 0x08
// the well-known Q.931 TSAP for TCP on IP is TCP port 1720
#define Q931_TSAP_IP_TCP 1720
#define Q931_TSAP_IP_TCP_SECURE 1300
enum Q931_MESSAGE_TYPE
{
// Call Establishment Message (000-----)
Q931_MESSAGE_TYPE_ALERTING = 0x01,
Q931_MESSAGE_TYPE_CALL_PROCEEDING = 0x02,
Q931_MESSAGE_TYPE_CONNECT = 0x07,
Q931_MESSAGE_TYPE_CONNECT_ACKNOWLEDGE = 0x0F,
Q931_MESSAGE_TYPE_PROGRESS = 0x03,
Q931_MESSAGE_TYPE_SETUP = 0x05,
Q931_MESSAGE_TYPE_SETUP_ACKNOWLEDGE = 0x0E,
Q931_MESSAGE_TYPE_FACILITY = 0x1C,
// Call Information Phase message (001-----)
Q931_MESSAGE_TYPE_RESUME = 0x26,
Q931_MESSAGE_TYPE_RESUME_ACKNOWLEDGE = 0x2E,
Q931_MESSAGE_TYPE_RESUME_REJECT = 0x22,
Q931_MESSAGE_TYPE_SUSPEND = 0x25,
Q931_MESSAGE_TYPE_SUSPEND_ACKNOWLEDGE = 0x2D,
Q931_MESSAGE_TYPE_SUSPEND_REJECT = 0x21,
Q931_MESSAGE_TYPE_USER_INFORMATION = 0x20,
// Call Clearing Messages (010-----)
Q931_MESSAGE_TYPE_DISCONNECT = 0x45,
Q931_MESSAGE_TYPE_RELEASE = 0x4D,
Q931_MESSAGE_TYPE_RELEASE_COMPLETE = 0x5A,
Q931_MESSAGE_TYPE_RESTART = 0x46,
Q931_MESSAGE_TYPE_RESTART_ACKNOWLEDGE = 0x4E,
// Miscellaneous Message (011-----)
Q931_MESSAGE_TYPE_SEGMENT = 0x60,
Q931_MESSAGE_TYPE_CONGESTION_CONTROL = 0x79,
Q931_MESSAGE_TYPE_INFORMATION = 0x7B,
Q931_MESSAGE_TYPE_NOTIFY = 0x6E,
Q931_MESSAGE_TYPE_STATUS = 0x7D,
Q931_MESSAGE_TYPE_STATUS_ENQUIRY = 0x75,
};
enum Q931_IE_IDENTIFIER
{
// Single-Octet Information Elements
Q931_IE_SHIFT = 0x90, // 1001----
Q931_IE_RESERVED = 0x80, // 1000----
Q931_IE_MORE_DATA = 0xA0, // 11000000
Q931_IE_SENDING_COMPLETE = 0xA1, // 11000001
Q931_IE_CONGESTION_CONTROL = 0xB0, // 1011----
Q931_IE_REPEAT_INDICATOR = 0xD0, // 1101----
// Variable-Length Information Elements
Q931_IE_SEGMENTED_MESSAGE = 0x00,
Q931_IE_BEARER_CAPABILITY = 0x04,
Q931_IE_CAUSE = 0x08,
Q931_IE_CALL_IDENTITIY = 0x10,
Q931_IE_CALL_STATE = 0x14,
Q931_IE_CHANNEL_IDENTIFICATION = 0x18,
Q931_IE_PROGRESS_INDICATOR = 0x1E,
Q931_IE_NETWORK_SPECIFIC_FACILITIES = 0x20,
Q931_IE_NOTIFICATION_INDICATOR = 0x27,
Q931_IE_DISPLAY = 0x28,
Q931_IE_DATE_TIME = 0x29,
Q931_IE_KEYPAD_FACILITY = 0x2A,
Q931_IE_SIGNAL = 0x34,
Q931_IE_INFORMATION_RATE = 0x40,
Q931_IE_END_TO_END_TRANSIT_DELAY = 0x42,
Q931_IE_TRANSIT_DELAY_SELECTION = 0x43,
Q931_IE_PACKET_LAYER_BINARY_PARAMETERS = 0x44,
Q931_IE_PACKET_LAYER_WINDOW_SIZE = 0x45,
Q931_IE_PACKET_SIZE = 0x46,
Q931_IE_CLOSED_USER_GROUP = 0x47,
Q931_IE_REVERSE_CHARGE_INDICATION = 0x4A,
Q931_IE_CALLING_PARTY_NUMBER = 0x6A,
Q931_IE_CALLING_PARTY_SUBADDRESS = 0x6B,
Q931_IE_CALLED_PARTY_NUMBER = 0x70,
Q931_IE_CALLED_PARTY_SUBADDRESS = 0x71,
Q931_IE_REDIRECTING_NUMBER = 0x74,
Q931_IE_TRANSIT_NETWORK_SELECTION = 0x78,
Q931_IE_RESTART_INDICATOR = 0x79,
Q931_IE_LOW_LAYER_COMPATIBILITY = 0x7C,
Q931_IE_HIGH_LAYER_COMPATIBILITY = 0x7D,
Q931_IE_USER_TO_USER = 0x7E,
Q931_IE_ESCAPE_FOR_EXTENSION = 0x7F,
};
enum Q931_UUIE_TYPE
{
Q931_UUIE_USER_SPECIFIC = 0x00,
Q931_UUIE_OSI = 0x01,
Q931_UUIE_X244 = 0x02,
Q931_UUIE_IA5_TEXT = 0x04,
Q931_UUIE_X208 = 0x05,
Q931_UUIE_V120_RATE_ADAPTION = 0x07,
Q931_UUIE_UNI_CALL_CONTROL = 0x08,
};
#endif // __iptel_q931defs_h