X-Git-Url: http://sjero.net/git/?p=wget;a=blobdiff_plain;f=src%2Foptions.h;h=8afa2523441f2f677d348786c7736e0d105fc0c9;hp=6e968aac331de239cb5e82480f2e6364032c3407;hb=9dadbf6fe9577a6a6b7e7bab4e4b782fc1a6f86c;hpb=8f935cf74ce95a631788fb8a4cce4114df935a78 diff --git a/src/options.h b/src/options.h index 6e968aac..8afa2523 100644 --- a/src/options.h +++ b/src/options.h @@ -1,11 +1,12 @@ /* struct options. - Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. + Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, + 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. This file is part of GNU Wget. GNU Wget is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2 of the License, or +the Free Software Foundation; either version 3 of the License, or (at your option) any later version. GNU Wget is distributed in the hope that it will be useful, @@ -14,86 +15,94 @@ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License -along with Wget; if not, write to the Free Software -Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - -In addition, as a special exception, the Free Software Foundation -gives permission to link the code of its release of Wget with the -OpenSSL project's "OpenSSL" library (or with modified versions of it -that use the same license as the "OpenSSL" library), and distribute -the linked executables. You must obey the GNU General Public License -in all respects for all of the code used other than "OpenSSL". If you -modify this file, you may extend this exception to your version of the -file, but you are not obligated to do so. If you do not wish to do -so, delete this exception statement from your version. */ +along with Wget. If not, see . + +Additional permission under GNU GPL version 3 section 7 + +If you modify this program, or any covered work, by linking or +combining it with the OpenSSL project's OpenSSL library (or a +modified version of that library), containing parts covered by the +terms of the OpenSSL or SSLeay licenses, the Free Software Foundation +grants you additional permission to convey the resulting work. +Corresponding Source for a non-source form of such a combination +shall include the source code for the parts of OpenSSL used as well +as that of the covered work. */ struct options { - int verbose; /* Are we verbose? */ - int quiet; /* Are we quiet? */ + int verbose; /* Are we verbose? (First set to -1, + hence not boolean.) */ + bool quiet; /* Are we quiet? */ int ntry; /* Number of tries per URL */ - int retry_connrefused; /* Treat CONNREFUSED as non-fatal. */ - int background; /* Whether we should work in background. */ - int kill_longer; /* Do we reject messages with *more* - data than specified in - content-length? */ - int ignore_length; /* Do we heed content-length at all? */ - int recursive; /* Are we recursive? */ - int spanhost; /* Do we span across hosts in + bool retry_connrefused; /* Treat CONNREFUSED as non-fatal. */ + bool background; /* Whether we should work in background. */ + bool ignore_length; /* Do we heed content-length at all? */ + bool recursive; /* Are we recursive? */ + bool spanhost; /* Do we span across hosts in recursion? */ - int relative_only; /* Follow only relative links. */ - int no_parent; /* Restrict access to the parent + int max_redirect; /* Maximum number of times we'll allow + a page to redirect. */ + bool relative_only; /* Follow only relative links. */ + bool no_parent; /* Restrict access to the parent directory. */ int reclevel; /* Maximum level of recursion */ - int dirstruct; /* Do we build the directory structure + bool dirstruct; /* Do we build the directory structure as we go along? */ - int no_dirstruct; /* Do we hate dirstruct? */ + bool no_dirstruct; /* Do we hate dirstruct? */ int cut_dirs; /* Number of directory components to cut. */ - int add_hostdir; /* Do we add hostname directory? */ - int protocol_directories; /* Whether to prepend "http"/"ftp" to dirs. */ - int noclobber; /* Disables clobbering of existing + bool add_hostdir; /* Do we add hostname directory? */ + bool protocol_directories; /* Whether to prepend "http"/"ftp" to dirs. */ + bool noclobber; /* Disables clobbering of existing data. */ char *dir_prefix; /* The top of directory tree */ char *lfilename; /* Log filename */ char *input_filename; /* Input filename */ - int force_html; /* Is the input file an HTML file? */ + bool force_html; /* Is the input file an HTML file? */ + + char *default_page; /* Alternative default page (index file) */ - int spider; /* Is Wget in spider mode? */ + bool spider; /* Is Wget in spider mode? */ char **accepts; /* List of patterns to accept. */ char **rejects; /* List of patterns to reject. */ char **excludes; /* List of excluded FTP directories. */ char **includes; /* List of FTP directories to follow. */ + bool ignore_case; /* Whether to ignore case when + matching dirs and files */ char **domains; /* See host.c */ char **exclude_domains; - int dns_cache; /* whether we cache DNS lookups. */ + bool dns_cache; /* whether we cache DNS lookups. */ char **follow_tags; /* List of HTML tags to recursively follow. */ char **ignore_tags; /* List of HTML tags to ignore if recursing. */ - int follow_ftp; /* Are FTP URL-s followed in recursive + bool follow_ftp; /* Are FTP URL-s followed in recursive retrieving? */ - int retr_symlinks; /* Whether we retrieve symlinks in + bool retr_symlinks; /* Whether we retrieve symlinks in FTP. */ char *output_document; /* The output file to which the documents will be printed. */ - int always_rest; /* Always use REST. */ - char *ftp_acc; /* FTP username */ - char *ftp_pass; /* FTP password */ - int netrc; /* Whether to read .netrc. */ - int ftp_glob; /* FTP globbing */ - int ftp_pasv; /* Passive FTP. */ - - char *http_user; /* HTTP user. */ + char *user; /* Generic username */ + char *passwd; /* Generic password */ + bool ask_passwd; /* Ask for password? */ + + bool always_rest; /* Always use REST. */ + char *ftp_user; /* FTP username */ + char *ftp_passwd; /* FTP password */ + bool netrc; /* Whether to read .netrc. */ + bool ftp_glob; /* FTP globbing */ + bool ftp_pasv; /* Passive FTP. */ + + char *http_user; /* HTTP username. */ char *http_passwd; /* HTTP password. */ char **user_headers; /* User-defined header(s). */ - int http_keep_alive; /* whether we use keep-alive */ + bool http_keep_alive; /* whether we use keep-alive */ - int use_proxy; /* Do we use proxy? */ - int allow_cache; /* Do we allow server-side caching? */ + bool use_proxy; /* Do we use proxy? */ + bool allow_cache; /* Do we allow server-side caching? */ char *http_proxy, *ftp_proxy, *https_proxy; char **no_proxy; char *base_href; @@ -105,42 +114,43 @@ struct options double dns_timeout; /* The DNS timeout. */ double connect_timeout; /* The connect timeout. */ - int random_wait; /* vary from 0 .. wait secs by random()? */ + bool random_wait; /* vary from 0 .. wait secs by random()? */ double wait; /* The wait period between retrievals. */ double waitretry; /* The wait period between retries. - HEH */ - int use_robots; /* Do we heed robots.txt? */ + bool use_robots; /* Do we heed robots.txt? */ wgint limit_rate; /* Limit the download rate to this many bps. */ - LARGE_INT quota; /* Maximum file size to download and + SUM_SIZE_INT quota; /* Maximum file size to download and store. */ - int numurls; /* Number of successfully downloaded - URLs */ - int server_response; /* Do we print server response? */ - int save_headers; /* Do we save headers together with + bool server_response; /* Do we print server response? */ + bool save_headers; /* Do we save headers together with file? */ #ifdef ENABLE_DEBUG - int debug; /* Debugging on/off */ + bool debug; /* Debugging on/off */ #endif - int timestamping; /* Whether to use time-stamping. */ +#ifdef MSDOS + bool wdebug; /* Watt-32 tcp/ip debugging on/off */ +#endif - int backup_converted; /* Do we save pre-converted files as *.orig? */ - int backups; /* Are numeric backups made? */ + bool timestamping; /* Whether to use time-stamping. */ - char *useragent; /* Naughty User-Agent, which can be - set to something other than - Wget. */ + bool backup_converted; /* Do we save pre-converted files as *.orig? */ + bool backups; /* Are numeric backups made? */ + + char *useragent; /* User-Agent string, which can be set + to something other than Wget. */ char *referer; /* Naughty Referer, which can be set to something other than NULL. */ - int convert_links; /* Will the links be converted + bool convert_links; /* Will the links be converted locally? */ - int remove_listing; /* Do we remove .listing files + bool remove_listing; /* Do we remove .listing files generated by FTP? */ - int htmlify; /* Do we HTML-ify the OS-dependent + bool htmlify; /* Do we HTML-ify the OS-dependent listings? */ char *dot_style; @@ -149,12 +159,12 @@ struct options int dots_in_line; /* How many dots in one line. */ int dot_spacing; /* How many dots between spacings. */ - int delete_after; /* Whether the files will be deleted + bool delete_after; /* Whether the files will be deleted after download. */ - int html_extension; /* Use ".html" extension on all text/html? */ + bool adjust_extension; /* Use ".html" extension on all text/html? */ - int page_requisites; /* Whether we need to download all files + bool page_requisites; /* Whether we need to download all files necessary to display a page properly. */ char *bind_address; /* What local IP address to bind to. */ @@ -165,7 +175,7 @@ struct options secure_protocol_sslv3, secure_protocol_tlsv1 } secure_protocol; /* type of secure protocol to use. */ - int check_cert; /* whether to validate the server's cert */ + bool check_cert; /* whether to validate the server's cert */ char *cert_file; /* external client certificate to use. */ char *private_key; /* private key file (if not internal). */ enum keyfile_type { @@ -183,10 +193,10 @@ struct options char *egd_file; /* file name of the egd daemon socket */ #endif /* HAVE_SSL */ - int cookies; /* whether cookies are used. */ + bool cookies; /* whether cookies are used. */ char *cookies_input; /* file we're loading the cookies from. */ char *cookies_output; /* file we're saving the cookies to. */ - int keep_session_cookies; /* whether session cookies should be + bool keep_session_cookies; /* whether session cookies should be saved and loaded. */ char *post_data; /* POST query string */ @@ -196,19 +206,26 @@ struct options restrict_unix, restrict_windows } restrict_files_os; /* file name restriction ruleset. */ - int restrict_files_ctrl; /* non-zero if control chars in URLs + bool restrict_files_ctrl; /* non-zero if control chars in URLs are restricted from appearing in generated file names. */ + bool restrict_files_nonascii; /* non-zero if bytes with values greater + than 127 are restricted. */ + enum { + restrict_no_case_restriction, + restrict_lowercase, + restrict_uppercase + } restrict_files_case; /* file name case restriction. */ - int strict_comments; /* whether strict SGML comments are + bool strict_comments; /* whether strict SGML comments are enforced. */ - int preserve_perm; /* whether remote permissions are used + bool preserve_perm; /* whether remote permissions are used or that what is set by umask. */ #ifdef ENABLE_IPV6 - int ipv4_only; /* IPv4 connections have been requested. */ - int ipv6_only; /* IPv4 connections have been requested. */ + bool ipv4_only; /* IPv4 connections have been requested. */ + bool ipv6_only; /* IPv4 connections have been requested. */ #endif enum { prefer_ipv4, @@ -216,6 +233,19 @@ struct options prefer_none } prefer_family; /* preferred address family when more than one type is available */ + + bool content_disposition; /* Honor HTTP Content-Disposition header. */ + bool auth_without_challenge; /* Issue Basic authentication creds without + waiting for a challenge. */ + + bool enable_iri; + char *encoding_remote; + char *locale; + +#ifdef __VMS + int ftp_stmlf; /* Force Stream_LF format for binary FTP. */ +#endif /* def __VMS */ + }; extern struct options opt;