]> git.ipfire.org Git - thirdparty/squid.git/blame - src/enums.h
Fixed Connection: header handling, but testing needed
[thirdparty/squid.git] / src / enums.h
CommitLineData
f892c2bf 1
2
3typedef enum {
79a15e0a 4 LOG_TAG_NONE,
5 LOG_TCP_HIT,
6 LOG_TCP_MISS,
7 LOG_TCP_REFRESH_HIT,
8 LOG_TCP_REFRESH_FAIL_HIT,
9 LOG_TCP_REFRESH_MISS,
10 LOG_TCP_CLIENT_REFRESH,
11 LOG_TCP_IMS_HIT,
12 LOG_TCP_IMS_MISS,
13 LOG_TCP_SWAPFAIL_MISS,
14 LOG_TCP_NEGATIVE_HIT,
15 LOG_TCP_MEM_HIT,
16 LOG_TCP_DENIED,
17 LOG_UDP_HIT,
18 LOG_UDP_HIT_OBJ,
19 LOG_UDP_MISS,
20 LOG_UDP_DENIED,
21 LOG_UDP_INVALID,
22 LOG_UDP_MISS_NOFETCH,
23 LOG_TYPE_MAX
f892c2bf 24} log_type;
25
9b312a19 26typedef enum {
27 ERR_NONE,
28 ERR_READ_TIMEOUT,
29 ERR_LIFETIME_EXP,
9b312a19 30 ERR_READ_ERROR,
31 ERR_WRITE_ERROR,
32 ERR_CLIENT_ABORT,
33 ERR_CONNECT_FAIL,
34 ERR_INVALID_REQ,
35 ERR_UNSUP_REQ,
36 ERR_INVALID_URL,
37 ERR_SOCKET_FAILURE,
38 ERR_DNS_FAIL,
9b312a19 39 ERR_CANNOT_FORWARD,
bdb3c273 40 ERR_FORWARDING_DENIED,
9b312a19 41 ERR_NO_RELAY,
9b312a19 42 ERR_ZERO_SIZE_OBJECT,
43 ERR_FTP_DISABLED,
b9916917 44 ERR_FTP_FAILURE,
23d92c64 45 ERR_URN_RESOLVE,
9b312a19 46 ERR_ACCESS_DENIED,
47 ERR_MAX
48} err_type;
49
f892c2bf 50typedef enum {
51 ACL_NONE,
52 ACL_SRC_IP,
53 ACL_DST_IP,
54 ACL_SRC_DOMAIN,
55 ACL_DST_DOMAIN,
56 ACL_TIME,
57 ACL_URLPATH_REGEX,
58 ACL_URL_REGEX,
59 ACL_URL_PORT,
60 ACL_USER,
61 ACL_PROTO,
62 ACL_METHOD,
63 ACL_BROWSER,
afe95a7e 64 ACL_PROXY_AUTH,
5d6c7aad 65 ACL_SRC_ASN,
66 ACL_DST_ASN,
6b6347d5 67 ACL_SRC_ARP,
f892c2bf 68 ACL_ENUM_MAX
69} squid_acl;
70
71typedef enum {
72 ACL_LOOKUP_NONE,
73 ACL_LOOKUP_NEEDED,
74 ACL_LOOKUP_PENDING,
75 ACL_LOOKUP_DONE
76} acl_lookup_state;
77
78typedef enum {
79 IP_ALLOW,
80 IP_DENY
81} ip_access_type;
82
83enum {
84 FD_NONE,
85 FD_LOG,
86 FD_FILE,
87 FD_SOCKET,
88 FD_PIPE,
89 FD_UNKNOWN
90};
91
92enum {
93 FD_READ,
94 FD_WRITE
95};
96
97enum {
98 FD_CLOSE,
99 FD_OPEN
100};
101
102enum {
103 FQDN_CACHED,
104 FQDN_NEGATIVE_CACHED,
105 FQDN_PENDING, /* waiting to be dispatched */
106 FQDN_DISPATCHED /* waiting for reply from dnsserver */
107};
108typedef unsigned int fqdncache_status_t;
109
110enum {
111 IP_CACHED,
112 IP_NEGATIVE_CACHED,
113 IP_PENDING, /* waiting to be dispatched */
114 IP_DISPATCHED /* waiting for reply from dnsserver */
115};
116typedef unsigned int ipcache_status_t;
117
118typedef enum {
119 PEER_NONE,
120 PEER_SIBLING,
121 PEER_PARENT,
122 PEER_MULTICAST
123} peer_t;
124
125typedef enum {
126 MGR_NONE,
127 MGR_CLIENT_LIST,
f53b06f9 128 MGR_CONFIGURATION,
f892c2bf 129 MGR_DNSSERVERS,
130 MGR_FILEDESCRIPTORS,
131 MGR_FQDNCACHE,
132 MGR_INFO,
133 MGR_IO,
134 MGR_IPCACHE,
135 MGR_LOG_CLEAR,
136 MGR_LOG_DISABLE,
137 MGR_LOG_ENABLE,
138 MGR_LOG_STATUS,
139 MGR_LOG_VIEW,
140 MGR_NETDB,
141 MGR_OBJECTS,
142 MGR_REDIRECTORS,
143 MGR_REFRESH,
144 MGR_REMOVE,
145 MGR_REPLY_HDRS,
146 MGR_SERVER_LIST,
e102ebda 147 MGR_NON_PEERS,
f892c2bf 148 MGR_SHUTDOWN,
149 MGR_UTILIZATION,
150 MGR_VM_OBJECTS,
151 MGR_STOREDIR,
152 MGR_CBDATA,
6605655c 153 MGR_PCONN,
20903cac 154 MGR_5MIN,
f892c2bf 155 MGR_MAX
156} objcache_op;
157
158typedef enum {
159 HIER_NONE,
160 DIRECT,
161 SIBLING_HIT,
162 PARENT_HIT,
163 DEFAULT_PARENT,
164 SINGLE_PARENT,
165 FIRSTUP_PARENT,
166 NO_PARENT_DIRECT,
167 FIRST_PARENT_MISS,
168 CLOSEST_PARENT_MISS,
169 CLOSEST_DIRECT,
170 NO_DIRECT_FAIL,
171 SOURCE_FASTEST,
172 SIBLING_UDP_HIT_OBJ,
173 PARENT_UDP_HIT_OBJ,
f892c2bf 174 ROUNDROBIN_PARENT,
175 HIER_MAX
176} hier_code;
177
178typedef enum {
27cd7235 179 ICP_INVALID,
180 ICP_QUERY,
181 ICP_HIT,
182 ICP_MISS,
183 ICP_ERR,
184 ICP_SEND,
185 ICP_SENDA,
186 ICP_DATABEG,
187 ICP_DATA,
188 ICP_DATAEND,
189 ICP_SECHO,
190 ICP_DECHO,
191 ICP_UNUSED12,
192 ICP_UNUSED13,
193 ICP_UNUSED14,
194 ICP_UNUSED15,
195 ICP_UNUSED16,
196 ICP_UNUSED17,
197 ICP_UNUSED18,
198 ICP_UNUSED19,
199 ICP_UNUSED20,
200 ICP_MISS_NOFETCH,
da2d50d1 201 ICP_DENIED,
27cd7235 202 ICP_HIT_OBJ,
203 ICP_END
f892c2bf 204} icp_opcode;
205
206enum {
207 NOT_IN_MEMORY,
f892c2bf 208 IN_MEMORY
209};
210
211enum {
212 PING_NONE,
213 PING_WAITING,
214 PING_TIMEOUT,
215 PING_DONE
216};
217
218enum {
219 STORE_OK,
220 STORE_PENDING,
221 STORE_ABORTED
222};
223
224enum {
8350fe9b 225 SWAPOUT_NONE,
226 SWAPOUT_OPENING,
227 SWAPOUT_WRITING,
228 SWAPOUT_DONE
f892c2bf 229};
230
74ac2ecb 231enum {
5d86029a 232 STORE_NON_CLIENT,
233 STORE_MEM_CLIENT,
234 STORE_DISK_CLIENT
74ac2ecb 235};
236
f892c2bf 237enum {
238 METHOD_NONE, /* 000 */
239 METHOD_GET, /* 001 */
240 METHOD_POST, /* 010 */
241 METHOD_PUT, /* 011 */
242 METHOD_HEAD, /* 100 */
243 METHOD_CONNECT, /* 101 */
244 METHOD_TRACE, /* 110 */
245 METHOD_PURGE /* 111 */
246};
247typedef unsigned int method_t;
248
249typedef enum {
250 PROTO_NONE,
251 PROTO_HTTP,
252 PROTO_FTP,
253 PROTO_GOPHER,
254 PROTO_WAIS,
255 PROTO_CACHEOBJ,
256 PROTO_ICP,
23d92c64 257 PROTO_URN,
53ad48e6 258 PROTO_WHOIS,
f892c2bf 259 PROTO_MAX
260} protocol_t;
9b312a19 261
262typedef enum {
263 HTTP_CONTINUE = 100,
264 HTTP_SWITCHING_PROTOCOLS = 101,
265 HTTP_OK = 200,
266 HTTP_CREATED = 201,
267 HTTP_ACCEPTED = 202,
268 HTTP_NON_AUTHORITATIVE_INFORMATION = 203,
269 HTTP_NO_CONTENT = 204,
270 HTTP_RESET_CONTENT = 205,
271 HTTP_PARTIAL_CONTENT = 206,
272 HTTP_MULTIPLE_CHOICES = 300,
273 HTTP_MOVED_PERMANENTLY = 301,
274 HTTP_MOVED_TEMPORARILY = 302,
275 HTTP_SEE_OTHER = 303,
276 HTTP_NOT_MODIFIED = 304,
277 HTTP_USE_PROXY = 305,
278 HTTP_BAD_REQUEST = 400,
279 HTTP_UNAUTHORIZED = 401,
280 HTTP_PAYMENT_REQUIRED = 402,
281 HTTP_FORBIDDEN = 403,
282 HTTP_NOT_FOUND = 404,
283 HTTP_METHOD_NOT_ALLOWED = 405,
284 HTTP_NOT_ACCEPTABLE = 406,
285 HTTP_PROXY_AUTHENTICATION_REQUIRED = 407,
286 HTTP_REQUEST_TIMEOUT = 408,
287 HTTP_CONFLICT = 409,
288 HTTP_GONE = 410,
289 HTTP_LENGTH_REQUIRED = 411,
290 HTTP_PRECONDITION_FAILED = 412,
291 HTTP_REQUEST_ENTITY_TOO_LARGE = 413,
292 HTTP_REQUEST_URI_TOO_LARGE = 414,
293 HTTP_UNSUPPORTED_MEDIA_TYPE = 415,
294 HTTP_INTERNAL_SERVER_ERROR = 500,
295 HTTP_NOT_IMPLEMENTED = 501,
296 HTTP_BAD_GATEWAY = 502,
297 HTTP_SERVICE_UNAVAILABLE = 503,
298 HTTP_GATEWAY_TIMEOUT = 504,
299 HTTP_HTTP_VERSION_NOT_SUPPORTED = 505
300} http_status;
79a15e0a 301
754b687d 302/* These are for StoreEntry->flag, which is defined as a SHORT */
79a15e0a 303enum {
304 ENTRY_SPECIAL,
79a15e0a 305 ENTRY_REVALIDATE,
306 DELAY_SENDING,
79a15e0a 307 RELEASE_REQUEST,
308 REFRESH_REQUEST,
309 ENTRY_CACHABLE,
79a15e0a 310 ENTRY_DISPATCHED,
311 KEY_PRIVATE,
312 HIERARCHICAL,
313 ENTRY_NEGCACHED,
b34ed725 314 ENTRY_VALIDATED,
315 ENTRY_BAD_LENGTH
79a15e0a 316};
317
79a15e0a 318enum {
fc5d6f7f 319 HTTP_PROXYING,
320 HTTP_KEEPALIVE
79a15e0a 321};
322
323enum {
fc5d6f7f 324 ERR_FLAG_CBDATA
79a15e0a 325};
326
327enum {
328 REQ_RANGE,
329 REQ_NOCACHE,
330 REQ_IMS,
331 REQ_AUTH,
332 REQ_CACHABLE,
333 REQ_UNUSED05,
334 REQ_HIERARCHICAL,
335 REQ_LOOPDETECT,
336 REQ_PROXY_KEEPALIVE,
337 REQ_PROXYING,
338 REQ_REFRESH,
339 REQ_USED_PROXY_AUTH
340};
341
342enum {
343 FD_CLOSE_REQUEST,
344 FD_WRITE_DAEMON,
345 FD_WRITE_PENDING,
346 FD_CLOSING,
347 FD_SOCKET_EOF
348};
349
350enum {
351 HELPER_ALIVE,
352 HELPER_BUSY,
e144eae4 353 HELPER_CLOSING,
354 HELPER_SHUTDOWN
79a15e0a 355};
356
357enum {
358 NEIGHBOR_PROXY_ONLY,
359 NEIGHBOR_NO_QUERY,
360 NEIGHBOR_DEFAULT_PARENT,
361 NEIGHBOR_ROUNDROBIN,
362 NEIGHBOR_MCAST_RESPONDER,
363 NEIGHBOR_CLOSEST_ONLY
364};
fc5d6f7f 365
366typedef enum {
367 ACCESS_DENIED,
368 ACCESS_ALLOWED,
369 ACCESS_REQ_PROXY_AUTH
370} allow_t;
a97cfa48 371
372enum {
be335c22 373 SNMP_C_VIEW,
374 SNMP_C_USER,
375 SNMP_C_COMMUNITY
a97cfa48 376};
a21fbb54 377
378enum {
379 SWAP_META_VOID, /* should not come up */
380 SWAP_META_KEY_URL, /* key w/ keytype */
381 SWAP_META_KEY_SHA,
382 SWAP_META_KEY_MD5,
383 SWAP_META_URL, /* the url , if not in the header */
384 SWAP_META_STD, /* standard metadata */
385 SWAP_META_HITMETERING, /* reserved for hit metering */
386 SWAP_META_VALID
387};