27 #define IAX_PROTO_VERSION 2
34 #if defined(LOW_MEMORY)
35 #define IAX_MAX_CALLS 2049
37 #define IAX_MAX_CALLS 32768
40 #define IAX_FLAG_FULL 0x8000
42 #define IAX_FLAG_RETRANS 0x8000
44 #define IAX_FLAG_SC_LOG 0x80
46 #define IAX_MAX_SHIFT 0x3F
56 IAX_COMMAND_HANGUP = 5,
57 IAX_COMMAND_REJECT = 6,
58 IAX_COMMAND_ACCEPT = 7,
59 IAX_COMMAND_AUTHREQ = 8,
60 IAX_COMMAND_AUTHREP = 9,
61 IAX_COMMAND_INVAL = 10,
62 IAX_COMMAND_LAGRQ = 11,
63 IAX_COMMAND_LAGRP = 12,
123 #define IAX_DEFAULT_REG_EXPIRE 60
126 #define IAX_LINGER_TIMEOUT 10
128 #define IAX_DEFAULT_PORTNO 4569
131 #define IAX_IE_CALLED_NUMBER 1
132 #define IAX_IE_CALLING_NUMBER 2
133 #define IAX_IE_CALLING_ANI 3
134 #define IAX_IE_CALLING_NAME 4
135 #define IAX_IE_CALLED_CONTEXT 5
136 #define IAX_IE_USERNAME 6
137 #define IAX_IE_PASSWORD 7
138 #define IAX_IE_CAPABILITY 8
139 #define IAX_IE_FORMAT 9
140 #define IAX_IE_LANGUAGE 10
141 #define IAX_IE_VERSION 11
142 #define IAX_IE_ADSICPE 12
143 #define IAX_IE_DNID 13
144 #define IAX_IE_AUTHMETHODS 14
145 #define IAX_IE_CHALLENGE 15
146 #define IAX_IE_MD5_RESULT 16
147 #define IAX_IE_RSA_RESULT 17
148 #define IAX_IE_APPARENT_ADDR 18
149 #define IAX_IE_REFRESH 19
150 #define IAX_IE_DPSTATUS 20
151 #define IAX_IE_CALLNO 21
152 #define IAX_IE_CAUSE 22
153 #define IAX_IE_IAX_UNKNOWN 23
154 #define IAX_IE_MSGCOUNT 24
155 #define IAX_IE_AUTOANSWER 25
156 #define IAX_IE_MUSICONHOLD 26
157 #define IAX_IE_TRANSFERID 27
158 #define IAX_IE_RDNIS 28
159 #define IAX_IE_PROVISIONING 29
160 #define IAX_IE_AESPROVISIONING 30
161 #define IAX_IE_DATETIME 31
162 #define IAX_IE_DEVICETYPE 32
163 #define IAX_IE_SERVICEIDENT 33
164 #define IAX_IE_FIRMWAREVER 34
165 #define IAX_IE_FWBLOCKDESC 35
166 #define IAX_IE_FWBLOCKDATA 36
167 #define IAX_IE_PROVVER 37
168 #define IAX_IE_CALLINGPRES 38
169 #define IAX_IE_CALLINGTON 39
170 #define IAX_IE_CALLINGTNS 40
171 #define IAX_IE_SAMPLINGRATE 41
172 #define IAX_IE_CAUSECODE 42
173 #define IAX_IE_ENCRYPTION 43
174 #define IAX_IE_ENCKEY 44
175 #define IAX_IE_CODEC_PREFS 45
177 #define IAX_IE_RR_JITTER 46
178 #define IAX_IE_RR_LOSS 47
179 #define IAX_IE_RR_PKTS 48
180 #define IAX_IE_RR_DELAY 49
181 #define IAX_IE_RR_DROPPED 50
182 #define IAX_IE_RR_OOO 51
183 #define IAX_IE_VARIABLE 52
184 #define IAX_IE_OSPTOKEN 53
185 #define IAX_IE_CALLTOKEN 54
187 #define IAX_IE_CAPABILITY2 55
188 #define IAX_IE_FORMAT2 56
190 #define IAX_IE_CALLINGANI2 57
192 #define IAX_MAX_OSPBLOCK_SIZE 254
193 #define IAX_MAX_OSPBLOCK_NUM 4
194 #define IAX_MAX_OSPTOKEN_SIZE (IAX_MAX_OSPBLOCK_SIZE * IAX_MAX_OSPBLOCK_NUM)
195 #define IAX_MAX_OSPBUFF_SIZE (IAX_MAX_OSPTOKEN_SIZE + 16)
197 #define IAX_AUTH_PLAINTEXT (1 << 0)
198 #define IAX_AUTH_MD5 (1 << 1)
199 #define IAX_AUTH_RSA (1 << 2)
201 #define IAX_ENCRYPT_AES128 (1 << 0)
202 #define IAX_ENCRYPT_KEYROTATE (1 << 15)
204 #define IAX_META_TRUNK 1
205 #define IAX_META_VIDEO 2
207 #define IAX_META_TRUNK_SUPERMINI 0
208 #define IAX_META_TRUNK_MINI 1
210 #define IAX_RATE_8KHZ (1 << 0)
211 #define IAX_RATE_11KHZ (1 << 1)
212 #define IAX_RATE_16KHZ (1 << 2)
213 #define IAX_RATE_22KHZ (1 << 3)
214 #define IAX_RATE_44KHZ (1 << 4)
215 #define IAX_RATE_48KHZ (1 << 5)
217 #define IAX_DPSTATUS_EXISTS (1 << 0)
218 #define IAX_DPSTATUS_CANEXIST (1 << 1)
219 #define IAX_DPSTATUS_NONEXISTENT (1 << 2)
220 #define IAX_DPSTATUS_IGNOREPAT (1 << 14)
221 #define IAX_DPSTATUS_MATCHMORE (1 << 15)
238 unsigned char iedata[0];
239 } __attribute__ ((__packed__));
245 unsigned char encdata[0];
246 } __attribute__ ((__packed__));
254 unsigned char data[0];
255 } __attribute__ ((__packed__));
260 unsigned char encdata[0];
261 } __attribute__ ((__packed__));
267 unsigned char data[0];
268 } __attribute__ ((__packed__));
274 unsigned char data[0];
275 } __attribute__ ((__packed__));
279 unsigned char data[0];
280 } __attribute__ ((__packed__));
285 } __attribute__ ((__packed__));
291 } __attribute__ ((__packed__));
293 #define IAX_FIRMWARE_MAGIC 0x69617879
301 unsigned char data[0];
302 } __attribute__ ((__packed__));
const char * iax2_getformatname(iax2_format format)
iax2 wrapper function for ast_getformatname