X-Git-Url: http://sjero.net/git/?a=blobdiff_plain;f=src%2Finit.c;h=db67868cd9f4972a4b9d45c3107072a871460f3b;hb=b5c9573ad6396acf3e4e33d0ae0db65b413b0d66;hp=4e16d1fee3d79b0e42da3bae08e074ca067af983;hpb=9dadbf6fe9577a6a6b7e7bab4e4b782fc1a6f86c;p=wget diff --git a/src/init.c b/src/init.c index 4e16d1fe..db67868c 100644 --- a/src/init.c +++ b/src/init.c @@ -1,6 +1,6 @@ /* Reading/parsing the initialization file. - Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, - 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. + Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, + 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. This file is part of GNU Wget. @@ -37,6 +37,15 @@ as that of the covered work. */ #endif #include #include +#include +/* not all systems provide PATH_MAX in limits.h */ +#ifndef PATH_MAX +# include +# ifndef PATH_MAX +# define PATH_MAX MAXPATHLEN +# endif +#endif + #ifdef HAVE_PWD_H # include @@ -164,7 +173,7 @@ static const struct { { "ftpuser", &opt.ftp_user, cmd_string }, { "glob", &opt.ftp_glob, cmd_boolean }, { "header", NULL, cmd_spec_header }, - { "htmlextension", &opt.adjust_extension, cmd_boolean }, + { "htmlextension", &opt.adjust_extension, cmd_boolean }, /* deprecated */ { "htmlify", NULL, cmd_spec_htmlify }, { "httpkeepalive", &opt.http_keep_alive, cmd_boolean }, { "httppasswd", &opt.http_passwd, cmd_string }, /* deprecated */ @@ -243,13 +252,16 @@ static const struct { { "timeout", NULL, cmd_spec_timeout }, { "timestamping", &opt.timestamping, cmd_boolean }, { "tries", &opt.ntry, cmd_number_inf }, + { "trustservernames", &opt.trustservernames, cmd_boolean }, + { "unlink", &opt.unlink, cmd_boolean }, { "useproxy", &opt.use_proxy, cmd_boolean }, { "user", &opt.user, cmd_string }, { "useragent", NULL, cmd_spec_useragent }, + { "useservertimestamps", &opt.useservertimestamps, cmd_boolean }, { "verbose", NULL, cmd_spec_verbose }, { "wait", &opt.wait, cmd_time }, { "waitretry", &opt.waitretry, cmd_time }, -#ifdef MSDOS +#ifdef USE_WATT32 { "wdebug", &opt.wdebug, cmd_boolean }, #endif }; @@ -344,6 +356,8 @@ defaults (void) #endif opt.locale = NULL; opt.encoding_remote = NULL; + + opt.useservertimestamps = true; } /* Return the user's home directory (strdup-ed), or NULL if none is @@ -391,12 +405,12 @@ home_dir (void) return home ? xstrdup (home) : NULL; } -/* Check the 'WGETRC' environment variable and return the file name - if 'WGETRC' is set and is a valid file. +/* Check the 'WGETRC' environment variable and return the file name + if 'WGETRC' is set and is a valid file. If the `WGETRC' variable exists but the file does not exist, the function will exit(). */ char * -wgetrc_env_file_name (void) +wgetrc_env_file_name (void) { char *env = getenv ("WGETRC"); if (env && *env) @@ -415,7 +429,7 @@ wgetrc_env_file_name (void) /* Check for the existance of '$HOME/.wgetrc' and return it's path if it exists and is set. */ char * -wgetrc_user_file_name (void) +wgetrc_user_file_name (void) { char *home = home_dir (); char *file = NULL; @@ -443,7 +457,7 @@ wgetrc_user_file_name (void) /* Return the path to the user's .wgetrc. This is either the value of `WGETRC' environment variable, or `$HOME/.wgetrc'. - Additionally, for windows, look in the directory where wget.exe + Additionally, for windows, look in the directory where wget.exe resides. */ char * wgetrc_file_name (void) @@ -451,7 +465,7 @@ wgetrc_file_name (void) char *file = wgetrc_env_file_name (); if (file && *file) return file; - + file = wgetrc_user_file_name (); #ifdef WINDOWS @@ -564,8 +578,8 @@ initialize (void) /* Load the hard-coded defaults. */ defaults (); - - /* Run a non-standard system rc file when the according environment + + /* Run a non-standard system rc file when the according environment variable has been set. For internal testing purposes only! */ env_sysrc = getenv ("SYSTEM_WGETRC"); if (env_sysrc && file_exists_p (env_sysrc)) @@ -1310,7 +1324,7 @@ cmd_spec_restrict_file_names (const char *com, const char *val, void *place_igno return false; } - if (*end) + if (*end) val = end + 1; } while (*val && *end); @@ -1321,7 +1335,7 @@ cmd_spec_restrict_file_names (const char *com, const char *val, void *place_igno opt.restrict_files_ctrl = restrict_ctrl; opt.restrict_files_case = restrict_case; opt.restrict_files_nonascii = restrict_nonascii; - + return true; } @@ -1601,7 +1615,7 @@ cleanup (void) xfree_null (opt.user); xfree_null (opt.passwd); xfree_null (opt.base_href); - + #endif /* DEBUG_MALLOC */ } @@ -1622,9 +1636,9 @@ test_commands_sorted() { mu_assert ("FAILED", false); break; - } + } else - { + { prev_idx ++; next_idx ++; } @@ -1648,11 +1662,11 @@ test_cmd_spec_restrict_file_names() { "windows,lowercase", restrict_windows, true, restrict_lowercase, true }, { "unix,nocontrol,lowercase,", restrict_unix, false, restrict_lowercase, true }, }; - - for (i = 0; i < sizeof(test_array)/sizeof(test_array[0]); ++i) + + for (i = 0; i < sizeof(test_array)/sizeof(test_array[0]); ++i) { bool res; - + defaults(); res = cmd_spec_restrict_file_names ("dummy", test_array[i].val, NULL); @@ -1662,10 +1676,10 @@ test_cmd_spec_restrict_file_names() fprintf (stderr, "opt.restrict_files_ctrl: %d\n", opt.restrict_files_ctrl); fflush (stderr); fprintf (stderr, "opt.restrict_files_case: %d\n", opt.restrict_files_case); fflush (stderr); */ - mu_assert ("test_cmd_spec_restrict_file_names: wrong result", + mu_assert ("test_cmd_spec_restrict_file_names: wrong result", res == test_array[i].result - && opt.restrict_files_os == test_array[i].expected_restrict_files_os - && opt.restrict_files_ctrl == test_array[i].expected_restrict_files_ctrl + && opt.restrict_files_os == test_array[i].expected_restrict_files_os + && opt.restrict_files_ctrl == test_array[i].expected_restrict_files_ctrl && opt.restrict_files_case == test_array[i].expected_restrict_files_case); }