]> sjero.net Git - wget/blobdiff - src/options.h
[svn] Applied Dennis Smit's --preserve-permissions patch.
[wget] / src / options.h
index d330021868fcea7f99c962622292ce1411aec594..e107fb09987a1a9cbf1dec15537102cc475ba1d8 100644 (file)
@@ -15,7 +15,17 @@ 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.  */
+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.  */
 
 /* Needed for FDP.  */
 #include <stdio.h>
@@ -25,6 +35,7 @@ struct options
   int verbose;                 /* Are we verbose? */
   int 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
@@ -59,6 +70,7 @@ struct options
 
   char **domains;              /* See host.c */
   char **exclude_domains;
+  int 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. */
@@ -95,21 +107,20 @@ struct options
   char *progress_type;         /* progress indicator type. */
   char *proxy_user; /*oli*/
   char *proxy_passwd;
-#ifdef HAVE_SELECT
-  long timeout;                        /* The value of read timeout in
-                                  seconds. */
-#endif
+
+  double read_timeout;         /* The read/write timeout. */
+  double dns_timeout;          /* The DNS timeout. */
+  double connect_timeout;      /* The connect timeout. */
+
   int random_wait;             /* vary from 0 .. wait secs by random()? */
-  long wait;                   /* The wait period between retrievals. */
-  long waitretry;              /* The wait period between retries. - HEH */
+  double wait;                 /* The wait period between retrievals. */
+  double waitretry;            /* The wait period between retries. - HEH */
   int use_robots;              /* Do we heed robots.txt? */
 
   long limit_rate;             /* Limit the download rate to this
                                   many bps. */
-  long quota;                  /* Maximum number of bytes to
-                                  retrieve. */
-  VERY_LONG_TYPE downloaded;   /* How much we downloaded already. */
-  int downloaded_overflow;     /* Whether the above overflowed. */
+  LARGE_INT quota;             /* Maximum file size to download and
+                                  store. */
   int numurls;                 /* Number of successfully downloaded
                                   URLs */
 
@@ -117,9 +128,9 @@ struct options
   int save_headers;            /* Do we save headers together with
                                   file? */
 
-#ifdef DEBUG
+#ifdef ENABLE_DEBUG
   int debug;                   /* Debugging on/off */
-#endif /* DEBUG */
+#endif
 
   int timestamping;            /* Whether to use time-stamping. */
 
@@ -154,18 +165,40 @@ struct options
                                   necessary to display a page properly. */
   char *bind_address;          /* What local IP address to bind to. */
 #ifdef HAVE_SSL
+  char *sslcadir;              /* CA directory (hash files) */
+  char *sslcafile;             /* CA File to use */
   char *sslcertfile;           /* external client cert to use. */
   char *sslcertkey;            /* the keyfile for this certificate
                                   (if not internal) included in the
                                   certfile. */
+  int   sslcerttype;           /* 0 = PEM / 1=ASN1 (DER) */
+  int   sslcheckcert;          /* 0 do not check / 1 check server cert */
   char *sslegdsock;             /* optional socket of the egd daemon */
+  int   sslprotocol;           /* 0 = auto / 1 = v2 / 2 = v3 / 3 = TLSv1 */
 #endif /* HAVE_SSL */
 
-  int   cookies;
-  char *cookies_input;
-  char *cookies_output;
+  int   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
+                                  saved and loaded. */
+
+  char *post_data;             /* POST query string */
+  char *post_file_name;                /* File to post */
+
+  enum {
+    restrict_unix,
+    restrict_windows
+  } restrict_files_os;         /* file name restriction ruleset. */
+  int restrict_files_ctrl;     /* non-zero if control chars in URLs
+                                  are restricted from appearing in
+                                  generated file names. */
+
+  int strict_comments;         /* whether strict SGML comments are
+                                  enforced.  */
+
+  int preserve_perm;           /* whether remote permissions are used
+                                 or that what is set by umask. */
 };
 
-#ifndef OPTIONS_DEFINED_HERE
 extern struct options opt;
-#endif