diff options
author | Martin Willi <martin@revosec.ch> | 2010-04-07 15:36:22 +0200 |
---|---|---|
committer | Martin Willi <martin@revosec.ch> | 2010-04-07 15:36:22 +0200 |
commit | 54e354f2d6d110079facfa19ce63fcc82a6d2b0d (patch) | |
tree | 8866e5eb6fad4cbef098bdfd4ae3d4da56fd9995 /src/libfast/request.c | |
parent | f7c32feec0466334adc4628035bd47048791625a (diff) | |
download | strongswan-54e354f2d6d110079facfa19ce63fcc82a6d2b0d.tar.bz2 strongswan-54e354f2d6d110079facfa19ce63fcc82a6d2b0d.tar.xz |
Remove to_referer() method, as it fails if no referer was given
Diffstat (limited to 'src/libfast/request.c')
-rw-r--r-- | src/libfast/request.c | 34 |
1 files changed, 10 insertions, 24 deletions
diff --git a/src/libfast/request.c b/src/libfast/request.c index 0f743e3b9..2cbdd2ef8 100644 --- a/src/libfast/request.c +++ b/src/libfast/request.c @@ -204,14 +204,20 @@ static char* get_query_data(private_request_t *this, char *name) } /** + * Implementation of request_t.get_base. + */ +static char* get_base(private_request_t *this) +{ + return FCGX_GetParam("SCRIPT_NAME", this->req.envp); +} + +/** * Implementation of request_t.add_cookie. */ static void add_cookie(private_request_t *this, char *name, char *value) { thread_this->set(thread_this, this); - cgi_cookie_set (this->cgi, name, value, - FCGX_GetParam("SCRIPT_NAME", this->req.envp), - NULL, NULL, 0, 0); + cgi_cookie_set (this->cgi, name, value, get_base(this), NULL, NULL, 0, 0); } /** @@ -222,8 +228,7 @@ static void redirect(private_request_t *this, char *fmt, ...) va_list args; FCGX_FPrintF(this->req.out, "Status: 303 See Other\n"); - FCGX_FPrintF(this->req.out, "Location: %s%s", - FCGX_GetParam("SCRIPT_NAME", this->req.envp), + FCGX_FPrintF(this->req.out, "Location: %s%s", get_base(this), *fmt == '/' ? "" : "/"); va_start(args, fmt); FCGX_VFPrintF(this->req.out, fmt, args); @@ -240,24 +245,6 @@ static char* get_referer(private_request_t *this) } /** - * Implementation of request_t.to_referer. - */ -static void to_referer(private_request_t *this) -{ - FCGX_FPrintF(this->req.out, "Status: 303 See Other\n"); - FCGX_FPrintF(this->req.out, "Location: %s\n\n", - FCGX_GetParam("HTTP_REFERER", this->req.envp)); -} - -/** - * Implementation of request_t.get_base. - */ -static char* get_base(private_request_t *this) -{ - return FCGX_GetParam("SCRIPT_NAME", this->req.envp); -} - -/** * Implementation of request_t.session_closed. */ static bool session_closed(private_request_t *this) @@ -405,7 +392,6 @@ request_t *request_create(int fd, bool debug) this->public.close_session = (void(*)(request_t*))close_session; this->public.redirect = (void(*)(request_t*, char *fmt,...))redirect; this->public.get_referer = (char*(*)(request_t*))get_referer; - this->public.to_referer = (void(*)(request_t*))to_referer; this->public.render = (void(*)(request_t*,char*))render; this->public.streamf = (int(*)(request_t*, char *format, ...))streamf; this->public.serve = (void(*)(request_t*,char*,chunk_t))serve; |