wsp.h
上传用户:gzpyjq
上传日期:2013-01-31
资源大小:1852k
文件大小:2k
源码类别:

手机WAP编程

开发平台:

WINDOWS

  1. /*
  2.  * wsp.h - WSP implementation header
  3.  */
  4. #ifndef WSP_H
  5. #define WSP_H
  6. /*
  7.  * int WSP_accepted_extended_methods[] = { -1 };
  8.  * int WSP_accepted_header_code_pages[] = { -1 };
  9.  */
  10. /* See Table 35 of the WSP standard */
  11. enum wsp_abort_values {
  12. WSP_ABORT_PROTOERR = 0xe0,
  13. WSP_ABORT_DISCONNECT = 0xe1,
  14. WSP_ABORT_SUSPEND = 0xe2,
  15. WSP_ABORT_RESUME = 0xe3,
  16. WSP_ABORT_CONGESTION = 0xe4,
  17. WSP_ABORT_CONNECTERR = 0xe5,
  18. WSP_ABORT_MRUEXCEEDED = 0xe6,
  19. WSP_ABORT_MOREXCEEDED = 0xe7,
  20. WSP_ABORT_PEERREQ = 0xe8,
  21. WSP_ABORT_NETERR = 0xe9,
  22. WSP_ABORT_USERREQ = 0xea,
  23.         WSP_ABORT_USERRFS = 0xeb,
  24.         WSP_ABORT_USERPND = 0xec,
  25.         WSP_ABORT_USERDCR = 0xed,
  26.         WSP_ABORT_USERDCU = 0xee
  27. };
  28. typedef struct WSPMachine WSPMachine;
  29. typedef struct WSPMethodMachine WSPMethodMachine;
  30. typedef struct WSPPushMachine WSPPushMachine;
  31. #include "gwlib/gwlib.h"
  32. #include "wap_addr.h"
  33. #include "wap_events.h"
  34. struct WSPMachine {
  35. #define INTEGER(name) long name;
  36. #define OCTSTR(name) Octstr *name;
  37. #define HTTPHEADERS(name) List *name;
  38. #define ADDRTUPLE(name) WAPAddrTuple *name;
  39. #define COOKIES(name) List *name;
  40. #define REFERER(name) Octstr *name;
  41. #define MACHINESLIST(name) List *name;
  42. #define CAPABILITIES(name) List *name;
  43. #define MACHINE(fields) fields
  44. #include "wsp_server_session_machine.def"
  45. };
  46. struct WSPMethodMachine {
  47. #define INTEGER(name) long name;
  48. #define ADDRTUPLE(name) WAPAddrTuple *name;
  49. #define EVENT(name) WAPEvent *name;
  50. #define MACHINE(fields) fields
  51. #include "wsp_server_method_machine.def"
  52. };
  53. struct WSPPushMachine {
  54.        #define INTEGER(name) long name;
  55.        #define ADDRTUPLE(name) WAPAddrTuple *name;
  56.        #define HTTPHEADER(name) List *name;
  57.        #define MACHINE(fields) fields
  58.        #include "wsp_server_push_machine.def"
  59. };
  60. /*
  61.  * Shared stuff.
  62.  */
  63. long wsp_convert_http_status_to_wsp_status(long http_status);
  64. WSPMachine *find_session_machine_by_id(int);
  65. #endif