1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* ***** BEGIN LICENSE BLOCK *****
3 * Version: MPL 1.1/GPL 2.0/LGPL 2.1
5 * The contents of this file are subject to the Mozilla Public License Version
6 * 1.1 (the "License"); you may not use this file except in compliance with
7 * the License. You may obtain a copy of the License at
8 * http://www.mozilla.org/MPL/
10 * Software distributed under the License is distributed on an "AS IS" basis,
11 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
12 * for the specific language governing rights and limitations under the
15 * The Original Code is mozilla.org code.
17 * The Initial Developer of the Original Code is
18 * Netscape Communications Corporation.
19 * Portions created by the Initial Developer are Copyright (C) 1999
20 * the Initial Developer. All Rights Reserved.
23 * Gagan Saksena <gagan@netscape.com> (original author)
25 * Alternatively, the contents of this file may be used under the terms of
26 * either the GNU General Public License Version 2 or later (the "GPL"), or
27 * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
28 * in which case the provisions of the GPL or the LGPL are applicable instead
29 * of those above. If you wish to allow use of your version of this file only
30 * under the terms of either the GPL or the LGPL, and not to allow others to
31 * use your version of this file under the terms of the MPL, indicate your
32 * decision by deleting the provisions above and replace them with the notice
33 * and other provisions required by the GPL or the LGPL. If you do not delete
34 * the provisions above, a recipient may use your version of this file under
35 * the terms of any one of the MPL, the GPL or the LGPL.
37 * ***** END LICENSE BLOCK ***** */
40 This file contains the list of all HTTP atoms
41 See nsHttp.h for access to the atoms.
43 It is designed to be used as inline input to nsHttp.cpp *only*
44 through the magic of C preprocessing.
46 All entries must be enclosed in the macro HTTP_ATOM which will have cruel
47 and unusual things done to it.
49 The first argument to HTTP_ATOM is the C++ name of the atom.
50 The second argument to HTTP_ATOM is the string value of the atom.
53 HTTP_ATOM(Accept
, "Accept")
54 HTTP_ATOM(Accept_Charset
, "Accept-Charset")
55 HTTP_ATOM(Accept_Encoding
, "Accept-Encoding")
56 HTTP_ATOM(Accept_Language
, "Accept-Language")
57 HTTP_ATOM(Accept_Ranges
, "Accept-Ranges")
59 HTTP_ATOM(Allow
, "Allow")
60 HTTP_ATOM(Authentication
, "Authentication")
61 HTTP_ATOM(Authorization
, "Authorization")
62 HTTP_ATOM(Cache_Control
, "Cache-Control")
63 HTTP_ATOM(Connection
, "Connection")
64 HTTP_ATOM(Content_Base
, "Content-Base")
65 HTTP_ATOM(Content_Encoding
, "Content-Encoding")
66 HTTP_ATOM(Content_Language
, "Content-Language")
67 HTTP_ATOM(Content_Length
, "Content-Length")
68 HTTP_ATOM(Content_Location
, "Content-Location")
69 HTTP_ATOM(Content_MD5
, "Content-MD5")
70 HTTP_ATOM(Content_Range
, "Content-Range")
71 HTTP_ATOM(Content_Transfer_Encoding
, "Content-Transfer-Encoding")
72 HTTP_ATOM(Content_Type
, "Content-Type")
73 HTTP_ATOM(Cookie
, "Cookie")
74 HTTP_ATOM(Date
, "Date")
76 HTTP_ATOM(Depth
, "Depth")
77 HTTP_ATOM(Derived_From
, "Derived-From")
78 HTTP_ATOM(Destination
, "Destination")
79 HTTP_ATOM(ETag
, "Etag")
80 HTTP_ATOM(Expect
, "Expect")
81 HTTP_ATOM(Expires
, "Expires")
82 HTTP_ATOM(Forwarded
, "Forwarded")
83 HTTP_ATOM(From
, "From")
84 HTTP_ATOM(Host
, "Host")
86 HTTP_ATOM(If_Match
, "If-Match")
87 HTTP_ATOM(If_Match_Any
, "If-Match-Any")
88 HTTP_ATOM(If_Modified_Since
, "If-Modified-Since")
89 HTTP_ATOM(If_None_Match
, "If-None-Match")
90 HTTP_ATOM(If_None_Match_Any
, "If-None-Match-Any")
91 HTTP_ATOM(If_Range
, "If-Range")
92 HTTP_ATOM(If_Unmodified_Since
, "If-Unmodified-Since")
93 HTTP_ATOM(Keep_Alive
, "Keep-Alive")
94 HTTP_ATOM(Last_Modified
, "Last-Modified")
95 HTTP_ATOM(Lock_Token
, "Lock-Token")
96 HTTP_ATOM(Link
, "Link")
97 HTTP_ATOM(Location
, "Location")
98 HTTP_ATOM(Max_Forwards
, "Max-Forwards")
99 HTTP_ATOM(Message_Id
, "Message-Id")
100 HTTP_ATOM(Mime
, "Mime")
101 HTTP_ATOM(Overwrite
, "Overwrite")
102 HTTP_ATOM(Pragma
, "Pragma")
103 HTTP_ATOM(Proxy_Authenticate
, "Proxy-Authenticate")
104 HTTP_ATOM(Proxy_Authorization
, "Proxy-Authorization")
105 HTTP_ATOM(Proxy_Connection
, "Proxy-Connection")
106 HTTP_ATOM(Range
, "Range")
107 HTTP_ATOM(Referer
, "Referer")
108 HTTP_ATOM(Retry_After
, "Retry-After")
109 HTTP_ATOM(Server
, "Server")
110 HTTP_ATOM(Set_Cookie
, "Set-Cookie")
111 HTTP_ATOM(Set_Cookie2
, "Set-Cookie2")
112 HTTP_ATOM(Status_URI
, "Status-URI")
114 HTTP_ATOM(Title
, "Title")
115 HTTP_ATOM(Timeout
, "Timeout")
116 HTTP_ATOM(Trailer
, "Trailer")
117 HTTP_ATOM(Transfer_Encoding
, "Transfer-Encoding")
118 HTTP_ATOM(URI
, "URI")
119 HTTP_ATOM(Upgrade
, "Upgrade")
120 HTTP_ATOM(User_Agent
, "User-Agent")
121 HTTP_ATOM(Vary
, "Vary")
122 HTTP_ATOM(Version
, "Version")
123 HTTP_ATOM(WWW_Authenticate
, "WWW-Authenticate")
124 HTTP_ATOM(Warning
, "Warning")
126 // methods are atoms too.
128 // note: an uppercase DELETE causes compilation problems under msvc6, so we'll
129 // just keep the methods mixedcase even though they're normally written all
130 // uppercase -- darin
132 HTTP_ATOM(Connect
, "CONNECT")
133 HTTP_ATOM(Copy
, "COPY")
134 HTTP_ATOM(Delete
, "DELETE")
135 HTTP_ATOM(Get
, "GET")
136 HTTP_ATOM(Head
, "HEAD")
137 HTTP_ATOM(Index
, "INDEX")
138 HTTP_ATOM(Lock
, "LOCK")
139 HTTP_ATOM(M_Post
, "M-POST")
140 HTTP_ATOM(Mkcol
, "MKCOL")
141 HTTP_ATOM(Move
, "MOVE")
142 HTTP_ATOM(Options
, "OPTIONS")
143 HTTP_ATOM(Post
, "POST")
144 HTTP_ATOM(Propfind
, "PROPFIND")
145 HTTP_ATOM(Proppatch
, "PROPPATCH")
146 HTTP_ATOM(Put
, "PUT")
147 HTTP_ATOM(Trace
, "TRACE")
148 HTTP_ATOM(Unlock
, "UNLOCK")