]> git.ipfire.org Git - thirdparty/squid.git/blame - src/http/RegisteredHeaders.h
HTTP/2: Add method PRI registration
[thirdparty/squid.git] / src / http / RegisteredHeaders.h
CommitLineData
1139d406
AJ
1#ifndef SQUID_HTTP_REGISTEREDHEADERS_H
2#define SQUID_HTTP_REGISTEREDHEADERS_H
3
4/// recognized or "known" header fields; and the RFC which defines them (or not)
17437edf 5/// http://www.iana.org/assignments/message-headers/message-headers.xhtml
1139d406
AJ
6typedef enum {
7 HDR_BAD_HDR = -1,
f73b02a9
AJ
8 HDR_ACCEPT = 0, /**< RFC 7231 */
9 HDR_ACCEPT_CHARSET, /**< RFC 7231 */
10 HDR_ACCEPT_ENCODING, /**< RFC 7231 */
11 /*HDR_ACCEPT_FEATURES,*/ /* RFC 2295 */
12 HDR_ACCEPT_LANGUAGE, /**< RFC 7231 */
13 HDR_ACCEPT_RANGES, /**< RFC 7233 */
14 HDR_AGE, /**< RFC 7234 */
15 HDR_ALLOW, /**< RFC 7231 */
ec9d1de5 16 HDR_ALTERNATE_PROTOCOL, /**< GFE custom header we may have to erase */
f73b02a9
AJ
17 HDR_AUTHENTICATION_INFO, /**< RFC 2617 */
18 HDR_AUTHORIZATION, /**< RFC 7235, 4559 */
19 HDR_CACHE_CONTROL, /**< RFC 7234 */
20 HDR_CONNECTION, /**< RFC 7230 */
21 HDR_CONTENT_BASE, /**< obsoleted RFC 2068 */
22 HDR_CONTENT_DISPOSITION, /**< RFC 2183, 6266 */
23 HDR_CONTENT_ENCODING, /**< RFC 7231 */
24 HDR_CONTENT_LANGUAGE, /**< RFC 7231 */
25 HDR_CONTENT_LENGTH, /**< RFC 7230 */
26 HDR_CONTENT_LOCATION, /**< RFC 7231 */
27 HDR_CONTENT_MD5, /**< deprecated, RFC 2616 */
28 HDR_CONTENT_RANGE, /**< RFC 7233 */
29 HDR_CONTENT_TYPE, /**< RFC 7231 */
30 HDR_COOKIE, /**< RFC 6265 header we may need to erase */
1139d406 31 HDR_COOKIE2, /**< obsolete RFC 2965 header we may need to erase */
f73b02a9 32 HDR_DATE, /**< RFC 7231 */
1139d406
AJ
33 /*HDR_DAV,*/ /* RFC 2518 */
34 /*HDR_DEPTH,*/ /* RFC 2518 */
f73b02a9 35 /*HDR_DERIVED_FROM,*/ /* deprecated RFC 2068 */
1139d406 36 /*HDR_DESTINATION,*/ /* RFC 2518 */
f73b02a9
AJ
37 HDR_ETAG, /**< RFC 7232 */
38 HDR_EXPECT, /**< RFC 7231 */
39 HDR_EXPIRES, /**< RFC 7234 */
1b2ae44e 40 HDR_FORWARDED, /**< RFC 7239 */
f73b02a9
AJ
41 HDR_FROM, /**< RFC 7231 */
42 HDR_HOST, /**< RFC 7230 */
43 HDR_HTTP2_SETTINGS, /**< HTTP/2.0 upgrade header. see draft-ietf-httpbis-http2-13 */
1139d406 44 /*HDR_IF,*/ /* RFC 2518 */
f73b02a9
AJ
45 HDR_IF_MATCH, /**< RFC 7232 */
46 HDR_IF_MODIFIED_SINCE, /**< RFC 7232 */
47 HDR_IF_NONE_MATCH, /**< RFC 7232 */
48 HDR_IF_RANGE, /**< RFC 7233 */
49 HDR_IF_UNMODIFIED_SINCE, /**< RFC 7232 */
50 HDR_KEEP_ALIVE, /**< obsoleted RFC 2068 header we may need to erase */
1139d406 51 HDR_KEY, /**< experimental RFC Draft draft-fielding-http-key-02 */
f73b02a9
AJ
52 HDR_LAST_MODIFIED, /**< RFC 7232 */
53 HDR_LINK, /**< RFC 5988 */
54 HDR_LOCATION, /**< RFC 7231 */
1139d406 55 /*HDR_LOCK_TOKEN,*/ /* RFC 2518 */
f73b02a9
AJ
56 HDR_MAX_FORWARDS, /**< RFC 7231 */
57 HDR_MIME_VERSION, /**< RFC 2045, 7231 */
1139d406
AJ
58 HDR_NEGOTIATE, /**< experimental RFC 2295. Why only this one from 2295? */
59 /*HDR_OVERWRITE,*/ /* RFC 2518 */
60 HDR_ORIGIN, /* CORS Draft specification (see http://www.w3.org/TR/cors/) */
f73b02a9
AJ
61 HDR_PRAGMA, /**< RFC 7234 */
62 HDR_PROXY_AUTHENTICATE, /**< RFC 7235 */
1139d406 63 HDR_PROXY_AUTHENTICATION_INFO, /**< RFC 2617 */
f73b02a9 64 HDR_PROXY_AUTHORIZATION, /**< RFC 7235 */
1139d406
AJ
65 HDR_PROXY_CONNECTION, /**< obsolete Netscape header we may need to erase. */
66 HDR_PROXY_SUPPORT, /**< RFC 4559 */
f73b02a9
AJ
67 HDR_PUBLIC, /**< RFC 2068 */
68 HDR_RANGE, /**< RFC 7233 */
69 HDR_REFERER, /**< RFC 7231 */
1139d406 70 HDR_REQUEST_RANGE, /**< some clients use this, sigh */
f73b02a9
AJ
71 HDR_RETRY_AFTER, /**< RFC 7231 */
72 HDR_SERVER, /**< RFC 7231 */
73 HDR_SET_COOKIE, /**< RFC 6265 header we may need to erase */
74 HDR_SET_COOKIE2, /**< obsoleted RFC 2965 header we may need to erase */
1139d406
AJ
75 /*HDR_STATUS_URI,*/ /* RFC 2518 */
76 /*HDR_TCN,*/ /* experimental RFC 2295 */
f73b02a9 77 HDR_TE, /**< RFC 7230 */
1139d406 78 /*HDR_TIMEOUT,*/ /* RFC 2518 */
1b2ae44e 79 HDR_TITLE, /* obsolete draft suggested header */
f73b02a9
AJ
80 HDR_TRAILER, /**< RFC 7230 */
81 HDR_TRANSFER_ENCODING, /**< RFC 7230 */
1139d406
AJ
82 HDR_TRANSLATE, /**< IIS custom header we may need to erase */
83 HDR_UNLESS_MODIFIED_SINCE, /**< IIS custom header we may need to erase */
f73b02a9
AJ
84 HDR_UPGRADE, /**< RFC 7230 */
85 HDR_USER_AGENT, /**< RFC 7231 */
1139d406 86 /*HDR_VARIANT_VARY,*/ /* experimental RFC 2295 */
f73b02a9
AJ
87 HDR_VARY, /**< RFC 7231 */
88 HDR_VIA, /**< RFC 7230 */
89 HDR_WARNING, /**< RFC 7234 */
90 HDR_WWW_AUTHENTICATE, /**< RFC 7235, 4559 */
1139d406
AJ
91 HDR_X_CACHE, /**< Squid custom header */
92 HDR_X_CACHE_LOOKUP, /**< Squid custom header. temporary hack that became de-facto. TODO remove */
f73b02a9 93 HDR_X_FORWARDED_FOR, /**< obsolete Squid custom header, RFC 7239 */
1139d406
AJ
94 HDR_X_REQUEST_URI, /**< Squid custom header appended if ADD_X_REQUEST_URI is defined */
95 HDR_X_SQUID_ERROR, /**< Squid custom header on generated error responses */
96#if X_ACCELERATOR_VARY
97 HDR_X_ACCELERATOR_VARY, /**< obsolete Squid custom header. */
98#endif
99#if USE_ADAPTATION
100 HDR_X_NEXT_SERVICES, /**< Squid custom ICAP header */
101#endif
102 HDR_SURROGATE_CAPABILITY, /**< Edge Side Includes (ESI) header */
103 HDR_SURROGATE_CONTROL, /**< Edge Side Includes (ESI) header */
104 HDR_FRONT_END_HTTPS, /**< MS Exchange custom header we may have to add */
17437edf
AJ
105 HDR_FTP_COMMAND, /**< Internal header for FTP command */
106 HDR_FTP_ARGUMENTS, /**< Internal header for FTP command arguments */
107 HDR_FTP_PRE, /**< Internal header containing leading FTP control response lines */
108 HDR_FTP_STATUS, /**< Internal header for FTP reply status */
109 HDR_FTP_REASON, /**< Internal header for FTP reply reason */
1139d406
AJ
110 HDR_OTHER, /**< internal tag value for "unknown" headers */
111 HDR_ENUM_END
112} http_hdr_type;
113
114#endif /* SQUID_HTTP_REGISTEREDHEADERS_H */