varnish-cache/include/tbl/vsl_tags_http.h
1
/*-
2
 * Copyright (c) 2012 Varnish Software AS
3
 * All rights reserved.
4
 *
5
 * Author: Poul-Henning Kamp <phk@phk.freebsd.dk>
6
 *
7
 * Redistribution and use in source and binary forms, with or without
8
 * modification, are permitted provided that the following conditions
9
 * are met:
10
 * 1. Redistributions of source code must retain the above copyright
11
 *    notice, this list of conditions and the following disclaimer.
12
 * 2. Redistributions in binary form must reproduce the above copyright
13
 *    notice, this list of conditions and the following disclaimer in the
14
 *    documentation and/or other materials provided with the distribution.
15
 *
16
 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
17
 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19
 * ARE DISCLAIMED.  IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE
20
 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21
 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
22
 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
24
 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25
 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26
 * SUCH DAMAGE.
27
 *
28
 * Define the VSL tags for HTTP protocol messages
29
 *
30
 * NB: The order of this table is not random, DO NOT RESORT.
31
 *
32
 * Specifically FIRST, UNSET and LOST entries must be last, in that order.
33
 *
34
 * See bin/varnishd/cache/cache_http.c::http_VSLH() for the other side.
35
 *
36
 * Arguments:
37
 *      Tag-Name
38
 *      struct http header index
39
 *      1 if this header is used in requests
40
 *      1 if this header is used in responses
41
 *      short description postfix
42
 *      long description (in RST "definition list" format)
43
 *
44
 */
45
46
/*lint -save -e525 -e539 -e835 */
47
48 20
SLTH(Method,    HTTP_HDR_METHOD,        1, 0, "method",
49
        "The HTTP request method used.\n\n"
50
)
51
52 20
SLTH(URL,       HTTP_HDR_URL,           1, 0, "URL",
53
        "The HTTP request URL.\n\n"
54
)
55
56 20
SLTH(Protocol,  HTTP_HDR_PROTO,         1, 1, "protocol",
57
        "The HTTP protocol version information.\n\n"
58
)
59
60 20
SLTH(Status,    HTTP_HDR_STATUS,        0, 1, "status",
61
        "The HTTP status code received.\n\n"
62
)
63
64 20
SLTH(Reason,    HTTP_HDR_REASON,        0, 1, "response",
65
        "The HTTP response string received.\n\n"
66
)
67
68 20
SLTH(Header,    HTTP_HDR_FIRST,         1, 1, "header",
69
        "HTTP header contents.\n\n"
70
        "The format is::\n\n"
71
        "\t%s: %s\n"
72
        "\t|   |\n"
73
        "\t|   +- Header value\n"
74
        "\t+----- Header name\n"
75
        "\n"
76
)
77
78 20
SLTH(Unset,     HTTP_HDR_UNSET,         0, 0, "unset header",
79
        "HTTP header contents.\n\n"
80
        "The format is::\n\n"
81
        "\t%s: %s\n"
82
        "\t|   |\n"
83
        "\t|   +- Header value\n"
84
        "\t+----- Header name\n"
85
        "\n"
86
)
87
88 20
SLTH(Lost,      HTTP_HDR_LOST,          0, 0, "lost header",
89
        ""
90
)
91
92
#undef SLTH
93
94
/*lint -restore */