author | Michael Krelin <hacker@klever.net> | 2005-05-09 11:00:28 (UTC) |
---|---|---|
committer | Michael Krelin <hacker@klever.net> | 2005-05-09 11:00:28 (UTC) |
commit | 43d47575878e4eaf3c8da84bf609fcd0bde595fb (patch) (unidiff) | |
tree | f7ec4d1f0d0a01b43feb5c9b4f414e870036522c /include/kingate/cgi_gateway.h | |
parent | d9578a5ae0ac4e44ff5e3c13d3f39f400f51bcf2 (diff) | |
download | kingate-43d47575878e4eaf3c8da84bf609fcd0bde595fb.zip kingate-43d47575878e4eaf3c8da84bf609fcd0bde595fb.tar.gz kingate-43d47575878e4eaf3c8da84bf609fcd0bde595fb.tar.bz2 |
1. http headers container added
2. preliminary cookies support
3. absolutely useless http_quoted_string and http_quote utility functions added
Diffstat (limited to 'include/kingate/cgi_gateway.h') (more/less context) (ignore whitespace changes)
-rw-r--r-- | include/kingate/cgi_gateway.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/include/kingate/cgi_gateway.h b/include/kingate/cgi_gateway.h index a5c4056..f20d72b 100644 --- a/include/kingate/cgi_gateway.h +++ b/include/kingate/cgi_gateway.h | |||
@@ -1,68 +1,73 @@ | |||
1 | #ifndef __KINGATE_CGI_GATEWAY_H | 1 | #ifndef __KINGATE_CGI_GATEWAY_H |
2 | #define __KINGATE_CGI_GATEWAY_H | 2 | #define __KINGATE_CGI_GATEWAY_H |
3 | 3 | ||
4 | #include <map> | 4 | #include <map> |
5 | #include "kingate/cgi_interface.h" | 5 | #include "kingate/cgi_interface.h" |
6 | #include "kingate/cookies.h" | ||
6 | 7 | ||
7 | #ifndef __deprecated | 8 | #ifndef __deprecated |
8 | #if ( __GNUC__ == 3 && __GNUC_MINOR__ > 0 ) || __GNUC__ > 3 | 9 | #if ( __GNUC__ == 3 && __GNUC_MINOR__ > 0 ) || __GNUC__ > 3 |
9 | #define __deprecated __attribute__((deprecated)) | 10 | #define __deprecated __attribute__((deprecated)) |
10 | #else | 11 | #else |
11 | #define __deprecated | 12 | #define __deprecated |
12 | #endif | 13 | #endif |
13 | #endif | 14 | #endif |
14 | 15 | ||
15 | /** | 16 | /** |
16 | * @file | 17 | * @file |
17 | * @brief the cgi_gateway -- main interface to CGI. | 18 | * @brief the cgi_gateway -- main interface to CGI. |
18 | */ | 19 | */ |
19 | 20 | ||
20 | namespace kingate { | 21 | namespace kingate { |
21 | using namespace std; | 22 | using namespace std; |
22 | 23 | ||
23 | /** | 24 | /** |
24 | * The main class interfacing with the CGI environment. | 25 | * The main class interfacing with the CGI environment. |
25 | */ | 26 | */ |
26 | class cgi_gateway { | 27 | class cgi_gateway { |
27 | public: | 28 | public: |
28 | /** | 29 | /** |
29 | * The interface to CGI environment (e.g. fastcgi). | 30 | * The interface to CGI environment (e.g. fastcgi). |
30 | */ | 31 | */ |
31 | cgi_interface& iface; | 32 | cgi_interface& iface; |
32 | /** | 33 | /** |
33 | * The type describing map holding parameters parsed from query string or input. | 34 | * The type describing map holding parameters parsed from query string or input. |
34 | */ | 35 | */ |
35 | typedef multimap<string,string> params_t; | 36 | typedef multimap<string,string> params_t; |
36 | /** | 37 | /** |
37 | * The GET-passed parameters. | 38 | * The GET-passed parameters. |
38 | */ | 39 | */ |
39 | params_t get; | 40 | params_t get; |
40 | /** | 41 | /** |
41 | * The POST-passed parameters. | 42 | * The POST-passed parameters. |
42 | */ | 43 | */ |
43 | params_t post; | 44 | params_t post; |
44 | /** | 45 | /** |
46 | * Cookies passed. | ||
47 | */ | ||
48 | cookies_t cookies; | ||
49 | /** | ||
45 | * Was the stdin content parsed? | 50 | * Was the stdin content parsed? |
46 | */ | 51 | */ |
47 | bool b_parsed_content; | 52 | bool b_parsed_content; |
48 | 53 | ||
49 | /** | 54 | /** |
50 | * @param ci the interface to use. | 55 | * @param ci the interface to use. |
51 | */ | 56 | */ |
52 | cgi_gateway(cgi_interface& ci); | 57 | cgi_gateway(cgi_interface& ci); |
53 | 58 | ||
54 | /** | 59 | /** |
55 | * Check whether there is an 'environment' meta-variable with specific name | 60 | * Check whether there is an 'environment' meta-variable with specific name |
56 | * passed to CGI. | 61 | * passed to CGI. |
57 | * @param n variable name. | 62 | * @param n variable name. |
58 | * @return true if yes. | 63 | * @return true if yes. |
59 | * @see cgi_interface::has_meta() | 64 | * @see cgi_interface::has_meta() |
60 | * @see get_meta() | 65 | * @see get_meta() |
61 | */ | 66 | */ |
62 | bool has_meta(const string& n) const { return iface.has_meta(n); } | 67 | bool has_meta(const string& n) const { return iface.has_meta(n); } |
63 | /** | 68 | /** |
64 | * Retrieve the 'environment' meta-variable value. | 69 | * Retrieve the 'environment' meta-variable value. |
65 | * @param n variable name. | 70 | * @param n variable name. |
66 | * @return variable contents. | 71 | * @return variable contents. |
67 | * @see exception_notfound | 72 | * @see exception_notfound |
68 | * @see cgi_interface::get_meta() | 73 | * @see cgi_interface::get_meta() |