Asterisk - The Open Source Telephony Project  18.5.0
provision.h
Go to the documentation of this file.
1 /*
2  * IAX Provisioning Protocol
3  *
4  * Sub-information elements
5  *
6  * Copyright (C) 2003, Digium
7  *
8  * Mark Spencer <[email protected]>
9  *
10  */
11 
12 /*! \file
13  * \brief IAX2 Provisioning protocol
14  */
15 
16 #ifndef __IAX2_PROVISION_H
17 #define __IAX2_PROVISION_H
18 
19 #include "parser.h"
20 
21 #define PROV_IE_USEDHCP 1 /* Presense only */
22 #define PROV_IE_IPADDR 2 /* 32-bit */
23 #define PROV_IE_SUBNET 3 /* 32-bit */
24 #define PROV_IE_GATEWAY 4 /* 32-bit */
25 #define PROV_IE_PORTNO 5 /* 16-bit */
26 #define PROV_IE_USER 6 /* < 20 bytes */
27 #define PROV_IE_PASS 7 /* < 20 bytes */
28 #define PROV_IE_SERVERUSER 8 /* < 20 bytes */
29 #define PROV_IE_SERVERPASS 9 /* < 20 bytes */
30 #define PROV_IE_LANG 10 /* < 10 bytes */
31 #define PROV_IE_TOS 11 /* 8-bits */
32 #define PROV_IE_FLAGS 12 /* 32-bits */
33 #define PROV_IE_FORMAT 13 /* 32-bits */
34 #define PROV_IE_AESKEY 14 /* 128-bits */
35 #define PROV_IE_SERVERIP 15 /* 32-bits */
36 #define PROV_IE_SERVERPORT 16 /* 16-bits */
37 #define PROV_IE_NEWAESKEY 17 /* 128-bits */
38 #define PROV_IE_PROVVER 18 /* 32-bits */
39 #define PROV_IE_ALTSERVER 19 /* 32-bits */
40 
41 #define PROV_FLAG_REGISTER (1 << 0)
42 #define PROV_FLAG_SECURE (1 << 1)
43 #define PROV_FLAG_HEARTBEAT (1 << 2)
44 #define PROV_FLAG_DEBUG (1 << 3)
45 
46 #define PROV_FLAG_DIS_CALLERID (1 << 4) /* Caller-ID Disabled */
47 #define PROV_FLAG_DIS_CALLWAIT (1 << 5) /* Caller-ID / Call Waiting Disable */
48 #define PROV_FLAG_DIS_CIDCW (1 << 6) /* CID/CW Disabled */
49 #define PROV_FLAG_DIS_THREEWAY (1 << 7) /* Three-way calling, transfer disabled */
50 
51 char *iax_provflags2str(char *buf, int buflen, unsigned int flags);
53 int iax_provision_unload(void);
54 int iax_provision_build(struct iax_ie_data *provdata, unsigned int *signature, const char *template, int force);
55 int iax_provision_version(unsigned int *signature, const char *template, int force);
56 char *iax_prov_complete_template(const char *line, const char *word, int pos, int state);
57 
58 #endif
char buf[BUFSIZE]
Definition: eagi_proxy.c:66
char * iax_prov_complete_template(const char *line, const char *word, int pos, int state)
Definition: provision.c:179
unsigned int flags
Definition: utils.h:200
int iax_provision_unload(void)
Definition: provision.c:520
int iax_provision_build(struct iax_ie_data *provdata, unsigned int *signature, const char *template, int force)
Definition: provision.c:209
Implementation of the IAX2 protocol.
char * iax_provflags2str(char *buf, int buflen, unsigned int flags)
Definition: provision.c:90
int iax_provision_reload(int reload)
Definition: provision.c:529
static int reload(void)
Definition: cdr_mysql.c:741
int iax_provision_version(unsigned int *signature, const char *template, int force)
Definition: provision.c:258
short word