Main Page   Alphabetical List   Data Structures   File List   Data Fields   Globals  

loadcfg.c File Reference

Loads settings from the configuration file into global variables. More...


Defines

#define ijb_isupper(__X)   isupper((int)(unsigned char)(__X))
#define ijb_tolower(__X)   tolower((int)(unsigned char)(__X))
#define hash_actions_file   1196306641ul
#define hash_admin_address   4112573064ul
#define hash_buffer_limit   1881726070ul
#define hash_confdir   1978389ul
#define hash_debug   78263ul
#define hash_deny_access   1227333715ul
#define hash_enable_edit_actions   2517097536ul
#define hash_enable_remote_toggle   2979744683ul
#define hash_filterfile   250887266ul
#define hash_forward   2029845ul
#define hash_forward_socks4   3963965521ul
#define hash_forward_socks4a   2639958518ul
#define hash_jarfile   2046641ul
#define hash_listen_address   1255650842ul
#define hash_logdir   422889ul
#define hash_logfile   2114766ul
#define hash_permit_access   3587953268ul
#define hash_proxy_info_url   3903079059ul
#define hash_single_threaded   4250084780ul
#define hash_suppress_blocklists   1948693308ul
#define hash_toggle   447966ul
#define hash_trust_info_url   430331967ul
#define hash_trustfile   56494766ul
#define hash_usermanual   1416668518ul
#define hash_activity_animation   1817904738ul
#define hash_close_button_minimizes   3651284693ul
#define hash_hide_console   2048809870ul
#define hash_log_buffer_size   2918070425ul
#define hash_log_font_name   2866730124ul
#define hash_log_font_size   2866731014ul
#define hash_log_highlight_messages   4032101240ul
#define hash_log_max_lines   2868344173ul
#define hash_log_messages   2291744899ul
#define hash_show_on_task_bar   215410365ul

Functions

void savearg (char *command, char *argument, struct configuration_spec *config)
void unload_configfile (void *data)
configuration_specload_config (void)

Variables

const char loadcfg_rcs [] = "$Id: loadcfg.c,v 2.1 2002/06/04 17:22:36 jongfoster Exp $"
const char loadcfg_h_rcs [] = LOADCFG_H_VERSION
const char * configfile = NULL
int Argc = 0
const char ** Argv = NULL
file_listcurrent_configfile = NULL


Detailed Description

Loads settings from the configuration file into global variables.

This file contains both the routine to load the configuration and the global variables it writes to.

Log:
loadcfg.c,v
Revision 2.1 2002/06/04 17:22:36 jongfoster Adding comments

Revision 2.0 2002/06/04 14:34:21 jongfoster Moving source files to src/

Revision 1.48 2002/05/14 21:30:38 oes savearg now uses own linking code instead of (now special-cased) add_help_link

Revision 1.47 2002/05/12 21:36:29 jongfoster Correcting function comments

Revision 1.46 2002/04/26 12:55:14 oes

Revision 1.45 2002/04/24 02:11:54 oes Jon's multiple AF patch: Allow up to MAX_ACTION_FILES actionsfile options

Revision 1.44 2002/04/08 20:37:13 swa fixed JB spelling

Revision 1.43 2002/04/08 20:36:50 swa fixed JB spelling

Revision 1.42 2002/04/05 15:50:15 oes fix for invalid HTML proxy_args

Revision 1.41 2002/03/31 17:19:00 jongfoster Win32 only: Enabling STRICT to fix a VC++ compile warning.

Revision 1.40 2002/03/26 22:29:55 swa we have a new homepage!

Revision 1.39 2002/03/24 13:25:43 swa name change related issues

Revision 1.38 2002/03/24 13:05:48 jongfoster Renaming re_filterfile to filterfile

Revision 1.37 2002/03/16 23:54:06 jongfoster Adding graceful termination feature, to help look for memory leaks. If you enable this (which, by design, has to be done by hand editing config.h) and then go to http://i.j.b/die, then the program will exit cleanly after the *next* request. It should free all the memory that was used.

Revision 1.36 2002/03/13 00:27:05 jongfoster Killing warnings

Revision 1.35 2002/03/07 03:52:44 oes Set logging to tty for --no-daemon mode

