From: Fabian Keil
Date: Wed, 7 Feb 2007 10:45:22 +0000 (+0000)
Subject: - Save the reason for generating http_responses.
X-Git-Tag: v_3_0_7~346
X-Git-Url: http://www.privoxy.org/gitweb/@default-cgi@edit-actions-add-url-form?a=commitdiff_plain;h=048db68f0449f4b4a10eb56ad6e07e55fb475b2c;p=privoxy.git
- Save the reason for generating http_responses.
- Fix --disable-toggle (again).
- Use TBL birthday hack for 403 responses as well.
- Uglify the @menu@ again to fix JavaScript
errors on the "blocked" template.
- Escape an ampersand in cgi_error_unknown().
---
diff --git a/cgi.c b/cgi.c
index e377ad29..7816c37a 100644
--- a/cgi.c
+++ b/cgi.c
@@ -1,4 +1,4 @@
-const char cgi_rcs[] = "$Id: cgi.c,v 1.91 2007/01/27 13:09:16 fabiankeil Exp $";
+const char cgi_rcs[] = "$Id: cgi.c,v 1.92 2007/01/28 13:41:17 fabiankeil Exp $";
/*********************************************************************
*
* File : $Source: /cvsroot/ijbswa/current/cgi.c,v $
@@ -38,6 +38,10 @@ const char cgi_rcs[] = "$Id: cgi.c,v 1.91 2007/01/27 13:09:16 fabiankeil Exp $";
*
* Revisions :
* $Log: cgi.c,v $
+ * Revision 1.92 2007/01/28 13:41:17 fabiankeil
+ * - Add HEAD support to finish_http_response.
+ * - Add error favicon to internal HTML error messages.
+ *
* Revision 1.91 2007/01/27 13:09:16 fabiankeil
* Add new config option "templdir" to
* change the templates directory.
@@ -1017,10 +1021,6 @@ static struct http_response *dispatch_known_cgi(struct client_state * csp,
return cgi_error_memory();
}
- log_error(LOG_LEVEL_GPC, "%s%s cgi call", csp->http->hostport, csp->http->path);
- log_error(LOG_LEVEL_CLF, "%s - - [%T] \"%s\" 200 3",
- csp->ip_addr_str, csp->http->cmd);
-
/*
* Find and start the right CGI function
*/
@@ -1070,6 +1070,7 @@ static struct http_response *dispatch_known_cgi(struct client_state * csp,
if (!err)
{
/* It worked */
+ rsp->reason = RSP_REASON_CGI_CALL;
return finish_http_response(csp, rsp);
}
else
@@ -1357,11 +1358,13 @@ struct http_response *error_response(struct client_state *csp,
return cgi_error_memory();
}
+#ifdef FEATURE_FORCE_LOAD
if (csp->flags & CSP_FLAG_FORCED)
{
path = strdup(FORCE_PREFIX);
}
else
+#endif /* def FEATURE_FORCE_LOAD */
{
path = strdup("");
}
@@ -1399,6 +1402,7 @@ struct http_response *error_response(struct client_state *csp,
free_http_response(rsp);
return cgi_error_memory();
}
+ rsp->reason = RSP_REASON_NO_SUCH_DOMAIN;
}
else if (!strcmp(templatename, "forwarding-failed"))
{
@@ -1439,6 +1443,7 @@ struct http_response *error_response(struct client_state *csp,
free_http_response(rsp);
return cgi_error_memory();
}
+ rsp->reason = RSP_REASON_FORWARDING_FAILED;
}
else if (!strcmp(templatename, "connect-failed"))
{
@@ -1449,6 +1454,7 @@ struct http_response *error_response(struct client_state *csp,
free_http_response(rsp);
return cgi_error_memory();
}
+ rsp->reason = RSP_REASON_CONNECT_FAILED;
}
err = template_fill_for_cgi(csp, templatename, exports, rsp);
@@ -1541,6 +1547,7 @@ void cgi_init_error_messages(void)
strlen(cgi_error_memory_response->head);
cgi_error_memory_response->content_length =
strlen(cgi_error_memory_response->body);
+ cgi_error_memory_response->reason = RSP_REASON_OUT_OF_MEMORY;
}
@@ -1690,7 +1697,7 @@ jb_err cgi_error_unknown(struct client_state *csp,
static const char body_suffix[] =
"
\r\n"
"Please "
- ""
+ ""
"file a bug report.
\r\n"
"