rasdaman complete source
http-defs.h
Go to the documentation of this file.
1 /*
2 * This file is part of rasdaman community.
3 *
4 * Rasdaman community is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation, either version 3 of the License, or
7 * (at your option) any later version.
8 *
9 * Rasdaman community is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with rasdaman community. If not, see <http://www.gnu.org/licenses/>.
16 *
17 * Copyright 2003, 2004, 2005, 2006, 2007, 2008, 2009 Peter Baumann /
18 rasdaman GmbH.
19 *
20 * For more information please see <http://www.rasdaman.org>
21 * or contact Peter Baumann via <baumann@rasdaman.com>.
22 */
23 /*------------------------------------------------------------------------*/
24 /* http-defs.h - defines for HTTP. */
25 /*------------------------------------------------------------------------*/
26 
27 
28 #ifndef _HTTP_DEFS_H
29 #define _HTTP_DEFS_H
30 
31 #define AUTH_MAX_RETRIES 1
32 
33 /*
34  */
35 
36 #define HTTP_REQUEST 1
37 #define HTTP_RESPONSE 2
38 
39 
40 /* ReqInfo/RespInfo structure states when reading/parsing requests/responses
41  */
42 
43 #define RI_EMPTY 0
44 #define RI_READ_OK 1
45 #define RI_READ_ERROR 2
46 #define RI_PARSE_OK 3
47 #define RI_PARSE_WARN 4 /* trouble when parsing MsgHeaders */
48 #define RI_PARSE_ERROR 5 /* Request Line/Status Line not found */
49 
50 /* Known Protocols:
51  */
52 
53 #define HTTP_0_9 0
54 #define HTTP_0_9_STRING ""
55 #define HTTP_1_0 1
56 #define HTTP_1_0_STRING "HTTP/1.0"
57 #define HTTP_1_1 2
58 #define HTTP_1_1_STRING "HTTP/1.1"
59 
60 
61 /* HTTP Method Keys:
62  */
63 
64 #define MKEY_NONE 0
65 #define MKEY_GET 1
66 #define MKEY_HEAD 2
67 #define MKEY_PUT 3
68 #define MKEY_POST 4
69 #define MKEY_DELETE 5
70 #define MKEY_OPTIONS 6
71 #define MKEY_TRACE 7
72 #define MKEY_UNKNOWN 999
73 
74 #define NUM_MKEYS 7
75 
76 
77 /* HTTP Status Codes:
78  */
79 
80 #define STATUS_UNKNOWN 0
81 #define STATUS_UNDEFINED 0
82 #define STATUS_Continue 100
83 #define STATUS_Switching_Protocols 101
84 #define STATUS_OK 200
85 #define STATUS_Created 201
86 #define STATUS_Accepted 202
87 #define STATUS_Non_Authoritative_Information 203
88 #define STATUS_No_Content 204
89 #define STATUS_Reset_Content 205
90 #define STATUS_Partial_Content 206
91 #define STATUS_Multiple_Choices 300
92 #define STATUS_Moved_Permanently 301
93 #define STATUS_Moved_Temporarily 302
94 #define STATUS_See_Other 303
95 #define STATUS_Not_Modified 304
96 #define STATUS_Use_Proxy 305
97 #define STATUS_Switch_Proxy 306
98 #define STATUS_Bad_Request 400
99 #define STATUS_Unauthorized 401
100 #define STATUS_Payment_Required 402
101 #define STATUS_Forbidden 403
102 #define STATUS_Not_Found 404
103 #define STATUS_Method_Not_Allowed 405
104 #define STATUS_Not_Acceptable 406
105 #define STATUS_Proxy_Authentication_Required 407
106 #define STATUS_Request_Timeout 408
107 #define STATUS_Conflict 409
108 #define STATUS_Gone 410
109 #define STATUS_Length_Required 411
110 #define STATUS_Precondition_Failed 412
111 #define STATUS_Request_Entity_Too_Large 413
112 #define STATUS_Request_URI_Too_Long 414
113 #define STATUS_Unsupported_Media_Type 415
114 #define STATUS_Requested_Range_Not_Valid 416
115 #define STATUS_Expectation_Failed 419
116 #define STATUS_Internal_Server_Error 500
117 #define STATUS_Not_Implemented 501
118 #define STATUS_Bad_Gateway 502
119 #define STATUS_Service_Unavailable 503
120 #define STATUS_Gateway_Timeout 504
121 #define STATUS_HTTP_Version_Not_Supported 505
122 #define STATUS_Redirection_Failed 506
123 
124 
125 /* HTTP Header Keys:
126  */
127 
128 #define HKEY_CONTINUE 0
129 #define HKEY_Accept 1
130 #define HKEY_Accept_Charset 2
131 #define HKEY_Accept_Encoding 3
132 #define HKEY_Accept_Language 4
133 #define HKEY_Accept_Ranges 5
134 #define HKEY_Age 6
135 #define HKEY_Allow 7
136 #define HKEY_Authorization 8
137 #define HKEY_Cache_Control 9
138 #define HKEY_Compliance 10
139 #define HKEY_Connection 11
140 #define HKEY_Content_Base 12
141 #define HKEY_Content_Encoding 13
142 #define HKEY_Content_Language 14
143 #define HKEY_Content_Length 15
144 #define HKEY_Content_Location 16
145 #define HKEY_Content_MD5 17
146 #define HKEY_Content_Range 18
147 #define HKEY_Content_Type 19
148 #define HKEY_Date 20
149 #define HKEY_ETag 21
150 #define HKEY_Expect 22
151 #define HKEY_Expires 23
152 #define HKEY_From 24
153 #define HKEY_Host 25
154 #define HKEY_If_Modified_Since 26
155 #define HKEY_If_Match 27
156 #define HKEY_If_None_Match 28
157 #define HKEY_If_Range 29
158 #define HKEY_If_Unmodified_Since 30
159 #define HKEY_Keep_Alive 31
160 #define HKEY_Last_Modified 32
161 #define HKEY_Location 33
162 #define HKEY_Max_Forwards 34
163 #define HKEY_Non_Compliance 35
164 #define HKEY_Pragma 36
165 #define HKEY_Proxy_Authenticate 37
166 #define HKEY_Proxy_Authorization 38
167 #define HKEY_Public 39
168 #define HKEY_Range 40
169 #define HKEY_Referer 41
170 #define HKEY_Retry_After 42
171 #define HKEY_Server 43
172 #define HKEY_Set_Proxy 44
173 #define HKEY_Transfer_Encoding 45
174 #define HKEY_Upgrade 46
175 #define HKEY_User_Agent 47
176 #define HKEY_Vary 48
177 #define HKEY_Warning 49
178 #define HKEY_WWW_Authenticate 50
179 #define HKEY_UNKNOWN 999
180 
181 #define NUM_HKEYS 50
182 
183 
184 /* Language Keys:
185  */
186 
187  /* These numbers are intentionally choosen: */
188  /* Space left for upgrades. */
189  /* See also: ISP 639 / Version 1 */
190 
191 #define LANG_UNKNOWN 0
192 #define LANG_DE 22
193 #define LANG_EN 25
194 #define LANG_EO 26
195 #define LANG_ES 27
196 #define LANG_FR 34
197 #define LANG_IT 53
198 
199 
200 /* Security Realm Keys:
201  */
202 
203 #define REALM_ERROR -1
204 #define REALM_UNKNOWN 0
205 #define REALM_UNDEFINED 0
206 #define REALM_IPCLASS_A 1
207 #define REALM_IPCLASS_B 2
208 #define REALM_IPCLASS_C 3
209 #define REALM_IPADDRESS 4
210 #define REALM_HOSTNAME 10
211 #define REALM_DOMAIN 11
212 
213 
214 #endif /* _HTTP_DEFS_H not defined */