iax2-provision.h 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. /*
  2. * IAX Provisioning Protocol
  3. *
  4. * Sub-information elements
  5. *
  6. * Copyright (C) 2003, Digium
  7. *
  8. * Mark Spencer <markster@digium.com>
  9. *
  10. */
  11. #include "iax2-parser.h"
  12. #define PROV_IE_USEDHCP 1 /* Presense only */
  13. #define PROV_IE_IPADDR 2 /* 32-bit */
  14. #define PROV_IE_SUBNET 3 /* 32-bit */
  15. #define PROV_IE_GATEWAY 4 /* 32-bit */
  16. #define PROV_IE_PORTNO 5 /* 16-bit */
  17. #define PROV_IE_USER 6 /* < 20 bytes */
  18. #define PROV_IE_PASS 7 /* < 20 bytes */
  19. #define PROV_IE_SERVERUSER 8 /* < 20 bytes */
  20. #define PROV_IE_SERVERPASS 9 /* < 20 bytes */
  21. #define PROV_IE_LANG 10 /* < 10 bytes */
  22. #define PROV_IE_TOS 11 /* 8-bits */
  23. #define PROV_IE_FLAGS 12 /* 32-bits */
  24. #define PROV_IE_FORMAT 13 /* 32-bits */
  25. #define PROV_IE_AESKEY 14 /* 128-bits */
  26. #define PROV_IE_SERVERIP 15 /* 32-bits */
  27. #define PROV_IE_SERVERPORT 16 /* 16-bits */
  28. #define PROV_IE_NEWAESKEY 17 /* 128-bits */
  29. #define PROV_IE_PROVVER 18 /* 32-bits */
  30. #define PROV_IE_ALTSERVER 19 /* 32-bits */
  31. #define PROV_FLAG_REGISTER (1 << 0)
  32. #define PROV_FLAG_SECURE (1 << 1)
  33. #define PROV_FLAG_HEARTBEAT (1 << 2)
  34. #define PROV_FLAG_DEBUG (1 << 3)
  35. extern char *iax_provflags2str(char *buf, int buflen, unsigned int flags);
  36. extern int iax_provision_reload(void);
  37. extern int iax_provision_unload(void);
  38. extern int iax_provision_build(struct iax_ie_data *provdata, unsigned int *signature, const char *template, int force);
  39. extern int iax_provision_version(unsigned int *signature, const char *template, int force);
  40. extern char *iax_prov_complete_template(char *line, char *word, int pos, int state);