# define NDEBUG
#endif
+#if defined HAVE_OPENSSL || defined HAVE_GNUTLS
+# define HAVE_SSL
+#endif
+
/* `gettext (FOO)' is long to write, so we use `_(FOO)'. If NLS is
unavailable, _(STRING) simply returns STRING. */
#ifdef HAVE_NLS
#ifndef WINDOWS
typedef off_t wgint;
# define SIZEOF_WGINT SIZEOF_OFF_T
-#endif
-/* Define a strtol/strtoll clone that works with wgint. */
-#ifndef str_to_wgint /* mswindows.h defines its own alias */
+/* Pick the strtol-like function that will work with wgint. */
# if SIZEOF_WGINT == SIZEOF_LONG
# define str_to_wgint strtol
# define WGINT_MAX LONG_MAX
# else
-# define str_to_wgint strtoll
# define WGINT_MAX LLONG_MAX
+# ifdef HAVE_STRTOLL
+# define str_to_wgint strtoll
+# elif defined HAVE_STRTOIMAX /* HPUX 11.0 has strtoimax, but no strtoll */
+# define str_to_wgint strtoimax
+# else
+# define str_to_wgint strtoll
+# define NEED_STRTOLL
+# define strtoll_type long long
+# endif
# endif
+#endif /* not WINDOWS */
+
+/* Declare our strtoll replacement. */
+#ifdef NEED_STRTOLL
+strtoll_type strtoll (const char *, char **, int);
#endif
-/* Now define a large integral type useful for storing sizes of *sums*
+/* Now define a large numeric type useful for storing sizes of *sums*
of downloads, such as the value of the --quota option. This should
be a type able to hold 2G+ values even on systems without large
file support. (It is useful to limit Wget's download quota to say
} while (0)
/* Used to print pointers (usually for debugging). Print pointers
- using printf ("%0*lx", PTR_FORMAT (p)). (%p is too unpredictable;
+ using printf ("0x%0*lx", PTR_FORMAT (p)). (%p is too unpredictable;
some implementations prepend 0x, while some don't, and most don't
0-pad the address.) */
#define PTR_FORMAT(p) (int) (2 * sizeof (void *)), (unsigned long) (p)