Squid Web Cache
master
Loading...
Searching...
No Matches
MethodType.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 1996-2025 The Squid Software Foundation and contributors
3
*
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.
7
*/
8
9
#ifndef SQUID_SRC_HTTP_METHODTYPE_H
10
#define SQUID_SRC_HTTP_METHODTYPE_H
11
12
#include "
sbuf/SBuf.h
"
13
14
namespace
Http
15
{
16
17
/*
18
* The IANA registry for HTTP status codes can be found at:
19
* http://www.iana.org/assignments/http-methods/http-methods.xhtml
20
*/
21
typedef
enum
_method_t
{
22
METHOD_NONE
= 0,
23
24
// RFC 2616 (HTTP)
25
METHOD_GET
,
26
METHOD_POST
,
27
METHOD_PUT
,
28
METHOD_HEAD
,
29
METHOD_CONNECT
,
30
METHOD_TRACE
,
31
METHOD_OPTIONS
,
32
METHOD_DELETE
,
33
34
// RFC 2068
35
METHOD_LINK
,
36
METHOD_UNLINK
,
37
38
// RFC 3253
39
METHOD_CHECKOUT
,
40
METHOD_CHECKIN
,
41
METHOD_UNCHECKOUT
,
42
METHOD_MKWORKSPACE
,
43
METHOD_VERSION_CONTROL
,
44
METHOD_REPORT
,
45
METHOD_UPDATE
,
46
METHOD_LABEL
,
47
METHOD_MERGE
,
48
METHOD_BASELINE_CONTROL
,
49
METHOD_MKACTIVITY
,
50
51
#if NO_SPECIAL_HANDLING
52
// RFC 3648
53
METHOD_ORDERPATCH,
54
55
// RFC 3744
56
METHOD_ACL,
57
58
// RFC 4437
59
METHOD_MKREDIRECTREF,
60
METHOD_UPDATEREDIRECTREF,
61
62
// RFC 4791
63
METHOD_MKCALENDAR,
64
#endif
65
66
// RFC 4918 (WebDAV)
67
METHOD_PROPFIND
,
68
METHOD_PROPPATCH
,
69
METHOD_MKCOL
,
70
METHOD_COPY
,
71
METHOD_MOVE
,
72
METHOD_LOCK
,
73
METHOD_UNLOCK
,
74
75
// RFC 5323
76
METHOD_SEARCH
,
77
78
#if NO_SPECIAL_HANDLING
79
// RFC 5789
80
METHOD_PATCH,
81
82
// RFC 5842
83
METHOD_BIND,
84
METHOD_REBIND,
85
METHOD_UNBIND,
86
#endif
87
88
// RFC 9113
89
METHOD_PRI
,
90
91
// Squid extension methods
92
METHOD_PURGE
,
93
METHOD_OTHER
,
94
METHOD_ENUM_END
// MUST be last, (yuck) this is used as an array-initialization index constant!
95
}
MethodType
;
96
97
extern
const
SBuf
MethodType_sb
[];
98
99
inline
const
SBuf
&
100
MethodStr
(
const
MethodType
m)
101
{
102
return
MethodType_sb
[m];
103
}
104
105
};
// namespace Http
106
107
#endif
/* SQUID_SRC_HTTP_METHODTYPE_H */
108
SBuf.h
SBuf
Definition
SBuf.h:94
Http
Definition
forward.h:18
Http::MethodType
enum Http::_method_t MethodType
Http::MethodType_sb
const SBuf MethodType_sb[]
Definition
stub_libhttp.cc:57
Http::MethodStr
const SBuf & MethodStr(const MethodType m)
Definition
MethodType.h:100
Http::_method_t
_method_t
Definition
MethodType.h:21
Http::METHOD_TRACE
@ METHOD_TRACE
Definition
MethodType.h:30
Http::METHOD_MKWORKSPACE
@ METHOD_MKWORKSPACE
Definition
MethodType.h:42
Http::METHOD_NONE
@ METHOD_NONE
Definition
MethodType.h:22
Http::METHOD_REPORT
@ METHOD_REPORT
Definition
MethodType.h:44
Http::METHOD_MERGE
@ METHOD_MERGE
Definition
MethodType.h:47
Http::METHOD_LABEL
@ METHOD_LABEL
Definition
MethodType.h:46
Http::METHOD_OTHER
@ METHOD_OTHER
Definition
MethodType.h:93
Http::METHOD_UPDATE
@ METHOD_UPDATE
Definition
MethodType.h:45
Http::METHOD_MOVE
@ METHOD_MOVE
Definition
MethodType.h:71
Http::METHOD_SEARCH
@ METHOD_SEARCH
Definition
MethodType.h:76
Http::METHOD_CHECKOUT
@ METHOD_CHECKOUT
Definition
MethodType.h:39
Http::METHOD_LINK
@ METHOD_LINK
Definition
MethodType.h:35
Http::METHOD_PUT
@ METHOD_PUT
Definition
MethodType.h:27
Http::METHOD_MKCOL
@ METHOD_MKCOL
Definition
MethodType.h:69
Http::METHOD_UNLOCK
@ METHOD_UNLOCK
Definition
MethodType.h:73
Http::METHOD_POST
@ METHOD_POST
Definition
MethodType.h:26
Http::METHOD_CHECKIN
@ METHOD_CHECKIN
Definition
MethodType.h:40
Http::METHOD_OPTIONS
@ METHOD_OPTIONS
Definition
MethodType.h:31
Http::METHOD_UNLINK
@ METHOD_UNLINK
Definition
MethodType.h:36
Http::METHOD_PRI
@ METHOD_PRI
Definition
MethodType.h:89
Http::METHOD_CONNECT
@ METHOD_CONNECT
Definition
MethodType.h:29
Http::METHOD_PROPPATCH
@ METHOD_PROPPATCH
Definition
MethodType.h:68
Http::METHOD_MKACTIVITY
@ METHOD_MKACTIVITY
Definition
MethodType.h:49
Http::METHOD_VERSION_CONTROL
@ METHOD_VERSION_CONTROL
Definition
MethodType.h:43
Http::METHOD_ENUM_END
@ METHOD_ENUM_END
Definition
MethodType.h:94
Http::METHOD_GET
@ METHOD_GET
Definition
MethodType.h:25
Http::METHOD_PURGE
@ METHOD_PURGE
Definition
MethodType.h:92
Http::METHOD_COPY
@ METHOD_COPY
Definition
MethodType.h:70
Http::METHOD_LOCK
@ METHOD_LOCK
Definition
MethodType.h:72
Http::METHOD_DELETE
@ METHOD_DELETE
Definition
MethodType.h:32
Http::METHOD_HEAD
@ METHOD_HEAD
Definition
MethodType.h:28
Http::METHOD_PROPFIND
@ METHOD_PROPFIND
Definition
MethodType.h:67
Http::METHOD_BASELINE_CONTROL
@ METHOD_BASELINE_CONTROL
Definition
MethodType.h:48
Http::METHOD_UNCHECKOUT
@ METHOD_UNCHECKOUT
Definition
MethodType.h:41
squid
src
http
MethodType.h
Generated by
1.9.8