Asterisk.org: Developer Documentation (28 Oct 2009)

Wed Oct 28 15:47:54 2009

## Asterisk developer's documentation

# iax2-provision.h

Go to the documentation of this file.

    00001 /*
    00002  * IAX Provisioning Protocol
    00003  *
    00004  * Sub-information elements
    00005  *
    00006  * Copyright (C) 2003, Digium
    00007  *
    00008  * Mark Spencer <markster@digium.com>
    00009  *
    00010  */
    00011
    00012 /*! \file
    00013  *  \brief IAX2 Provisioning protocol
    00014  */
    00015
    00016 #include "iax2-parser.h"
    00017
    00018 #define PROV_IE_USEDHCP    1  /* Presense only */
    00019 #define PROV_IE_IPADDR     2  /* 32-bit */
    00020 #define PROV_IE_SUBNET     3  /* 32-bit */
    00021 #define PROV_IE_GATEWAY    4  /* 32-bit */
    00022 #define PROV_IE_PORTNO     5  /* 16-bit */
    00023 #define PROV_IE_USER    6  /* < 20 bytes */
    00024 #define PROV_IE_PASS    7  /* < 20 bytes */
    00025 #define PROV_IE_SERVERUSER 8  /* < 20 bytes */
    00026 #define PROV_IE_SERVERPASS 9  /* < 20 bytes */
    00027 #define PROV_IE_LANG    10 /* < 10 bytes */
    00028 #define PROV_IE_TOS        11 /* 8-bits */
    00029 #define PROV_IE_FLAGS      12 /* 32-bits */
    00030 #define PROV_IE_FORMAT     13 /* 32-bits */
    00031 #define PROV_IE_AESKEY     14 /* 128-bits */
    00032 #define PROV_IE_SERVERIP   15 /* 32-bits */
    00033 #define PROV_IE_SERVERPORT 16 /* 16-bits */
    00034 #define PROV_IE_NEWAESKEY  17 /* 128-bits */
    00035 #define PROV_IE_PROVVER    18 /* 32-bits */
    00036 #define PROV_IE_ALTSERVER  19 /* 32-bits */
    00037
    00038 #define PROV_FLAG_REGISTER    (1 << 0)
    00039 #define PROV_FLAG_SECURE      (1 << 1)
    00040 #define PROV_FLAG_HEARTBEAT      (1 << 2)
    00041 #define PROV_FLAG_DEBUG       (1 << 3)
    00042
    00043 #define PROV_FLAG_DIS_CALLERID   (1 << 4) /* Caller-ID Disabled */
    00044 #define PROV_FLAG_DIS_CALLWAIT   (1 << 5) /* Caller-ID / Call Waiting Disable */
    00045 #define PROV_FLAG_DIS_CIDCW      (1 << 6) /* CID/CW Disabled */
    00046 #define PROV_FLAG_DIS_THREEWAY   (1 << 7) /* Three-way calling, transfer disabled */
    00047
    00048 extern char *iax_provflags2str(char *buf, int buflen, unsigned int flags);
    00049 extern int iax_provision_reload(void);
    00050 extern int iax_provision_unload(void);
    00051 extern int iax_provision_build(struct iax_ie_data *provdata, unsigned int *signature, const char *template, int force);
    00052 extern int iax_provision_version(unsigned int *signature, const char *template, int force);
    00053 extern char *iax_prov_complete_template(char *line, char *word, int pos, int state);