Revision 1.34 2002/03/06 23:14:35 jongfoster Trivial cosmetic changes to make function comments easier to find.

Revision 1.33 2002/03/05 04:52:42 oes Deleted non-errlog debugging code

Revision 1.32 2002/03/04 18:24:53 oes Re-enabled output of unknown config directive hash

Revision 1.31 2002/03/03 15:07:20 oes Re-enabled automatic config reloading

Revision 1.30 2002/01/22 23:31:43 jongfoster Replacing strsav() with string_append()

Revision 1.29 2002/01/17 21:02:30 jongfoster Moving all our URL and URL pattern parsing code to urlmatch.c.

Renaming free_url to free_url_spec, since it frees a struct url_spec.

Revision 1.28 2001/12/30 14:07:32 steudten

Revision 1.27 2001/11/07 00:02:13 steudten Add line number in error output for lineparsing for actionsfile and configfile. Special handling for CLF added.

Revision 1.26 2001/11/05 21:41:43 steudten Add changes to be a real daemon just for unix os. (change cwd to /, detach from controlling tty, set process group and session leader to the own process. Add DBG() Macro. Add some fatal-error log message for failed malloc(). Add '-d' if compiled with 'configure --with-debug' to enable debug output.

Revision 1.25 2001/10/25 03:40:48 david__schmidt Change in porting tactics: OS/2's EMX porting layer doesn't allow multiple threads to call select() simultaneously. So, it's time to do a real, live, native OS/2 port. See defines for __EMX__ (the porting layer) vs. __OS2__ (native). Both versions will work, but using __OS2__ offers multi-threading.

Revision 1.24 2001/10/23 21:40:30 jongfoster Added support for enable-edit-actions and enable-remote-toggle config file options.

Revision 1.23 2001/10/07 15:36:00 oes Introduced new config option "buffer-limit"

Revision 1.22 2001/09/22 16:36:59 jongfoster Removing unused parameter fs from read_config_line()

Revision 1.21 2001/09/16 17:10:43 jongfoster Moving function savearg() here, since it was the only thing left in showargs.c.

Revision 1.20 2001/07/30 22:08:36 jongfoster Tidying up defines:

Revision 1.19 2001/07/15 17:45:16 jongfoster Removing some unused includes

Revision 1.18 2001/07/13 14:01:14 oes

Revision 1.17 2001/06/29 13:31:03 oes Revision 1.16 2001/06/09 10:55:28 jongfoster Changing BUFSIZ ==> BUFFER_SIZE

Revision 1.15 2001/06/07 23:13:40 jongfoster Merging ACL and forward files into config file. Cosmetic: Sorting config file options alphabetically. Cosmetic: Adding brief syntax comments to config file options.

Revision 1.14 2001/06/07 14:46:25 joergs Missing make_path() added for re_filterfile.

Revision 1.13 2001/06/05 22:33:54 jongfoster

Fixed minor memory leak. Also now uses make_path to prepend the pathnames.

Revision 1.12 2001/06/05 20:04:09 jongfoster Now uses _snprintf() in place of snprintf() under Win32.

Revision 1.11 2001/06/04 18:31:58 swa files are now prefixed with either `confdir' or `logdir'. `make redhat-dist' replaces both entries confdir and logdir with redhat values

Revision 1.10 2001/06/03 19:11:54 oes introduced confdir option

Revision 1.9 2001/06/01 20:06:24 jongfoster Removed support for "tinygif" option - moved to actions file.

Revision 1.8 2001/05/31 21:27:13 jongfoster Removed many options from the config file and into the "actions" file: add_forwarded, suppress_vanilla_wafer, wafer, add_header, user_agent, referer, from Also globally replaced "permission" with "action".

Revision 1.7 2001/05/29 09:50:24 jongfoster Unified blocklist/imagelist/permissionslist. File format is still under discussion, but the internal changes are (mostly) done.

Also modified interceptor behaviour:

Revision 1.6 2001/05/26 00:28:36 jongfoster Automatic reloading of config file. Removed obsolete SIGHUP support (Unix) and Reload menu option (Win32). Most of the global variables have been moved to a new struct configuration_spec, accessed through csp->config->globalname Most of the globals remaining are used by the Win32 GUI.

Revision 1.5 2001/05/25 22:34:30 jongfoster Hard tabs->Spaces

Revision 1.4 2001/05/22 18:46:04 oes

Revision 1.3 2001/05/20 01:21:20 jongfoster Version 2.9.4 checkin. Revision 1.2 2001/05/17 23:01:01 oes Revision 1.1.1.1 2001/05/15 13:58:58 oes Initial import of version 2.9.3 source tree


Define Documentation

#define hash_actions_file   1196306641ul
 

"actionsfile".

#define hash_activity_animation   1817904738ul
 

"activity-animation".

#define hash_admin_address   4112573064ul
 

"admin-address".

#define hash_buffer_limit   1881726070ul
 

"buffer-limit.

#define hash_close_button_minimizes   3651284693ul
 

"close-button-minimizes".

#define hash_confdir   1978389ul
 

"confdir".

#define hash_debug   78263ul
 

"debug".

#define hash_deny_access   1227333715ul
 

"deny-access".

#define hash_enable_edit_actions   2517097536ul
 

"enable-edit-actions".

#define hash_enable_remote_toggle   2979744683ul
 

"enable-remote-toggle".

#define hash_filterfile   250887266ul
 

"filterfile".

#define hash_forward   2029845ul
 

"forward".

#define hash_forward_socks4   3963965521ul
 

"forward-socks4".

#define hash_forward_socks4a   2639958518ul
 

"forward-socks4a".

#define hash_hide_console   2048809870ul
 

"hide-console".

#define hash_jarfile   2046641ul
 

"jarfile".

#define hash_listen_address   1255650842ul
 

"listen-address".

#define hash_log_buffer_size   2918070425ul
 

"log-buffer-size".

#define hash_log_font_name   2866730124ul
 

"log-font-name".

#define hash_log_font_size   2866731014ul
 

"log-font-size".

#define hash_log_highlight_messages   4032101240ul
 

"log-highlight-messages".

#define hash_log_max_lines   2868344173ul
 

"log-max-lines".

#define hash_log_messages   2291744899ul
 

"log-messages".

#define hash_logdir   422889ul
 

"logdir".

#define hash_logfile   2114766ul
 

"logfile".

#define hash_permit_access   3587953268ul
 

"permit-access".

#define hash_proxy_info_url   3903079059ul
 

"proxy-info-url".

#define hash_show_on_task_bar   215410365ul
 

"show-on-task-bar".

#define hash_single_threaded   4250084780ul
 

"single-threaded".

#define hash_suppress_blocklists   1948693308ul
 

"suppress-blocklists".

#define hash_toggle   447966ul
 

"toggle".

#define hash_trust_info_url   430331967ul
 

"trust-info-url".

#define hash_trustfile   56494766ul
 

"trustfile".

#define hash_usermanual   1416668518ul
 

"user-manual".


Function Documentation

struct configuration_spec* load_config void   
 

Load the config file and all parameters.

Returns:
The configuration_spec, or NULL on error.

void savearg char *    command,
char *    argument,
struct configuration_spec   config
[static]
 

Called from `load_config'.

It saves each non-empty and non-comment line from config into config->proxy_args. This is used to create the show-proxy-args page. On error, frees config->proxy_args and sets it to NULL

Parameters:
command  config setting that was found
argument  the setting's argument (if any)
config  Configuration to save into.
Returns:
N/A

void unload_configfile void *    data
 

Free the config structure and all components.

1 data: struct configuration_spec to unload

Returns:
N/A


Variable Documentation

int Argc = 0
 

Global argument count, so that CGI functions can access the command line.

const char** Argv = NULL
 

Global argument list, so that CGI functions can access the command line.

const char* configfile = NULL
 

The filename of the config file.

struct file_list* current_configfile = NULL [static]
 

The configuration file which is currently loaded.

const char loadcfg_h_rcs[] = LOADCFG_H_VERSION
 

Version information about loadcfg.h.

const char loadcfg_rcs[] = "$Id: loadcfg.c,v 2.1 2002/06/04 17:22:36 jongfoster Exp $"
 

Version information about loadcfg.c.


Generated on Tue Jun 4 18:54:49 2002 for Privoxy 3.1.1 by doxygen1.2.15