X-Git-Url: http://www.privoxy.org/gitweb/?p=privoxy.git;a=blobdiff_plain;f=cgi.c;h=ad4768d394b68210a8ddbe487267c3d08db5214f;hp=0cc7fe49669eb3d0a1c16ffae4194c5a43d74037;hb=6f113c5cca4a173f76c1000a093fc4a8618e3668;hpb=40e7fbc3038c7c66a5ed20e07eb9f1a591e070ff diff --git a/cgi.c b/cgi.c index 0cc7fe49..ad4768d3 100644 --- a/cgi.c +++ b/cgi.c @@ -1,4 +1,4 @@ -const char cgi_rcs[] = "$Id: cgi.c,v 1.64 2002/04/24 02:17:21 oes Exp $"; +const char cgi_rcs[] = "$Id: cgi.c,v 1.68 2002/05/12 21:36:29 jongfoster Exp $"; /********************************************************************* * * File : $Source: /cvsroot/ijbswa/current/cgi.c,v $ @@ -38,6 +38,20 @@ const char cgi_rcs[] = "$Id: cgi.c,v 1.64 2002/04/24 02:17:21 oes Exp $"; * * Revisions : * $Log: cgi.c,v $ + * Revision 1.68 2002/05/12 21:36:29 jongfoster + * Correcting function comments + * + * Revision 1.67 2002/04/30 12:02:07 oes + * Nit: updated a comment + * + * Revision 1.66 2002/04/26 18:32:57 jongfoster + * Fixing a memory leak on error + * + * Revision 1.65 2002/04/26 12:53:51 oes + * - New function add_help_link + * - default_exports now exports links to the user manual + * and a prefix for links into the config chapter + * * Revision 1.64 2002/04/24 02:17:21 oes * - Better descriptions for CGIs * - Hide edit-actions, more shortcuts @@ -574,7 +588,7 @@ static struct map *parse_cgi_parameters(char *argstring); * Description : Checks if a request URL has either the magical * hostname CGI_SITE_1_HOST (usually http://p.p/) or * matches CGI_SITE_2_HOST CGI_SITE_2_PATH (usually - * http://ijbswa.sourceforge.net/config). If so, it passes + * http://config.privoxy.org/). If so, it passes * the (rest of the) path onto dispatch_known_cgi, which * calls the relevant CGI handler function. * @@ -746,7 +760,7 @@ static struct http_response *dispatch_known_cgi(struct client_state * csp, * pairs and store them in a struct map list. * * Parameters : - * 1 : string = string to be parsed. Will be trashed. + * 1 : argstring = string to be parsed. Will be trashed. * * Returns : pointer to param list, or NULL if out of memory. * @@ -1097,14 +1111,10 @@ void cgi_init_error_messages(void) * Description : Called if a CGI function runs out of memory. * Returns a statically-allocated error response. * - * Parameters : - * 1 : csp = Current client state (buffers, headers, etc...) - * 2 : rsp = http_response data structure for output - * 3 : template_name = Name of template that could not - * be loaded. + * Parameters : N/A * - * Returns : JB_ERR_OK on success - * JB_ERR_MEMORY on out-of-memory error. + * Returns : http_response data structure for output. This is + * statically allocated, for obvious reasons. * *********************************************************************/ struct http_response *cgi_error_memory(void) @@ -1234,28 +1244,32 @@ jb_err cgi_error_bad_param(struct client_state *csp, * * Description : Produce a copy of the string given as item, * embedded in an HTML link to its corresponding - * section (item name in uppercase) in the configuration + * section (item name in uppercase) in the actions * chapter of the user manual, (whose URL is given in * the config and defaults to our web site). * + * FIXME: I currently only work for actions, and would + * like to be generalized for other topics. + * * Parameters : * 1 : item = item (will NOT be free()d.) * It is assumed to be HTML-safe. + * 2 : config = The current configuration. * * Returns : String with item embedded in link, or NULL on * out-of-memory * *********************************************************************/ -char *add_help_link(const char *item, +char *add_help_link(const char *item, struct configuration_spec *config) { - char *result = strdup(""); + char *result; if (!item) return NULL; - - string_append(&result, "usermanual); - string_append(&result, HELP_LINK_PREFIX); + string_append(&result, ACTIONS_HELP_PREFIX); string_join (&result, string_toupper(item)); string_append(&result, "\">"); string_append(&result, item); @@ -1497,7 +1511,7 @@ void free_http_response(struct http_response *rsp) * 1 : csp = Current client state (buffers, headers, etc...) * 2 : template_ptr = Destination for pointer to loaded * template text. - * 3 : template = name of the HTML template to be used + * 3 : templatename = name of the HTML template to be used * 4 : recursive = Flag set if this function calls itself * following an #include statament * @@ -1744,6 +1758,7 @@ jb_err template_fill(char **template_ptr, const struct map *exports) * 2 : templatename = name of the HTML template to be used * 3 : exports = map with fill in symbol -> name pairs. * Will be freed by this function. + * 4 : rsp = Response structure to fill in. * * Returns : JB_ERR_OK on success * JB_ERR_MEMORY on out-of-memory error @@ -1816,7 +1831,7 @@ struct map *default_exports(const struct client_state *csp, const char *caller) if (!err) err = map(exports, "menu", 1, make_menu(caller), 0); if (!err) err = map(exports, "code-status", 1, CODE_STATUS, 1); if (!err) err = map(exports, "user-manual", 1, csp->config->usermanual ,1); - if (!err) err = map(exports, "helplink", 1, HELP_LINK_PREFIX ,1); + if (!err) err = map(exports, "actions-help-prefix", 1, ACTIONS_HELP_PREFIX ,1); if (!err) err = map_conditional(exports, "enabled-display", g_bToggleIJB); snprintf(buf, 20, "%d", csp->config->hport);