]>
Commit | Line | Data |
---|---|---|
9cef6668 | 1 | /* |
4ac4a490 | 2 | * Copyright (C) 1996-2017 The Squid Software Foundation and contributors |
9cef6668 | 3 | * |
bbc27441 AJ |
4 | * Squid software is distributed under GPLv2+ license and includes |
5 | * contributions from numerous individuals and organizations. | |
6 | * Please see the COPYING and CONTRIBUTORS files for details. | |
9cef6668 | 7 | */ |
f892c2bf | 8 | |
b5638623 | 9 | #ifndef SQUID_ENUMS_H |
10 | #define SQUID_ENUMS_H | |
11 | ||
528b2c61 | 12 | enum fd_type { |
f892c2bf | 13 | FD_NONE, |
14 | FD_LOG, | |
15 | FD_FILE, | |
16 | FD_SOCKET, | |
17 | FD_PIPE, | |
1bac0258 | 18 | FD_MSGHDR, |
f892c2bf | 19 | FD_UNKNOWN |
9bea1d5b | 20 | }; |
f892c2bf | 21 | |
9bea1d5b | 22 | enum { |
f892c2bf | 23 | FD_READ, |
24 | FD_WRITE | |
9bea1d5b | 25 | }; |
f892c2bf | 26 | |
9bea1d5b | 27 | typedef enum { |
f892c2bf | 28 | PEER_NONE, |
29 | PEER_SIBLING, | |
30 | PEER_PARENT, | |
31 | PEER_MULTICAST | |
9bea1d5b | 32 | } peer_t; |
f892c2bf | 33 | |
e6ccf245 | 34 | typedef enum _mem_status_t { |
f892c2bf | 35 | NOT_IN_MEMORY, |
f892c2bf | 36 | IN_MEMORY |
e6ccf245 | 37 | } mem_status_t; |
f892c2bf | 38 | |
d1398b75 | 39 | typedef enum { |
f892c2bf | 40 | PING_NONE, |
41 | PING_WAITING, | |
f892c2bf | 42 | PING_DONE |
d1398b75 | 43 | } ping_status_t; |
f892c2bf | 44 | |
d1398b75 | 45 | typedef enum { |
f892c2bf | 46 | STORE_OK, |
b7fe0ab0 | 47 | STORE_PENDING |
d1398b75 | 48 | } store_status_t; |
f892c2bf | 49 | |
d1398b75 | 50 | typedef enum { |
8350fe9b | 51 | SWAPOUT_NONE, |
8350fe9b | 52 | SWAPOUT_WRITING, |
53 | SWAPOUT_DONE | |
d1398b75 | 54 | } swap_status_t; |
f892c2bf | 55 | |
9bea1d5b | 56 | typedef enum { |
5d86029a | 57 | STORE_NON_CLIENT, |
58 | STORE_MEM_CLIENT, | |
59 | STORE_DISK_CLIENT | |
9bea1d5b | 60 | } store_client_t; |
74ac2ecb | 61 | |
d46a87a8 | 62 | /* |
63 | * These are for StoreEntry->flag, which is defined as a SHORT | |
64 | * | |
65 | * NOTE: These flags are written to swap.state, so think very carefully | |
66 | * about deleting or re-assigning! | |
67 | */ | |
9bea1d5b | 68 | enum { |
d46a87a8 | 69 | ENTRY_SPECIAL, |
fa83b766 | 70 | ENTRY_REVALIDATE_ALWAYS, |
d46a87a8 | 71 | DELAY_SENDING, |
72 | RELEASE_REQUEST, | |
73 | REFRESH_REQUEST, | |
fa83b766 | 74 | ENTRY_REVALIDATE_STALE, |
d46a87a8 | 75 | ENTRY_DISPATCHED, |
76 | KEY_PRIVATE, | |
d46a87a8 | 77 | ENTRY_FWD_HDR_WAIT, |
d46a87a8 | 78 | ENTRY_NEGCACHED, |
79 | ENTRY_VALIDATED, | |
b7fe0ab0 | 80 | ENTRY_BAD_LENGTH, |
e95eff47 | 81 | ENTRY_ABORTED |
9bea1d5b | 82 | }; |
79a15e0a | 83 | |
edce4d98 | 84 | /* |
85 | * These are for client Streams. Each node in the stream can be queried for | |
86 | * its status | |
87 | */ | |
88 | typedef enum { | |
f53969cc SM |
89 | STREAM_NONE, /* No particular status */ |
90 | STREAM_COMPLETE, /* All data has been flushed, no more reads allowed */ | |
b0dd28ba | 91 | /* an unpredicted end has occured, no more |
26ac0430 | 92 | * reads occured, but no need to tell |
b0dd28ba | 93 | * downstream that an error occured |
94 | */ | |
95 | STREAM_UNPLANNED_COMPLETE, | |
96 | /* An error has occured in this node or an above one, | |
97 | * and the node is not generating an error body / it's | |
98 | * midstream | |
99 | */ | |
100 | STREAM_FAILED | |
edce4d98 | 101 | } clientStream_status_t; |
102 | ||
94439e4e | 103 | /* stateful helper callback response codes */ |
9bea1d5b | 104 | typedef enum { |
94439e4e | 105 | S_HELPER_UNKNOWN, |
106 | S_HELPER_RESERVE, | |
d20ce97d | 107 | S_HELPER_RELEASE |
9bea1d5b | 108 | } stateful_helper_callback_t; |
94439e4e | 109 | |
3f6c0fb2 | 110 | #if SQUID_SNMP |
9bea1d5b | 111 | enum { |
be335c22 | 112 | SNMP_C_VIEW, |
113 | SNMP_C_USER, | |
114 | SNMP_C_COMMUNITY | |
9bea1d5b | 115 | }; |
fafe8849 | 116 | #endif /* SQUID_SNMP */ |
3f6c0fb2 | 117 | |
9bea1d5b | 118 | enum { |
5830cdb3 | 119 | STORE_LOG_CREATE, |
120 | STORE_LOG_SWAPIN, | |
121 | STORE_LOG_SWAPOUT, | |
284ac611 | 122 | STORE_LOG_RELEASE, |
123 | STORE_LOG_SWAPOUTFAIL | |
9bea1d5b | 124 | }; |
5830cdb3 | 125 | |
adba4a64 | 126 | /* parse state of HttpReply or HttpRequest */ |
9bea1d5b | 127 | typedef enum { |
2ac76861 | 128 | psReadyToParseStartLine = 0, |
129 | psReadyToParseHeaders, | |
130 | psParsed, | |
131 | psError | |
9bea1d5b | 132 | } HttpMsgParseState; |
b87b92fb | 133 | |
9bea1d5b | 134 | enum { |
04a28d46 | 135 | PCTILE_HTTP, |
136 | PCTILE_ICP_QUERY, | |
137 | PCTILE_DNS, | |
138 | PCTILE_HIT, | |
139 | PCTILE_MISS, | |
140 | PCTILE_NM, | |
141 | PCTILE_NH, | |
142 | PCTILE_ICP_REPLY | |
9bea1d5b | 143 | }; |
071a3ae7 | 144 | |
9bea1d5b | 145 | enum { |
071a3ae7 | 146 | SENT, |
147 | RECV | |
9bea1d5b | 148 | }; |
de2a0782 | 149 | |
150 | /* | |
151 | * These are field indicators for raw cache-cache netdb transfers | |
152 | */ | |
9bea1d5b | 153 | enum { |
58a6c186 | 154 | NETDB_EX_NONE, |
155 | NETDB_EX_NETWORK, | |
156 | NETDB_EX_RTT, | |
157 | NETDB_EX_HOPS | |
9bea1d5b | 158 | }; |
28c60158 | 159 | |
f66a9ef4 | 160 | /* |
161 | * Return codes from checkVary(request) | |
162 | */ | |
9bea1d5b | 163 | enum { |
f66a9ef4 | 164 | VARY_NONE, |
165 | VARY_MATCH, | |
166 | VARY_OTHER, | |
167 | VARY_CANCEL | |
9bea1d5b | 168 | }; |
b5638623 | 169 | |
add2192d | 170 | /* |
171 | * Store digest state enum | |
172 | */ | |
173 | typedef enum { | |
76cdc28d | 174 | DIGEST_READ_NONE, |
175 | DIGEST_READ_REPLY, | |
176 | DIGEST_READ_HEADERS, | |
177 | DIGEST_READ_CBLOCK, | |
178 | DIGEST_READ_MASK, | |
179 | DIGEST_READ_DONE | |
add2192d | 180 | } digest_read_state_t; |
181 | ||
be20dac7 | 182 | /* CygWin & Windows NT Port */ |
be266cb2 | 183 | #if _SQUID_WINDOWS_ |
be20dac7 | 184 | /* |
185 | * Supported Windows OS types codes | |
186 | */ | |
187 | enum { | |
188 | _WIN_OS_UNKNOWN, | |
189 | _WIN_OS_WIN32S, | |
190 | _WIN_OS_WIN95, | |
191 | _WIN_OS_WIN98, | |
192 | _WIN_OS_WINME, | |
193 | _WIN_OS_WINNT, | |
194 | _WIN_OS_WIN2K, | |
6b1846cf | 195 | _WIN_OS_WINXP, |
28170269 | 196 | _WIN_OS_WINNET, |
4f5320f2 GS |
197 | _WIN_OS_WINLON, |
198 | _WIN_OS_WIN7 | |
be20dac7 | 199 | }; |
fafe8849 | 200 | #endif /* _SQUID_WINDOWS_ */ |
7684c4b1 | 201 | |
5529ca8a | 202 | enum { |
203 | DISABLE_PMTU_OFF, | |
204 | DISABLE_PMTU_ALWAYS, | |
205 | DISABLE_PMTU_TRANSPARENT | |
206 | }; | |
207 | ||
90bd689c BR |
208 | #if USE_HTCP |
209 | /* | |
592b8687 | 210 | * TODO: This should be in htcp.h |
90bd689c BR |
211 | */ |
212 | typedef enum { | |
213 | HTCP_CLR_PURGE, | |
2227c2b3 | 214 | HTCP_CLR_INVALIDATION |
90bd689c | 215 | } htcp_clr_reason; |
fafe8849 | 216 | #endif /* USE_HTCP */ |
90bd689c | 217 | |
b5638623 | 218 | #endif /* SQUID_ENUMS_H */ |
f53969cc | 219 |