diff --git a/ChangeLog-branches/1.10_branch.ChangeLog b/ChangeLog-branches/1.10_branch.ChangeLog new file mode 100644 index 00000000..ff99546b --- /dev/null +++ b/ChangeLog-branches/1.10_branch.ChangeLog @@ -0,0 +1,1592 @@ +2005-05-10 Hrvoje Niksic + + * configure.in: Test for OpenSSL includes we actually need. + +2005-05-06 Hrvoje Niksic + + * Makefile.in ($(srcdir)/stamp-h.in): Don't print the line with + the comment about running autoheader. + +2005-05-06 Hrvoje Niksic + + * configure.in: Set MAKEINFO to "true" so build doesn't fail for + users without either makeinfo or the pre-packaged info files. + +2005-05-02 Hrvoje Niksic + + * INSTALL: Document environment variables affecting configure, + especially $CC. + + * INSTALL: Mention that make install requires root. + +2005-04-29 Hrvoje Niksic + + * configure.in: Don't set ipv6 to yes only because struct + sockaddr_in6 was found. Stop the rest of the IPv6 checks when one + check fails. Abort if IPv6 was explicitly requested, but not + found. + +2005-04-28 Hrvoje Niksic + + * windows/Makefile.top.bor: Use MAKEDIR for make clean too. + +2005-04-28 Hrvoje Niksic + + * windows/Makefile.src.bor: Don't delete executables other than + wget.exe. Delete various auxilliary files created by the Borland + build process. + +2005-04-28 Hrvoje Niksic + + * NEWS: Advertise new-style syntax for --no-dns-cache instead + of --dns-cache=off. + +2005-04-28 Hrvoje Niksic + + * windows/Makefile.src.bor: Don't suppress unreachable code + warning. + +2005-04-28 Herold Heiko + + * windows/wget.dep: Rename gen_sslfunc.c to openssl.c. + +2005-04-28 Hrvoje Niksic + + * INSTALL: Mention --disable-ntlm. + +2005-04-27 Mauro Tortonesi + + * NEWS: Mention the new --ftp-user, --ftp-password, --user and + --password options, the name changes for --http-passwd and + --proxy-passwd and the deprecation of login and passwd commands. + +2005-04-22 Hrvoje Niksic + + * po/eo.po: Added Esperanto translation. + +2005-04-21 Hrvoje Niksic + + * po/vi.po: Added Vietnamese translation. + +2005-04-18 Hrvoje Niksic + + * MACHINES: Removed. + +2005-04-08 Hrvoje Niksic + + * configure.in: When checking for OpenSSL headers, check for all + the ones that Wget is using. + +2005-04-08 Hrvoje Niksic + + * windows/Makefile.src: Compile ptimer.c and http-ntlm.c. + +2005-04-08 Hrvoje Niksic + + * configure.in: Use it. + + * aclocal.m4 (WGET_POSIX_CLOCK): Check whether -lrt is needed to + use POSIX clock functions like clock_gettime. + +2005-04-08 Hrvoje Niksic + + * Makefile.in ($(srcdir)/stamp-h.in): Don't attempt to run + autoheader automatically; it breaks things with fresh CVS builds. + +2005-04-06 Hrvoje Niksic + + * configure.in: Allow the user to disable NTLM authorization. + Make sure NTLM is disabled if OpenSSL is unavailable. If NTLM is + *explicitly* requested and OpenSSL is unavailable, abort. + + * configure.in: Renamed USE_* to ENABLE_*. + +2005-03-23 Hrvoje Niksic + + * po/POTFILES.in: Removed headers.c and rbuf.c. + +2005-03-06 Hrvoje Niksic + + * windows/Makefile.src.bor: Reenable warnings under Borland C, + disabling only specific warnings. Generate Pentium Pro code by + default. + +2003-02-24 Hrvoje Niksic + + * configure.in: Don't check for AI_ADDRCONFIG here, it is checked + for in the source directly. + +2003-02-25 Hrvoje Niksic + + * libtool.m4, ltmain.sh, config.sub, config.guess: Upgrade to + libtool 1.5.14. + +2003-02-23 Hrvoje Niksic + + * libtool.m4, ltmain.sh, config.sub, config.guess: Upgrade to + libtool 1.5.8. + +2005-02-20 Hrvoje Niksic + + * configure.in: Check for LFS. Determine SIZEOF_OFF_T. + Check for ftello. + +2005-02-18 Marco Colombo + + * po/it.po: Updated Italian translation. + +2004-05-09 David Fritz + + * windows/Makefile.src.bor: Fix broken build rule. Add clean target. + + * windows/Makefile.top.bor: Use tabs instead of spaces. Ignore + errors in clean rules. Use lowercase filenames when building + distribution .zip archive. + + * windows/config.h.bor: Don't define HAVE_UINT32_T. + + * windows/Makefile.doc: Fix remaining instance of build rules + indented with spaces instead of tabs. + + * windows/Makefile.src: Update copyright year. + + * windows/Makefile.top: Update copyright year. + + * windows/config.h.mingw (WGET_USE_STDARG, HAVE_SIG_ATOMIC_T): Define. + + * windows/config.h.ms (HAVE_STRPBRK, HAVE_LIMITS_H) + (HAVE_LOCALE_H): Define. + + * windows/Makefile.watcom: Add /I. to CFLAGS. Remove reference to + specific Wget version from linker flags. Add missing + dependencies. + +2004-02-09 David Fritz + + * configure.bat.in: Don't clear the screen. + + * windows/README: Add introductory paragraph. Re-word a few + sentences. Correct minor typographical errors. Use consistent + capitalization of Wget, SSL, and OpenSSL. Refer to Microsoft + Visual C++ as MSVC instead of VC++. Mention the --msvc option to + configure.bat. Reflow paragraphs. + + * windows/Makefile.top: Use tabs instead of spaces. Ignore errors + in clean rules. Use lowercase filenames when building distribution + .zip archive. + + * windows/Makefile.doc: Use tabs instead of spaces. Ignore errors + in clean rules. + + * windows/Makefile.src: Clean-up clean rules. Use tabs instead of + spaces. Link against gdi32.lib. Don't define SYSTEM_WGETRC. + Remove unused macros. Remove anachronistic and superfluous linker + flags. Don't rename wget.exe to all upper-case. Add + `preprocessor' conditionals for SSL and newer MSVC options. Use + batch rules. Don't suppress all warnings. + +2003-11-26 Hrvoje Niksic + + * aclocal.m4: Don't check for AI_V4MAPPED and for AI_ALL, since + Wget doesn't need them. + + * configure.in: Check for struct sockaddr_storage. + +2003-11-12 Hrvoje Niksic + + * configure.in: Use a more standard checking message when checking + for md5.h. + +2003-11-12 Hrvoje Niksic + + * configure.in: Tweak ansi2knr test, use : instead of true. + +2003-11-12 Hrvoje Niksic + + * configure.in: Check for limits.h. + +2003-11-10 Hrvoje Niksic + + * aclocal.m4 (WGET_SOCKLEN_T): Use AC_COMPILE_IFELSE instead of + AC_TRY_COMPILE. + +2003-11-10 Hrvoje Niksic + + * aclocal.m4 (WGET_STRUCT_UTIMBUF): Use AC_CHECK_TYPES instead of + AC_EGREP_CPP to check for struct utimbuf. + +2003-11-09 Hrvoje Niksic + + * aclocal.m4 (WGET_WITH_NLS): Respect the user's setting of + LINGUAS, e.g. `LINGUAS="en bg ja" ./configure'. + +2003-11-09 Hrvoje Niksic + + * configure.in: Don't attempt to use Emacs as a makeinfo + substitute. + +2003-11-07 Hrvoje Niksic + + * README: Remove explicit version reference, so that the file + doesn't have to be updated for each new release. + +2003-11-05 Hrvoje Niksic + + * libtool.m4, ltmain.sh, config.sub, config.guess: Upgrade to + libtool 1.5. + +2003-11-05 Hrvoje Niksic + + * windows/config.h.ms: MSVC doesn't have uint32_t. + +2003-11-05 Hrvoje Niksic + + * configure.in: Remove the broken check for socks. + +2003-11-05 Hrvoje Niksic + + * configure.in: Substitute ANSI2KNR and U, so we can compile. + +2003-11-05 Hrvoje Niksic + + * configure.in: Use the Autoconf macro AC_C_PROTOTYPES instead of + the old AM_C_PROTOTYPES. + +2003-11-04 Hrvoje Niksic + + * configure.in: Use the new form of AC_OUTPUT. + + * Makefile.cvs (prep): Invoke autoheader. + +2003-11-04 Hrvoje Niksic + + * configure.in: Require Autoconf 2.57. + +2003-11-04 Hrvoje Niksic + + * aclocal.m4: Ditto. + + * configure.in: Add description annotations to AC_DEFINE. + + * Makefile.in: Update maintenance targets, preparing them for the + use of `autoheader'. + +2003-11-04 Hrvoje Niksic + + * configure.in: Don't misuse AC_MSG_RESULT. Use AC_MSG_NOTICE + where appropriate. + +2003-11-04 Hrvoje Niksic + + * configure.in: Check whether volatile is supported. Don't check + for gethostname and uname, which are not used. + +2003-11-04 Hrvoje Niksic + + * configure.in: Move some checks into aclocal.m4. Check whether + fnmatch.h is includable. + + * configure.in: Also check whether #include works before + deciding to use Solaris libmd5. + + * configure.in: Use AC_MSG_NOTICE instead of echo. Use + AC_MSG_ERROR for fatal errors. + +2003-11-03 Hrvoje Niksic + + * configure.in: Look for nanosleep in -lrt and -lposix4, which is + where Solaris has them. + +2003-11-03 Hrvoje Niksic + + * configure.in: Check for nanosleep. + +2003-03-09 Nicolas Schodet + + * Makefile.in: Fixed bad configure.bat scrdir. + +2003-10-29 Hrvoje Niksic + + * configure.in: Reenable IPv6 autodetection. + +2003-10-26 Hrvoje Niksic + + * configure.in: Switch from u_int32_t to uint32_t. Check for + inttypes.h so it's used to get the definition of uint32_t where + available. + +2003-10-26 Hrvoje Niksic + + * windows/Makefile.src.watcom (OBJS): Use convert.c. + From Chin-yuan Kuo. + +2003-10-26 Hrvoje Niksic + + * windows/config.h.bor: DEBUG is now ENABLE_DEBUG. Borland has + snprintf, but not u_int32_t. + + * windows/Makefile.src.bor (OBJS): Use convert.c. + + From Chin-yuan Kuo. + +2003-10-26 Hrvoje Niksic + + * windows/config.h.mingw: Ditto. + + * windows/Makefile.top.mingw: Ditto. + + * windows/Makefile.src.mingw: New file. + + * windows/wget.dep: Support convert.o. + + * configure.bat.in: New option `--mingw'. + From Chin-yuan Kuo. + +2003-10-23 Hrvoje Niksic + + * Makefile.in (dist): Depend on configure.bat. + (realclean-top): Delete configure.bat. + +2003-10-21 Hrvoje Niksic + + * Makefile.in (distclean-top): Remove the libtool script, because + it's generated by configure. + +2003-10-16 Hrvoje Niksic + + * configure.in: Don't check for int32_t because we're not really + using it. + +2003-10-11 Hrvoje Niksic + + * configure.in: Check for int32_t and u_int32_t. Check for + SIZEOF_INT. + +2003-10-10 Hrvoje Niksic + + * aclocal.m4 (WGET_WITH_NLS): First check for gettext in libintl, + then use the libc version. That way systems that get libintl.h + from /usr/local/include will get the matching gettext. + +2003-10-10 Hrvoje Niksic + + * po/tr.po: Ditto. + + * po/sv.po: Updated from TP. + +2003-10-09 Herold Heiko + + * windows/Makefile.watcom (OBJS): Ditto. + + * windows/Makefile.src.bor: Ditto. + + * windows/wget.dep: Ditto. + + * windows/Makefile.src: Removed references to fnmatch.c and + fnmatch.o. + +2003-10-09 Hrvoje Niksic + + * po/ft.po, po/sk.po, po/ja.po: Updated from the TP. + +2003-10-08 Hrvoje Niksic + + * po/wget.pot: Recreated. + +2003-10-08 Hrvoje Niksic + + * configure.in: Renamed DEBUG to ENABLE_DEBUG. + +2003-10-04 Hrvoje Niksic + + * libtool.m4: New file with contents imported from libtool. + + * aclocal.m4: Move libtool stuff into a separate file. That + leaves this file only with Wget-specific stuff. + +2003-10-01 Hrvoje Niksic + + * po/hu.po: Updated from the TP. + + * po/et.po: Updated from the TP. + + * po/ro.po: New file from the TP. + +2003-10-01 Hrvoje Niksic + + * po/hr.po: Updated. + +2003-10-01 Hrvoje Niksic + + * po/POTFILES.in: Added src/convert.c. + +2003-09-30 Herold Heiko + + * windows/Makefile.src (OBJ): Fix typo. + +2003-09-26 Gisle Vanem + + * windows/config.h.ms: Don't declare alloca under compilers that + support it. + + * windows/config.h.ms: Define HAVE_SNPRINTF, HAVE_VSNPRINTF, and + HAVE_MEMMOVE. + +2003-09-25 Herold Heiko + + * windows/Makefile.src: Updated OBJ list. + +2003-09-23 Hrvoje Niksic + + * Makefile.in (clean-top): Remove .libs. + +2003-09-23 Hrvoje Niksic + + * Makefile.in (distclean-top): Remove autom4te.cache. + +2003-09-17 Hrvoje Niksic + + * install-sh, mkinstalldirs: Updated from Autoconf 2.57. + +2003-09-17 Hrvoje Niksic + + * ltmain.sh, aclocal.m4: Upgrade to libtool 1.4.3. Libtool 1.5 + has been out for a while now, but it can wait until after Wget 1.9 + is released. + +2003-09-17 Hrvoje Niksic + + * config.sub: Ditto. + + * config.guess: Updated from Autoconf 2.57. + +2003-09-16 Hrvoje Niksic + + * util/dist-wget: Fixed portable echo checking under Bash. + +2003-09-16 Hrvoje Niksic + + * configure.in: Change AC_CHECK_FUNC(getaddrinfo...) to + AC_CHECK_FUNCS, which automatically defines HAVE_GETADDRINFO. + +2003-09-16 Mauro Tortonesi + + * configure.in, aclocal.m4: Added proper IPv6 detection. + +2003-09-16 Hrvoje Niksic + + * Makefile.in (all): Don't build configure.bat by default. + +2003-09-09 Hrvoje Niksic + + * configure.in, aclocal.m4: Added configure check for IPv6 and + getaddrinfo. From Daniel Stenberg. + +2003-09-05 Maciej W. Rozycki + + * configure.in: Additional M4 quoting. + +2003-09-04 Hrvoje Niksic + + * aclocal.m4, configure.in: Made them work under Autoconf 2.5x. + +2002-05-27 Ian Abbott + + * windows/config.h.bor: Do #define WGET_USE_STDARG. + +2002-05-20 Hrvoje Niksic + + * windows/config.h.ms: Ditto. + + * windows/config.h.bor: Don't #define __STDC__. + +2002-05-18 Hrvoje Niksic + + * ALL: Update the license to reflect the OpenSSL exception. + +2002-04-23 Ian Abbott + + * windows/config.h.ms: Accounted for MSVC not defining `__STDC__' when + Microsoft's extensions are enabled and define it anyway (set to `1'). + Defined some things that broke as a result of this. + +2002-04-20 Hrvoje Niksic + + * po/de.po: Updated from the TP. + +2001-04-15 Ian Abbott + + windows/wget.dep: The target `connect$o' (connect.obj) now depends on + `utils.h'. + +2001-04-15 Hrvoje Niksic + + * po/da.po: Ditto. + + * po/de.po: Ditto. + + * po/el.po: Ditto. + + * po/es.po: Ditto. + + * po/et.po: Ditto. + + * po/fr.po: Ditto. + + * po/gl.po: Ditto. + + * po/he.po: Ditto. + + * po/ja.po: Ditto. + + * po/pl.po: Ditto. + + * po/sk.po: Ditto. + + * po/sl.po: Ditto. + + * po/sv.po: Ditto. + + * po/tr.po: Ditto. + + * po/zh_TW.po: Update from TP. + + * po/ca.po: Ditto. + + * po/bg.po: New file from TP. + +2002-04-15 Hrvoje Niksic + + * po/hr.po: Editing the Project-Id-Version to say "wget" rather + than "GNU Wget". + +2002-04-12 Ian Abbott + + * windows/Makefile.src.bor: Removed pre-compiled header options as + they increase build time (on my machine). + +2002-04-12 Ian Abbott + + * windows/config.h.bor: Account for Borland not defining `__STDC__' + when Borland's extensions enabled, and define it anyway. + +2002-04-12 Hrvoje Niksic + + * configure.in: Check for . Check for sigsetjmp and + sigblock. + +2002-04-09 Ian Abbott + + * windows/config.h.bor: define `HACK_BCC_UTIME_BUG'. Define `utime' + as `borland_utime' if `HACK_BCC_UTIME_BUG' is defined. + +2002-03-26 Ian Abbott + + * windows/wget.dep: Updated several dependencies for object files. + +2002-03-20 Ian Abbott + + * windows/config.h.bor: + * windows/config.h.ms: + Removed conditional cruft that was there for Unix-like systems. + +2002-03-20 Ian Abbott + + * * windows/wget.dep: Fix dependencies for target mswindows$o + (mswindows.obj) + +2002-03-19 Chin-yuan Kuo + + * configure.bat.in: Do not check %BORPATH% as C++Builder compiler + does not use it. + + * windows/Makefile.src.bor: + * windows/config.h.bor: + Migrated to free (as in beer) C++Builder compiler. + +2002-03-13 Ian Abbott + + * configure.bat: Removed (renamed to configure.bat.ini). + + * configure.bat.in: New (renamed from configure.bat). + + * Makefile.in: Add rule to copy configure.bat.in to configure.bat, + converting line endings to MS-DOS format in the process. + +2002-01-15 Hrvoje Niksic + + * MACHINES: OS X entry by Jonathan Davis. + +2001-12-19 Csaba Raduly + + * windows/Makefile.watcom: add gen-md5.obj and progress.obj to the + list of "sources" + + * configure.bat: add section for Watcom + +2001-12-13 Hrvoje Niksic + + * po/ja.po: Ditto. + + * po/sv.po: Ditto. + + * po/de.po: Ditto. + + * po/es.po: Ditto. + + * po/fr.po: Ditto. + + * po/et.po: Ditto. + + * po/tr.po: Ditto. + + * po/ru.po: Update from TP. + +2001-12-12 Hrvoje Niksic + + * configure.in: Autodetect SSL. Check for SSL includes too. + +2001-12-11 Hrvoje Niksic + + * config.sub: Ditto. + + * config.guess: Ditto. + + * aclocal.m4: Ditto. + + * ltmain.sh: Upgrade to libtool 1.4.2. + +2001-12-11 Hrvoje Niksic + + * configure.in: Check for md5_calc rather than MD5Update when + looking for Solaris md5. + +2001-12-08 R.I.P. Deaddog + + * po/zh_TW.po: Updated for 1.8. + +2001-12-08 Hrvoje Niksic + + * po/tr.po: Ditto. + + * po/sv.po: Ditto. + + * po/ru.po: Ditto. + + * po/fr.po: Ditto. + + * po/es.po: Ditto. + + * po/de.po: Update from TP. + +2001-12-06 Hrvoje Niksic + + * po/et.po: Update from the TP. + +2001-12-06 Hrvoje Niksic + + * configure.in: Check for + +2001-12-06 Hrvoje Niksic + + * po/de.po: Ditto. + + * po/fr.po: Ditto. + + * po/tr.po: Ditto. + + * po/sv.po: Ditto. + + * po/et.po: Update from TP. + + * po/hu.po: New file from TP. + +2001-12-04 Herold Heiko + + * windows\Makefile.src: add gen_sslfunc.c + + * windows\Makefile.src.bor: ditto. + +2001-12-01 Hrvoje Niksic + + * po/hr.po: Updated Croatian translation. + +2001-11-29 Hrvoje Niksic + + * configure.in: Use SSL's MD5 if we're compiling with SSL anyway. + +2001-11-27 Hrvoje Niksic + + * configure.in: Don't check for random. + +2001-11-27 Hrvoje Niksic + + * po/hr.po: Updated. + +2001-11-27 Hrvoje Niksic + + * configure.in: Check for random. + +2001-11-26 Hrvoje Niksic + + * configure.in: Check for usleep. + +2001-11-25 Hrvoje Niksic + + * util/dist-wget: New file: the script used for building Wget. + +2001-11-23 Hrvoje Niksic + + * po/hr.po: A major overhaul. + +2001-11-23 Hrvoje Niksic + + * po/wget.pot: Rebuild. + + * po/POTFILES.in: Update with the new source files. + +2001-11-23 Hrvoje Niksic + + * configure.in: Check for sys/ioctl.h. + +2001-11-22 Herold Heiko + + * windows/Readme + * windows/Makefile.doc + Windows documentation update. + * windows/Makefile.src + Cleanup config.h + +2001-11-22 Hrvoje Niksic + + * windows/Makefile.doc: Update docs generation. + +2001-11-22 Hrvoje Niksic + + * configure.in: Check for strpbrk(). + +2001-05-14 Herold Heiko + + * windows/Makefile.src: + * windows/Makefile.src.bor: + * windows/Makefile.watcom: + * windows/config.h.bor: + * windows/config.h.ms: + * windows/wget.dep: + Windows update. + +2001-11-18 Hrvoje Niksic + + * configure.in: Check for getopt_long in libc. + +2001-11-18 Hrvoje Niksic + + * configure.in: Check for Solaris libmd5. + +2001-11-18 Hrvoje Niksic + + * po/: Installed ja.po, et.po, he.po, fr.po, da.po, uk.po, es.po, + sl.po, nl.po from the Translation Project. + +2001-06-16 Hrvoje Niksic + + * MACHINES: Added mips-sgi-irix6.5, as reported by Edward + J. Sabol. + +2001-06-15 Hrvoje Niksic + + * po/da.po: New version from TP. + +2001-06-15 Hrvoje Niksic + + * config.sub: New version from libtool 1.4. + + * config.guess: New version from libtool 1.4. + + * ltmain.sh: New version from libtool 1.4. + + * aclocal.m4: Imported `libtool.m4' from libtool 1.4. + + * ltconfig: Removed. + + * configure.in: First check the compiler, then invoke libtool. + +2001-06-14 Hrvoje Niksic + + * po/: Install new files from the TP: sv.po, cs.po, et.po, tr.po, + es.po, de.po, gl.po, sk.po, ru.po, fr.po. + +2001-06-14 Hrvoje Niksic + + * configure.in: Check for both gethostbyname and inet_ntoa before + concluding that -lnsl is not needed. + +2001-06-14 Maciej W. Rozycki + + * configure.in: Use `libtool' to test linking of external + libraries. + +2001-06-05 Jan Prikryl + + * po/cs.po: Updated to match the 1.7 POT. + +2001-06-04 Hrvoje Niksic + + * po/: New versions of de.po and gl.po from the TP. + +2001-06-03 Hrvoje Niksic + + * po/hr.po: Updated to match the new POT. + +2001-06-03 Hrvoje Niksic + + * po/wget.pot: Updated. + +2001-06-03 Hrvoje Niksic + + * po/es.po: Use the version from TP. + +2001-06-02 R.I.P. Deaddog + + * po/zh_TW.po: Updated for 1.7. + +2001-06-02 Hrvoje Niksic + + * po/: Updated ru.po, et.po, and sv.po. Added tr.po. + +2001-06-02 Hrvoje Niksic + + * po/pl.po: Use iso-8859-1 as charset. + + * po/hr.po: Update. + +2001-05-28 Maciej W. Rozycki + + * configure.in: Use $host_os instead of non-existent "$opsys" when + deciding based on host type. + + * configure.in: Print "cross" when cross-compiling. + +2001-05-26 Hrvoje Niksic + + * po/hr.po: Updated. + + * po/wget.pot: Regenerated from sources. + + * README: Updated copyright statement. + + * INSTALL: Document the new OpenSSL autodetector. + +2001-05-26 Hrvoje Niksic + + * configure.in: Provide a default for AC_TRY_RUN when + cross-compiling. Effectively, assume that when cross-compiling, + working linkage implies working executable. + +2001-05-25 Hrvoje Niksic + + * configure.in: Rewrote OpenSSL library detection. Now the code + loops over system locations where libssl/libcrypto might be + located. Aside from linking, it actually tries to run the + executable before concluding that the linking "worked". + +2001-05-16 Csaba Raduly + + * windows/Makefile.watcom: Make linker accept space-separated list + of object files. + +2001-05-14 Herold Heiko + + * windows/Makefile.src: Update for SSL. + +2001-05-14 Csaba Raduly + + * windows/Makefile.watcom: Updated. + +2001-05-14 Csaba Raduly + + * windows/Makefile.watcom: Rewritten. + +2001-04-11 Hrvoje Niksic + + * po/zh_TW.po: Reinstated, after an update by Abel Cheung. + + * po/zh_TW.Big5.po: Removed. + +2001-04-28 Csaba Raduly + + * windows/Makefile.watcom: Update. + +2001-04-28 Herold Heiko + + * windows/wget.dep: Update. + + * windows/Makefile.src: Update. + + * windows/config.h.ms: Define inline to __inline. + Define ftruncate to chsize. + +2001-04-27 Hrvoje Niksic + + * po/hr.po: Updated. + +2001-04-27 Hrvoje Niksic + + * po/ja.po: New update by Hiroshi Takekawa. + +2001-04-25 Hrvoje Niksic + + * po/POTFILES.in: Add src/cookies.c. + +2001-04-12 Hrvoje Niksic + + * configure.in: Check for inline. + +2001-04-11 Hrvoje Niksic + + * po/zh_TW.Big5.po: New file, submitted by Abel Cheung. + + * po/zh.po: Removed outdated file. + +2001-04-06 Hrvoje Niksic + + * aclocal.m4 (AM_PROG_CC_STDC): Don't use -Xc under SYSV. It + forces strict ANSI mode, which means we lose `long long'. + Generally, don't require __STDC__ to be defined to 1 because that + signifies strict ANSI. + +2001-04-04 Hrvoje Niksic + + * NEWS: Cosmetic changes. + +2001-04-03 Trond Eivind Glomsrod + + * po/da.po: Ditto. + + * po/no.po: The charset is iso-8859-1, not iso-8859-2. + +2001-04-02 Hrvoje Niksic + + * po/et.po: New version by Toomas Soome. + +2001-04-01 Nicolas Lichtmaier + + * po/es.po: New file. + +2001-03-27 Dan Harkless + + * INSTALL: Updated to reflect --with-ssl's new optional parameter. + + * configure.in: Christian Fraenkel's tests for -lcrypto and -lssl + were in the wrong order, causing a link failure if you're using + libcrypto.a and libssl.a rather than shared libraries. Also put + in checks for -ldl, necessary since the libcrypto shared library + doesn't record its dependency on libdl. + + * {.,util,windows}/Makefile.in: Moved top_builddir out of "User + configuration section" of top Makefile and analogous spot in others. + + * po/Makefile.in.in: Previous addition of top_builddir to + po/Makefile.in was bogus -- it's generated from po/Makefile.in.in. + +2001-03-26 Dan Harkless + + * TODO: -p should probably go "_two_ more hops" on pages. + +2001-03-22 Dan Harkless + + * MACHINES: Added rs6000-ibm-aix4.3.3.0. + +2001-03-21 Dan Harkless + + * MACHINES: Added armv4l-unknown-linux-gnu. + +2001-03-20 Dan Harkless + + * TODO: Oops. Hostless absolute link conversion _is_ working. My + test that led me to believe it wasn't was exposing a different bug + -- URLs specified on the commandline as opposed to being recursed + to don't always get re-converted at the end of the Wget run. + +2001-03-17 Dan Harkless + + * aclocal.m4: Appended libtool 1.3.5's libtool.m4 to it. + + * configure.in: Use AM_PROG_LIBTOOL macro (now defined in our + aclocal.m4) to create a libtool script from ltconfig and ltmain.sh. + If --with-ssl specified, look in /usr/local/ssl/lib by default for + OpenSSL libs. Allow override with --with-ssl=. + Set up -I/include and -R/lib + (possibly rewritten by libtool) as well. Don't appear to be + looking for a function main() in -lcrypto. If the OpenSSL lib + checks fail, don't just silently build a wget without https + support -- issue a warning. Define top_builddir. + + * ltconfig: New file from libtool 1.3.5 distribution. + + * ltmain.sh: New file from libtool 1.3.5 distribution. + + * {.,po,util,windows}/Makefile.in: Define top_builddir. + +2001-03-16 Dan Harkless + + * TODO: For some reason on 2000-11-19, Hrvoje removed the item + about converting hostless absolute links. That isn't working yet, + so I've put the item back, with a modified wording. + + * config.guess: Hadn't been updated since 1996 -- didn't work for recent + machines and OSes, such as NetWinder ARM Linux. Updated to latest + version (2001-03-16) from . + + * config.sub: Ditto -- updated to latest version (2001-03-12). + +2001-03-12 Dan Harkless + + * TODO: Only normal recursion should respect -np -- page-requisite + recursion should not. + +2001-03-07 Jan Prikryl + + * TODO: Removed an obsolete item about adding VMS and MS FTP + server support. + +2001-03-05 Dan Harkless + + * TODO: Add a --range option to download only a given byte range. + +2001-03-01 Dan Harkless + + * ChangeLog.README: Renamed from README.branches and added a note + that Wget has multiple ChangeLog files (currently ./ChangeLog, + doc/ChangeLog, and src/ChangeLog), since this is unusual and + people have complained their patches hadn't been applied after + checking only the top-level ChangeLog. + +2001-02-28 Dan Harkless + + * MACHINES: Explicitly tell people to send us config.guess output. + +2001-02-27 Dan Harkless + + * TODO: Re-use FTP connection if multiple URLs on one host + specified. Make "ftp:///%2F" cause an initial "CWD /". + +2001-02-23 Dan Harkless + + * NEWS: Note that Wget now has a man page again. + + * po/*.po*: Updated after changing --help's description of -N and + moving -nr to a different category. + + * TODO: "Timestamps are sometimes not copied over on files + retrieved by FTP." removed. Hopefully all the failures I was + seeing were due to the fact that it wasn't documented that + non-globbing, non-recursive FTP downloads need -N to get the + remote timestamp to be preserved. + +2001-02-22 Dan Harkless + + * TODO: Remove empty directories created due to --accept/--reject. + + * configure.in: Look for perl and pod2man and make substitutions. + + * Makefile.in (install): Do install.man if we have pod2man. + +2001-02-13 Jan Prikryl + + * windows/Makefile.src: Removed references to ftpparse sources. + + * windows/wget.dep: Ditto. + + * windows/Makefile.watcom: Ditto. + +2001-01-23 Herold Heiko + + * windows/Makefile.src: Don't attempt to compile in alloca.c; it + doesn't work and it's not needed. + +2001-01-16 Hrvoje Niksic + + * NEWS: Added more NEWS items. + +2001-01-15 Dan Harkless + + * NEWS: Was not being maintained. Added some significant 1.7-dev stuff. + +2001-01-15 Jan Prikryl + + * util/wget.spec: Updated to 1.7, merged with the spec file from + RedHat. + + * po/Makefile.in.in: `make realclean' equal to `make + maintainer-clean'. + + * Makefile.in (realclean-top): Remove 'configure' as well. + +2001-01-11 Dan Harkless + + * TODO: If -c used with -N, check to make sure a file hasn't + changed on the server before "continuing" to download it. + +2001-01-11 Adrian Aichner + + * windows/Makefile.src: Updated. + + * windows/wget.dep: Ditto. + +2001-01-09 Dan Harkless + + * TODO: If -c is on, don't re-download a 100%-downloaded file. + + * TODO: The bug where you couldn't recurse into ftp directories if + logging in put you somewhere else besides the server's "/" + directory got fixed without the TODO entry for it being removed. + + * TODO: Add a "rollback" option to have --continue throw away X + corrupted (e.g. by proxy) bytes from end of file before resuming. + + * po/*.po*: Updated after changing --help's description of -c. + +2001-01-06 Dan Harkless + + * ChangeLog: The '[Not in 1.6 branch.]'s were decided not to be + the best way to go about my aim. Removed them in favor of: + + * ChangeLog-branches/1.6_branch.ChangeLog: New file. + + * README.branches: Explains the 1.6_branch.ChangeLog files. + + * README.cvs: Falsely claimed you only needed GNU autoconf to + build from the CVS sources. You also need GNU gettext and + texinfo. I also did a bunch of general re-writing of this file. + +2001-01-03 Dan Harkless + + * TODO: We should make a simple man page referring to info doco. + +2000-12-31 Dan Harkless + + * README: Changed 1.5.3 in the FTP URL to 1.6. + + * NEWS: Released Wget version 1.6. + + * po/*.po: 'Project-Id-Version's were very haphazard, saying + either "wget" or "GNU wget", and with versions of 1.5.2-b[124], + 1.5.3, the nonexistent 1.5.4, and 1.6-pre. Standardized all to + "GNU Wget 1.7-dev". Perhaps this is wrong to do because some of + the translations haven't been updated since the versions they + state, but I know some of the files were updated specifically for + 1.6, and none of them used this version (unless you count the sole + "1.6-pre" guy). In any case, the 'POT-Creation-Date's and + 'PO-Revision-Date's remain the best indicator of whether a + translation's out of date. + + * ChangeLog: Since this flat file doesn't have multiple branches, + looking at the dates would make you think that things went into + 1.6 that actually just went into the 1.7-dev branch. Added "[Not + in 1.6 branch.]" where appropriate to clarify. + +2000-12-18 Csaba Raduly + + * windows/Makefile.watcom: Updated. + +2000-12-10 Hrvoje Niksic + + * po/POTFILES.in: Updated. + +2000-12-10 Hrvoje Niksic + + * configure.in: Add windows/Makefile to the output block. + + * windows/Makefile.in: New file. + + * README.cvs: New file. + +2000-11-25 Karl Eichwalder + + * Makefile.in (SUBDIRS): Add 'windows'. + (dist, DISTFILES): Don't distribute CVS directories. + +2000-12-05 Hrvoje Niksic + + * configure.in: Don't unconditionally define HAVE_SSL, even when + --with-ssl is given. + +2000-12-03 Christian Fraenkel + + * INSTALL: Added the --with-ssl switch. + + * configure.in: Ditto. + + * TODO: Removed the corresponding entry. + +2000-11-23 Hrvoje Niksic + + * configure.in: Build ALL_LINGUAS dynamically. + +2000-11-10 Hrvoje Niksic + + * configure.in: Test for MMAP. + +2000-11-16 Hrvoje Niksic + + * windows/config.h.ms: snprintf and vsnprintf exist under Windows. + + * windows/Makefile.src: Back out previous change. + +2000-11-16 Herold Heiko + + * windows/Makefile.src: Compile in vsnprintf.c. + +2000-11-02 Matthew Seaman + + * util/rmold.pl: Various fixes. + +2000-11-01 Hrvoje Niksic + + * configure.in: Check for size of long and long long. + +2000-10-30 Dan Harkless + + * NEWS: Hrvoje pointed out that relative URL grokking deserves mention. + +2000-10-27 Dan Harkless + + * TODO: wget now groks illegal relative URL HTTP redirects. + +2000-10-24 Dan Harkless + + * NEWS: Forgot to update regarding new --bind-address option. + +2000-10-20 Dan Harkless + + * TODO: -k needs to convert '?' to "%3F" in links to saved files + containing the '?' character (e.g. CGI output). Also, we need to + check the HTTP spec w.r.t. simplification of absolute URLs. + Generalize --html-extension to something like --mime-extension. + + * MAILING-LIST: I didn't realize allowed posting + by non-subscribers. soon to be an alias for it. + + * NEWS: Always forget to update this file when making user-vis. changes. + +2000-10-19 Dan Harkless + + * TODO: -E / --html-extension / html_extension has been implemented. + Make -I and -X allow an optional hostname before the directory name? + When simplifying paths, wget needs to stop at any '?' character. + + * configure.in: Put "it" language in proper alphabetical order and + added new languages "pl" and "ru". + + * po/pl.{gmo,po}: Added Grzegorz Kowal 's + Polish message translation file. + + * po/ru.{gmo,po}: Added Const Kaplinsky 's + Russian message translation file. + +2000-10-16 Dan Harkless + + * TODO: Add option to save local filenames without extra %-encoding. + +2000-10-09 Dan Harkless + + * TODO: --retr-symlinks should cause wget to traverse links to dirs too. + +2000-09-25 Dan Harkless + + * TODO: Make wget return nonzero in situations like bad HTTP + auth. Make wget follow (illegal) relative URL HTTP redirects. + +2000-08-30 Dan Harkless + + * po/*.{gmo,po,pot}: Regenerated after modifying wget --help output. + + * MACHINES: Previously said to send updates to "me" (Hrvoje) -- + now says to email the mailing list or bug-wget@gnu.org. + + * MAILING-LIST: Added mention of bug-wget@gnu.org. + + * NEWS: Added --waitretry and --page-requisites. + +2000-08-25 Dan Harkless + + * MACHINES: Alphabetized, changed "architectures" to "OSes and + architectures", added missing company names, removed needless ^L, + made AIX and FreeBSD entries more general to reflect successful + use on those platforms by myself and others, removed the + non-factual "this version of", and fixed some grammatical errors. + +2000-07-21 Dan Harkless + + * TODO: But Brian McMahon wants old behavior as an option. + +2000-07-19 Dan Harkless + + * TODO: -k should convert "hostless absolute" URLs, like "/index.html". + +2000-05-24 Dan Harkless + + * TODO: Timestamps sometimes not copied over on files retrieved by FTP. + +2000-05-22 Dan Harkless + + * AUTHORS: Added myself to this file, as Hrvoje got confirmation + of my FSF copyright assignment. + + * TODO: Added note that fragment identifiers don't work properly. + + * po/*.{gmo,po,pot}: Regenerated after modifying wget --help output. + +2000-05-17 Dan Harkless + + * TODO: Make `-k' check for files that were downloaded in the past + and convert links to them in newly-downloaded documents. + +2000-04-05 Dan Harkless + + * TODO: Make -K only leave .orig files around when different. Add + an option to save all text/html files with .html extension. Allow + mirroring of FTP URLs where logging in puts you somewhere else + besides '/'. + +2000-04-04 Dan Harkless + + * NEWS (--follow-tags, -G / --ignore-tags): Forgot to mention + these new options when I added them. + +2000-03-10 Dan Harkless + + * TODO: Removed done item: we now have an option (-G) that makes + it easy to download a single HTML document and all its constituents. + + * po/*.{gmo,po,pot}: Regenerated after adding new options. + + * po/hr.po: Hrvoje forgot '\n's on his translations of my altered + messages, causing msgfmt to balk and `make install' to fail. + +2000-03-01 Dan Harkless + + * NEWS (-K): Now possible to use -N with -k thanks to this option. + + * TODO: Removed the -K / -N interaction item. + +2000-02-29 Dan Harkless + + * NEWS (-K / --backup-converted): Mentioned this new option. + +2000-02-18 Dan Harkless + + * TODO: When -K is used with -N, check local X.orig against server X. + +1998-06-23 Dave Love + + * configure.in (exext): Define. + +1998-06-06 Hrvoje Niksic + + * configure.in: Check for access(). + +1998-05-20 Hrvoje Niksic + + * po/hr.po: Some fixes, as per suggestions by Francois Pinard. + +1998-05-19 Dominique Delamarre + + * po/fr.po: New file. + +1998-05-19 Toomas Soome + + * po/et.po: Updated. + +1998-05-11 Simos KSenitellis + + * po/el.po: New file. + +1998-05-09 Hrvoje Niksic + + * aclocal.m4 (WGET_WITH_NLS): Print available catalogs. + +1998-05-09 Toomas Soome + + * po/et.po: New file. + +1998-05-06 Douglas E. Wegscheid + + * configure.bat: set up for either Borland or Visual C + + * windows/wget.dep: new file + + * windows/Makefile.*: use wget.dep + + * rename windows/Makefile.bor to Makefile.src.bor + +1998-05-06 Douglas E. Wegscheid + + * windows/makefile.bor: Updated. + + * windows/Makefile.src: Ditto. + +1998-04-30 Douglas E. Wegscheid + + * windows/config.h.bor: New file. + + * windows/makefile.bor: New file. + +1998-04-27 John Burden + + * windows/Makefile.*: Cleanup. + +1998-04-27 Gregor Hoffleit + + * configure.in: Check for PID_T. + +1998-04-19 Giovanni Bortolozzo + + * po/it.po: Updated. + +1998-04-19 Jan Prikryl + + * po/cs.po: Updated. + +1998-04-19 Wanderlei Cavassin + + * po/pt_BR.po: Updated. + +1998-04-08 Stefan Hornburg + + * Makefile (dist): New target. + +1998-04-08 Wanderlei Cavassin + + * po/pt_BR.po: Updated. + +1998-04-04 Hrvoje Niksic + + * aclocal.m4 (WGET_WITH_NLS): Renamed USE_NLS to HAVE_NLS. + + * ABOUT-NLS: Removed. + + * Makefile.in (stamp-h): Clean up stamp-h-related dependencies. + Don't attempt to write to stamp-h.in. + + * aclocal.m4 (WGET_PROCESS_PO): Reset srcdir to ac_given_srcdir. + +1998-04-03 Hrvoje Niksic + + * Makefile.in (distclean-top): Remove stamp-h. + +1998-04-02 Robert Schmidt + + * po/no.po: New file. + +1998-04-01 Hrvoje Niksic + + * configure.in: New option `--disable-debug'. + +1998-03-31 Hrvoje Niksic + + * configure.in: Check for endianness. + +1998-03-29 Hrvoje Niksic + + * aclocal.m4 (WGET_PROCESS_PO): Use echo instead of AC_MSG_RESULT. + +1998-03-28 Hrvoje Niksic + + * aclocal.m4 (WGET_WITH_NLS): Disable USE_NLS if gettext is + unavailable. + + * aclocal.m4: Renamed AM_STRUCT_UTIMBUF to WGET_STRUCT_UTIMBUF; + renamed AM_WITH_NLS to WGET_WITH_NLS. + + * aclocal.m4: Eliminate POSUBS. + +1998-03-17 Hrvoje Niksic + + * Makefile.in: config.h* -> src/config.h* + + * configure.in: Check for vsnprintf(). + + * po/POTFILES.in: Updated. + +1998-03-16 Hrvoje Niksic + + * po/POTFILES.in: Removed extraneous newline at end of line, which + caused an error in `Makefile' which Sun make choked on. + +1998-03-16 Jan Prikryl + + * po/cs.po: New file. + +1998-03-12 Wanderlei Cavassin + + * po/pt_BR.po: New file. + +1998-03-07 Hrvoje Niksic + + * PROBLEMS: New file. + +1998-02-22 Karl Eichwalder + + * po/Makefile.in.in (install-data-yes): Fix creation of + directories for LC_MESSAGE files. + +1998-02-22 Hrvoje Niksic + + * configure.in: Removed `-Wno-switch' for gcc. + + * po/Makefile.in.in (install-data-yes): Use mkinstalldirs to + create the directory first. + +1998-02-21 Karl Eichwalder + + * po/de.po: Updated. + +1998-02-19 Hrvoje Niksic + + * Makefile.in (check): New empty target. + +1998-02-11 Hrvoje Niksic + + * po/it.po: New file, by Antonio Rosella. + +1998-02-08 Hrvoje Niksic + + * aclocal.m4: Cleaned up. + + * po/hr.po: Updated. + + * configure.in: Removed check for POSIXized ISC. + +1998-02-08 Karl Eichwalder + + * po/de.po: Updated. + +1998-02-07 Karl Eichwalder + + * Makefile.in (install.info uninstall.info install.man + uninstall.man install.wgetrc): Use it. + + * Makefile.in (install.mo): New target. + +1998-02-03 Karl Eichwalder + + * po/POTFILES.in: Touch it (needed for NLS); add src/ftp.c, + src/getopt.c, src/host.c, src/html.c, src/http.c, src/init.c, + src/main.c, src/mswindows.c, src/netrc.c, src/recur.c, src/retr.c, + src/url.c, and src/utils.c. + + * intl/po2tbl.sed.in: Add from gettext-0.10.32 (needed for NLS). + + * po/Makefile.in.in: Add from gettext-0.10.32. + + * Makefile.in (SUBDIRS): Add po/. + + * configure.in (ALL_LINGUAS): New variable. Add "de" and "hr". + (AM_GNU_GETTEXT): Add. + (AC_OUTPUT): Add po/Makefile.in; run the sed command. + + * aclocal.m4 (AM_WITH_NLS, AM_GNU_GETTEXT, AM_LC_MESSAGES, + AM_PATH_PROG_WITH_TEST): from gettext-0.10.32. + diff --git a/doc/ChangeLog-branches/1.10_branch.ChangeLog b/doc/ChangeLog-branches/1.10_branch.ChangeLog new file mode 100644 index 00000000..651e7db5 --- /dev/null +++ b/doc/ChangeLog-branches/1.10_branch.ChangeLog @@ -0,0 +1,981 @@ +2005-05-30 Hrvoje Niksic + + * wget.texi (HTTP Options): Removed statement that redirect in + response to POST is "technically disallowed", which I cannot find + in rfc2616 nor in rfc1945. Even if that were technically the + case, the widespreadedness of such responses would make the + prohibition irrelevant. + +2005-05-14 Hrvoje Niksic + + * wget.texi (Overview): Document --[no-]proxy as primarily being + used to turn *off* the use of proxies. + +2005-05-11 Hrvoje Niksic + + * wget.texi (HTTPS (SSL/TLS) Options): Explain certificate + checking in more detail. + +2005-05-08 Hrvoje Niksic + + * texi2pod.pl.in: Allow an "EXAMPLES" section. + +2005-05-06 Hrvoje Niksic + + * wget.texi (HTTP Options): Document empty user-agent. + +2005-05-06 Hrvoje Niksic + + * wget.texi (Download Options): Explain that the read timeout + really refers to idle timeout. + (Download Options): Mention that decimal and subsecond values may + be used for timeouts. + +2005-05-05 Hrvoje Niksic + + * wget.texi: We're using GFDL 1.2, not 1.1. + +2005-05-05 Hrvoje Niksic + + * wget.texi (Contributors): Updated. + +2005-04-27 Hrvoje Niksic + + * wget.texi (Download Options): Fix bind address cindex entry that + broke concept index generation. + +2005-04-27 Mauro Tortonesi + + * wget.texi: Fixed a broken reference to Security Considerations + section in tex-generated documents (like the man page). + +2005-04-27 Mauro Tortonesi + + * wget.texi: Document --user, --password, --ftp-user and the + corresponding Wgetrc command. Renamed --ftp-passwd to --ftp-password, + --http-passwd to --http-passwd and --proxy-passwd to proxy_password. + Renamed ftp_passwd to ftp_password, http_passwd to http_passwd and + proxy_passwd to proxy_password. Removed documentation for the + deprecated login command. + +2005-04-27 Hrvoje Niksic + + * wget.texi (HTTPS (SSL/TLS) Options): Document --random-file. + +2005-04-27 Hrvoje Niksic + + * wget.texi: Improve wording of command descriptions. + +2005-04-27 Hrvoje Niksic + + * wget.texi (HTTP Options): Mention --keep-session-cookies when + documenting --post-data. + +2005-04-27 Hrvoje Niksic + + * wget.texi: Document the new form of SSL/TLS options. + +2005-04-26 Hrvoje Niksic + + * wget.texi (HTTP Options): Improved entry on + --keep-session-cookies. + +2005-04-26 Hrvoje Niksic + + * wget.texi (Directory Options): Removed stray text after + --protocol-directories. + +2005-04-26 Hrvoje Niksic + + * wget.texi (Option Syntax): Document boolean options. Include + the option syntax in the man page. + (Directory Options): Removed stray text after --protocol-directories. + +2005-04-25 Hrvoje Niksic + + * wget.texi (Advanced Usage): Don't advertise the non-existent + `-s' option. + +2005-04-25 Hrvoje Niksic + + * wget.texi (Download Options): Document --retry-connrefused. + +2005-04-25 Hrvoje Niksic + + * Makefile.in (wget.info): Depend on version.texi as well. + + * wget.texi: Simplify copyright. Replace remaining instances of + --OPTION=off with --no-OPTION. + +2005-04-24 Hrvoje Niksic + + * wget.texi (Download Options): Document --prefer-family. + +2005-04-24 Hrvoje Niksic + + * wget.texi (Download Options): Don't claim that -6 accepts mapped + IPv4 addresses. + +2005-04-23 Hrvoje Niksic + + * wget.texi: Documented the SSL command-line options. + +2005-04-23 Hrvoje Niksic + + * wget.texi (Wgetrc Commands): Document ftp_passwd. + (FTP Options): Document --ftp-passwd. + +2005-04-23 Hrvoje Niksic + + * texi2pod.pl.in: First process @@ then @}, so @samp{-wget@@} is + interpreted correctly. + +2005-04-20 Hrvoje Niksic + + * wget.texi: Document behavior of -6 wrt mapped IPv4 addresses. + +2005-04-20 Hrvoje Niksic + + * wget.texi: Document IPv6 related options. + +2005-04-18 Hrvoje Niksic + + * wget.texi: Update mailing list information. + +2005-04-18 Hrvoje Niksic + + * wget.texi (Download Options): Don't claim that --no-dns-cache is + necessary for dyndns servers -- it's not. + +2005-04-08 Larry Jones + + * Makefile.in (wget.info): Don't use $< in an explicit rule. + +2005-03-22 Joseph Caretto + + * texi2pod.pl.in: Handle asis again. It used to work (see the + 2001-12-11 entry), but the local change was lost in the upgrade + to 1.4. + +2005-02-11 Mauro Tortonesi + + * wget.texi: Added Simone Piunno as new contributor. + +2005-01-01 Mauro Tortonesi + + * wget.texi: Updated copyright information, added new contributors. + +2004-11-20 Hans-Andreas Engel + + * wget.texi: Describe limitations of combining `-O' with `-k'. + +2004-05-13 Nico R. + + * Makefile.in: Allow building in a separate tree with source tree + write-protected. + +2004-02-22 Hrvoje Niksic + + * wget.texi (Contributors): Updated. + +2004-02-12 Jens Roesner + + * wget.texi (Wgetrc Commands): Document `-e' here. + +2004-02-08 Hrvoje Niksic + + * wget.texi (Security Considerations): Put @item contents on a + separate line. + Reported by Ted Rodriguez-Bell. + +2004-02-06 Hrvoje Niksic + + * wget.texi (Wgetrc Commands): Document --no-http-keep-alive and + the corresponding Wgetrc command. + +2003-12-06 Hrvoje Niksic + + * wget.texi (Download Options): Don't incorrectly claim that `-O' + sets the number of retries to 1. + +2003-12-06 Hrvoje Niksic + + * wget.texi: Document the new option `--protocol-directories'. + +2003-11-15 Hrvoje Niksic + + * wget.texi (Portability): Update slightly. + +2003-11-15 Hrvoje Niksic + + * wget.texi: Documented that --dont-remove-listing is now + --no-remove-listing. + +2003-11-14 Hrvoje Niksic + + * fdl.texi: New file. + + * wget.texi: Upgrade to GNU Free Documentation License 1.2. + +2003-11-09 Hrvoje Niksic + + * wget.texi: Remove next/previous/up node links. Makeinfo doesn't + require them, and they make the document harder to modify. + +2003-11-09 Hrvoje Niksic + + * wget.texi: No longer document options -s, -C, -g, and -G. + (Contributors): Update my email address. + +2003-11-05 Hrvoje Niksic + + * wget.texi (HTTP Options): Document `--keep-session-cookies'. + +2003-10-26 Hrvoje Niksic + + * wget.texi (Wgetrc Commands): Fixed typo. + From DervishD . + +2003-10-24 Hrvoje Niksic + + * Makefile.in (install.info): Handle the case when only wget.info + is generated from wget.texi. In that case, wget.info-*[0-9] + doesn't match anything and therefore ends up as a bogus value of + FILE in the loop. Fix this by not calling INSTALL_DATA on + nonexistent files. + +2003-10-07 Hrvoje Niksic + + * wget.texi (HTTP Options): Documented --post-file and + --post-data. + +2003-10-01 Hrvoje Niksic + + * wget.texi: Renamed prep.ai.mit.edu to ftp.gnu.org. + +2003-10-01 Hrvoje Niksic + + * wget.texi (Contributors): Updated from ChangeLog entries. + +2003-09-21 Aaron S. Hawley + + * wget.texi: Split version to version.texi. Tweak documentation's + phrasing and markup. + +2003-09-21 Hrvoje Niksic + + * wget.texi: Documented the new timeout options. + +2003-09-19 Hrvoje Niksic + + * wget.texi: Changed @itemx not preceded by @item to @item. + +2003-09-17 Hrvoje Niksic + + * wget.texi (Download Options): Explain how --tries works by + default. + +2003-09-17 Hrvoje Niksic + + * wget.texi (Download Options): Explain new --restrict-file-names + semantics. + +2003-09-16 Hrvoje Niksic + + * wget.texi: Set the man page title to a string more descriptive + than "Wget manual". + +2003-09-16 Hrvoje Niksic + + * Makefile.in ($(TEXI2POD)): Update only the #! line. + + * texi2pod.pl: New version from Gcc. + +2003-09-16 Noel Kothe + + * wget.texi (Download Options): Fix misspelling. + +2003-09-15 Nicolas Schodet + + * wget.texi (Download Options): Add link to Proxies. + +2003-09-14 Hrvoje Niksic + + * wget.texi (Download Options): Document the new option + --restrict-file-names and the corresponding wgetrc command. + +2003-09-10 Hrvoje Niksic + + * wget.texi (Download Options): Documented new option --dns-cache. + +2002-04-24 Hrvoje Niksic + + * wget.texi (Robot Exclusion): Explain how to turn off the robot + exclusion support from the command line. + (Wgetrc Commands): Explain that the `robots' variable also takes + effect on the "nofollow" matching. + +2002-04-15 Hrvoje Niksic + + * wget.texi (Download Options): Fix the documentation of + `--progress'. + +2002-04-14 Hrvoje Niksic + + * wget.texi (Wgetrc Commands): Document `--limit-rate'. + +2002-04-10 Hrvoje Niksic + + * wget.texi: Warn about the dangers of specifying passwords on the + command line and in unencrypted files. + +2001-12-16 Hrvoje Niksic + + * wget.texi (Wgetrc Commands): Undocument simple_host_check. + +2001-12-13 Hrvoje Niksic + + * wget.texi (Robots): Fix broken URLs that point to the webcrawler + web site. + +2001-12-11 Hrvoje Niksic + + * wget.texi (HTTP Options): Explain how to make IE produce a + `cookies.txt'-compatible file. + Reported by Herold Heiko. + +2001-12-11 Hrvoje Niksic + + * texi2pod.pl.in: Handle @asis in table. + +2001-12-09 Hrvoje Niksic + + * wget.texi: Bump version to 1.8. + +2001-12-08 Hrvoje Niksic + + * wget.texi (HTTP Options): Provide more specific information + about how --load-cookies is meant to be used. + +2001-12-08 Hrvoje Niksic + + * texi2pod.pl: Include the EXAMPLES section. + + * wget.texi (Overview): Shorten the man page DESCRIPTION. + (Examples): Redo the Examples chapter. Include it in the man + page. + +2001-12-01 Hrvoje Niksic + + * wget.texi: Update the manual with the new recursive retrieval + stuff. + +2001-11-30 Ingo T. Storm + + * sample.wgetrc: Document ftp_proxy, too. + +2001-11-04 Alan Eldridge + + * wget.texi: Document --random-wait, randomwait=on/off. + +2001-11-23 Hrvoje Niksic + + * wget.texi (Download Options): Document the new `--progress' + option. + +2001-11-22 Hrvoje Niksic + + * wget.texi (Proxies): Fix typo. + (Proxies): Sync the text with the example. + (Wgetrc Commands): There is no -f option. It's --follow-ftp. + Reported by Wojtek Kotwica. + +2001-11-17 Hrvoje Niksic + + * Makefile.in (install.info): If info files from the build + directory are not available, use the ones from $(srcdir). + +2001-11-16 Peter Farmer + + * Makefile.in: Use $? instead of $<. Use TEXI2POD more + consistently. + +2001-06-16 Hrvoje Niksic + + * wget.texi: Updated version to 1.7.1. + +2001-06-15 Hrvoje Niksic + + * Makefile.in (install.wgetrc): Use $(DESTDIR) when testing + whether $(WGETRC) exists. + +2001-06-15 Adam J. Richter + + * Makefile.in (install.wgetrc): Make `make install' + non-interactive in all cases. + +2001-06-15 Hrvoje Niksic + + * Makefile.in (install.wgetrc): Take $(DESTDIR) into account when + running mkinstalldirs. + +2001-06-05 Jan Prikryl + + * Makefile.in (wget.info): Added -I$(srcdir) to support compilation + outside the source tree. + (install.man): Replaced $(srcdir)$(MAN) with $(MAN). The former + did not work when compiling outside the source tree. + +2001-05-26 Hrvoje Niksic + + * wget.texi: Updated version to 1.7. + +2001-05-31 Hrvoje Niksic + + * wget.texi (Mailing List): Fix the mailing list address. + +2001-05-27 Hrvoje Niksic + + * wget.texi (Copying): Clarify. Link to + "free-software-for-freedom.html". + +2001-05-26 Hrvoje Niksic + + * wget.texi (Contributors): Updated list of contributors. + +2001-05-26 Hrvoje Niksic + + * wget.texi: Updated version to 1.7-pre1. + +2001-04-28 Hrvoje Niksic + + * wget.texi (Wgetrc Commands): Update docs for `continue'. + +2001-04-27 Hrvoje Niksic + + * wget.texi (HTTP Options): Document cookie options. + +2001-01-20 Karl Eichwalder + + * Makefile.in: Provide and use DESTDIR according to the Coding + Standards. + +2001-04-01 Hrvoje Niksic + + * wget.texi (Recursive Retrieval Options): Document more + accurately what --convert-links does. + +2001-03-27 Dan Harkless + + * Makefile.in: Moved top_builddir out of "User configuration + section" of top Makefile and analogous spot in this one. + +2001-03-26 Dan Harkless + + * wget.texi (Recursive Retrieval Options): Explained that you need + to use -r -l1 -p to get the two levels of requisites for a + page. Also made a few other wording improvements. + +2001-03-17 Dan Harkless + + * Makefile.in: Using '^' in the sed call caused a weird failure on + Solaris 2.6. Changed it to a ','. Defined top_builddir. + +2001-02-23 Dan Harkless + + * wget.texi: Corrections, clarifications, and English fixes to + time-stamping documentation. Also moved -nr from "Recursive + Retrieval Options" to "FTP Options" and gave it a @cindex entry. + Alphabetized FTP options by long option name. Mentioned that + .listing symlinked to /etc/passwd is not a security hole, but that + other files could be, so root shouldn't run wget in user dirs. + +2001-02-22 Dan Harkless + + * Makefile.in: Make wget man page and install it if we have + pod2man. Added some missing '$(srcdir)/'s. Added missing + dependencies on install targets (allowing you to just do `make + install' rather than forcing you to do `make && make install'). + Also, Makefile rules should always use output file parameters if + available rather than redirecting stdout with '>', or you falsely + satisfy dependencies if the tool you're running is missing or + fails -- fixed call of texi2pod.pl that did this wrong. + + * texi2pod.pl: Removed from CVS. Now automatically generated. + + * texi2pod.pl.in: This new file is processed into texi2pod.pl, + getting the appropriate path to the Perl 5+ executable on this + system and becoming executable (CVS files, by contrast, don't + arrive executable). + +2001-02-19 Dan Harkless + + * wget.texi (Download Options): Further improvement to --continue + documentation -- explain interaction with -r and -N, mention + usefulness for downloading new sections of appended-to files, etc. + +2001-01-06 Jan Prikryl + + * wget.texi (Reporting Bugs): Deleted the setence about Cc-ing the + bug report to Wget mailing list as the bug report address is an + alias for the mailing ist anyway. + (Mailing List): Added URL for the alternate archive. + + * wget.texi: Bunch of cosmetical changes. + + * Makefile.in: Added targets for manpage generation using + texi2pod.pl and pod2man (comes with Perl5). As we cannot rely on + Perl5 being available on the system, manpage is not being built + automatically. Updated '*clean' targets to remove + 'sample.wgetrc.munged...', 'wget.pod', and 'wget.man'. + + * texi2pod.pl: New file copied from GCC distribution to facilitate + automatic manpage generation. + +2001-01-09 Dan Harkless + + * wget.texi (Download Options): Did a bunch of clarification and + correction to the description of --continue. + +2001-01-06 Dan Harkless + + * ChangeLog: The '[Not in 1.6 branch.]'s were decided not to be + the best way to go about my aim. Removed them in favor of: + + * ChangeLog-branches/1.6_branch.ChangeLog: New file. + +2000-12-31 Dan Harkless + + * Makefile.in (distclean): sample.wgetrc.munged_for_texi_inclusion + needs to be included in the distribution or it'll get regenerated + due to the wget.info dependency, and then that file will get + regenerated, forcing people to have makeinfo installed + unnecessarily. We could use a kludge of a 0-length file in the + distro, but the file isn't that big and should compress very well. + + * wget.texi: Changed "VERSION 1.5.3+dev" to "VERSION 1.7-dev" and + "UPDATED Feb 2000" to "UPDATED Dec 2000". Like the comment in the + file says, it'd be nice if these were handled automatically... + + * ChangeLog: Since this flat file doesn't have multiple branches, + looking at the dates would make you think that things went into + 1.6 that actually just went into the 1.7-dev branch. Added "[Not + in 1.6 branch.]" where appropriate to clarify. + +2000-12-10 Hrvoje Niksic + + * Makefile.in (install.info): Info files are *not* in $(srcdir), + but in the current build dir. + +2000-11-15 Hrvoje Niksic + + * wget.texi (Robots): Document that we now support the meta tag + exclusion. + +2000-11-16 Hrvoje Niksic + + * wget.texi: Use --- consistently. + Spell "Wget" with starting capital letter consistently. + Use ``...'' or @dfn{} instead of simple double quotes where + appropriate. + Use double space as separator between sentences consistently. + +2000-11-15 Hrvoje Niksic + + * wget.texi (Robots): Rearrange text. Mention the meta tag. + +2000-11-14 Hrvoje Niksic + + * wget.texi: Add GFDL; remove norobots specification. + + * wget.texi (Sample Wgetrc): Remove warnings with lateish + makeinfo, mostly by changing xref{} to pxref{} when inside + parentheses. + +2000-11-10 Hrvoje Niksic + + * wget.texi: cc.fer.hr -> srk.fer.hr. + +2000-11-05 Hrvoje Niksic + + * Makefile.in (sample.wgetrc.munged_for_texi_inclusion): Use $(srcdir). + +2000-11-05 Hrvoje Niksic + + * wget.texi: Updated names of contributors. + +2000-10-23 Hrvoje Niksic + + * wget.texi (HTTP Options): Remove Netscape bullying. + +2000-10-23 Dan Harkless + + * wget.texi (Recursive Retrieval Options): Improved --delete-after docs. + (Download Options): Documented Rob Mayoff's new --bind-address option. + (Wgetrc Commands): Documented Rob Mayoff's new bind_address command. + +2000-10-20 Dan Harkless + + * wget.texi (Recursive Retrieval Options): Sugg. -E on 1-page download. + +2000-10-19 Dan Harkless + + * wget.texi (HTTP Options): Documented my new -E / --html-extension. + (Wgetrc Commands): Documented my new html_extension option and + John Daily's "quad" values (which I renamed to "lockable + Boolean"). When I documented Damir Dzeko's --referer, I forgot to + add the .wgetrc equivalent; mentioned the "referrer" spelling issue. + +2000-10-09 Dan Harkless + + * wget.texi (FTP Options): --retr-symlinks wasn't documented properly. + +2000-08-30 Dan Harkless + + * wget.texi (Recursive Retrieval Options): Documented new -p option. + (Wgetrc Commands): Documented -p's equvialent, page_requisites. + +2000-08-23 Dan Harkless + + * wget.texi (Download Options): Using -c on a file that's already fully + downloaded results in an unchanged file and no second ".1" copy. + + * wget.texi (Logging and Input File Options): -B / --base was not + documented as a separate item, and the .wgetrc version was misleading. + + * wget.texi (Wgetrc Commands): Changed all instances of + ", the same as" to the more grammatical " -- the same as". + +2000-08-22 Dan Harkless + + * wget.texi (Download Options): --no-clobber's documentation was + severely lacking -- ameliorated the situation. Some of the + previously-undocumented stuff (like the multiple-file-version + numeric-suffixing) that's now mentioned for the first (and only) + time in the -nc documentation should probably be mentioned + elsewhere, but due to the way that wget.texi's hierarchy is laid + out, I had a hard time finding anywhere else appropriate. + +2000-07-17 Dan Harkless + + * wget.texi (HTTP Options): Minor clarification in "download a + single HTML page and all files necessary to display it" example. + +2000-05-22 Dan Harkless + + * wget.texi (HTTP Options): Damir Dzeko did + not document his new --referer option. Did so. + +2000-04-18 Dan Harkless + + * sample.wgetrc: Realized I put a global setting in the local section. + +2000-04-13 Dan Harkless + + * Makefile.in (sample.wgetrc.munged_for_texi_inclusion): Added + build, dependencies, and distclean cleanup of this new file. + + * sample.wgetrc: Uncommented waitretry and set it to 10, clarified + some wording, and re-wrapped some text to 71 columns due to + @sample indentation in wget.texi. + + * wget.texi: Herold further expounded on the behavior of waitretry + -- reworded docs again. Changed note saying _all_ lines in + sample.wgetrc are commented out. Don't have an entire hand- + cut-and-pasted copy of sample.wgetrc in this file -- use @include. + +2000-04-12 Dan Harkless + + * Makefile.in (install.wgetrc): I completely missed the message + that the new wgetrc wasn't being installed the first couple of + times I ran `make install' after changing sample.wgetrc. Added + blank lines around the message and a "", and reworded the message to be a bit more clear. + + * sample.wgetrc: Added entries for backup_converted and waitretry. + + * wget.texi (Download Options and Wgetrc Commands): Herold Heiko + 's new --waitretry option was + undocumented until now. Reworded the suggested documentation he + sent to the list. + +2000-03-10 Dan Harkless + + * wget.texi (Recursive Retrieval Options): In -K description, + added a link to the discussion of interaction with -N. + (Recursive Accept/Reject Options): Did some alphabetizing and added + descriptions of new --follow-tags and -G / --ignore-tags options. + (Following Links): Changed "the loads of" to "loads of". + (Wgetrc Commands): Added descriptions of new follow_tags and + ignore_tags commands. + +2000-03-02 Daniel S. Lewart + + * wget.texi: Fix spelling and grammatical mistakes. + +2000-03-02 Hrvoje Niksic + + * wget.texi (Contributors): Update contributors list. + +2000-03-01 Dan Harkless + + * wget.texi (HTTP Time-Stamping Internals): Added a note about my + newly-implemented interaction between -K and -N. + +2000-02-29 Dan Harkless + + * wget.texi: Updated version to 1.5.3+dev, updated copyrights to + 2000, changed Hrvoje's old, invalid email address to his new one, + and added " and the developers" to the .texi file's byline. + +2000-02-18 Dan Harkless + + * wget.texi (Recursive Retrieval Options): Documented my new -K / + --backup-converted option. + (Wgetrc Commands): Documented backup_converted equivalent. + +1998-09-10 Hrvoje Niksic + + * wget.texi (HTTP Options): Warn against masquerading as Mozilla. + +1998-05-24 Hrvoje Niksic + + * Makefile.in (clean): Remove HTML files. + +1998-05-13 Hrvoje Niksic + + * wget.texi: Various updates. + (Proxies): New node. + +1998-05-09 Hrvoje Niksic + + * texinfo.tex: New file. + +1998-05-08 Hrvoje Niksic + + * Makefile.in (dvi): New target. + +1998-05-02 Hrvoje Niksic + + * wget.texi (Recursive Retrieval): Fix typo. Suggested by + Francois Pinard. + +1998-04-18 Hrvoje Niksic + + * wget.texi: Fixed @dircategory, courtesy Karl Eichwalder. + +1998-03-31 Hrvoje Niksic + + * Makefile.in: Don't attempt to (un)install the man-page. + +1998-03-30 Hrvoje Niksic + + * wget.1: Removed it. + +1998-03-29 Hrvoje Niksic + + * wget.texi (Invoking): Split into more sections, analogous to + output of `wget --help'. + (HTTP Options): Document --user-agent. + +1998-03-16 Hrvoje Niksic + + * wget.texi (Contributors): Updated with oodles of new names. + +1998-02-22 Karl Eichwalder + + * Makefile.in (install.info): only info files (no *info.orig, + etc.). + +1998-01-31 Hrvoje Niksic + + * Makefile.in (install.wgetrc): Don't use `!'. + +1998-01-28 Hrvoje Niksic + + * wget.texi (Advanced Options): Expanded. + +1998-01-25 Hrvoje Niksic + + * wget.texi (Advanced Options): Document `--cache'. + (Contributors): Added Brian. + +1997-07-26 Francois Pinard + + * Makefile.in (install.wgetrc): Print the sample.wgetrc warning + only if the files actually differ. + +1998-01-23 Hrvoje Niksic + + * Makefile.in: Use `test ...' rather than `[ ... ]'. + + * wget.texi (Advanced Options): Explained suffices. + +1998-01-23 Karl Heuer + + * wget.texi (Advanced Options): Updated. + +1997-12-18 Hrvoje Niksic + + * wget.texi (Mailing List): Update. + +1997-04-23 Hrvoje Niksic + + * wget.texi (Advanced Options): Document `--follow-ftp'. + +1997-02-17 Hrvoje Niksic + + * wget.texi (Advanced Options): Document --proxy-user and + --proxy-passwd. + +1997-02-14 Karl Eichwalder + + * Makefile.in (install.wgetrc): Never ever nuke an existing rc file. + +1997-02-02 Hrvoje Niksic + + * wget.texi: Updated and revised. + + * wget.texi (Contributors): Update. + (Advanced Options): Removed bogus **/* example. + + * wget.texi: Use ``...'' instead of "...". + +1997-02-01 Hrvoje Niksic + + * wget.texi (Domain Acceptance): Document --exclude-domains. + +1997-01-21 Hrvoje Niksic + + * wget.texi (Advanced Options): Document --ignore-length. + +1997-01-20 Hrvoje Niksic + + * wget.texi (Time-Stamping): New node. + +1997-01-12 Hrvoje Niksic + + * Makefile.in (distclean): Don't remove wget.info*. + +1997-01-08 Hrvoje Niksic + + * wget.texi (Mailing List): Update archive. + (Portability): Update the Windows port by Budor. + +1996-12-21 Hrvoje Niksic + + * wget.texi (Security Considerations): New node. + +1996-12-19 Hrvoje Niksic + + * wget.texi (Advanced Options): Document --passive. + +1996-12-12 Dieter Baron + + * wget.texi (Advanced Usage): Would reference prep instead of + wuarchive. + +1996-11-25 Hrvoje Niksic + + * wget.texi (Advanced Options): Documented --retr-symlinks. + +1996-11-23 Hrvoje Niksic + + * wget.texi (Advanced Options): Document --delete-after. + +1996-11-22 Hrvoje Niksic + + * wget.texi (Portability): Add IRIX and FreeBSD as the "regular" + platforms. + +1996-11-20 Hrvoje Niksic + + * wget.texi (Advanced Usage): Document dot-style. + +1996-11-18 Hrvoje Niksic + + * wget.texi (Advanced Usage): Dot customization example. + (Sample Wgetrc): Likewise. + +1996-11-16 Hrvoje Niksic + + * wget.texi (Wgetrc Syntax): Explained emptying lists. + +1996-11-13 Hrvoje Niksic + + * wget.texi (Advanced Options): Document includes/excludes. + (Wgetrc Commands): Likewise. + +1996-11-10 Hrvoje Niksic + + * wget.texi (Advanced Options): Document headers. + +1996-11-07 Hrvoje Niksic + + * sample.wgetrc: Added header examples. + +1996-11-06 Hrvoje Niksic + + * sample.wgetrc: Rewritten. + + * Makefile.in (install.wgetrc): Install sample.wgetrc. + (uninstall.info): Use $(RM). + +1996-11-06 Hrvoje Niksic + + * wget.texi: Docfixes. + +1996-11-03 Hrvoje Niksic + + * wget.texi: Proofread; *many* docfixes. + +1996-11-02 Hrvoje Niksic + + * wget.texi (Introduction): Updated robots mailing list address. + +1996-11-01 Hrvoje Niksic + + * wget.texi: Minor docfixes. + +1996-10-26 Hrvoje Niksic + + * wget.texi (Advanced Usage): Document passwords better. + + * Makefile.in (distclean): Remove wget.1 on make distclean. + + * wget.texi (Option Syntax): Explain --. + +1996-10-21 Hrvoje Niksic + + * fetch.texi (No Parent): update. + +1996-10-18 Hrvoje Niksic + + * fetch.texi (Advanced Options): Docfix. + +1996-10-17 Tage Stabell-Kulo + + * geturl.texi (Advanced Options): Sort alphabetically. + +1996-10-16 Hrvoje Niksic + + * geturl.texi (Advanced Options): Describe -nr. + (Advanced Usage): Moved -O pipelines to Guru Usage. + (Simple Usage): Update. + (Advanced Options): Docfix. + + * Makefile.in (RM): RM = rm -f. + +1996-10-15 Hrvoje Niksic + + * geturl.texi (Guru Usage): Add proxy-filling example. + +1996-10-12 Hrvoje Niksic + + * geturl.texi (Advanced Options): Added --spider. + +1996-10-08 Hrvoje Niksic + + * geturl.texi (Advanced Options): Added -X. + + * Makefile.in: Added $(srcdir) where appropriate (I hope). diff --git a/src/ChangeLog-branches/1.10_branch.ChangeLog b/src/ChangeLog-branches/1.10_branch.ChangeLog new file mode 100644 index 00000000..023fec49 --- /dev/null +++ b/src/ChangeLog-branches/1.10_branch.ChangeLog @@ -0,0 +1,9588 @@ +2005-05-30 Hrvoje Niksic + + * url.c (strpbrk_or_eos): Check for a recent GCC version before + using the statement-as-expression extension. + +2005-05-30 Hrvoje Niksic + + * http.c (gethttp): Don't attempt to "skip short body" if we're + issuing a HEAD request (in which case the response head is not + followed by a body). + +2005-05-30 Hrvoje Niksic + + * init.c (cmd_spec_header): Don't split the string along the + commas using cmd_vector; just append the new value using + vec_append instead. + + * utils.c (vec_append): New function. + +2005-05-27 Andreas Beckmann + + * html-url.c (tag_handle_link): Mark the content from the tag as expecting HTML. + +2005-05-24 Hrvoje Niksic + + * http.c (http_atotm): Document the origin of the "cookie date" + format. + +2005-05-21 Hrvoje Niksic + + * init.c (setval_internal): Report exact command name alongside + the "display name". + +2005-05-18 Hrvoje Niksic + + * cookies.c (update_cookie_field): Explicitly cast -1 to time_t to + cope with systems where time_t is unsigned. + + * cookies.c: Remove unnecessary casts to time_t from values + already of that type. + +2005-05-17 Hrvoje Niksic + + * ftp.c (ftp_loop_internal): Same here. + + * http.c (http_loop): Don't clobber the file when -c is specified + and the first attempt to retrieve the file fails. + +2005-05-16 Hrvoje Niksic + + * openssl.c (ssl_check_certificate): Print all issues with a + certificate. + +2005-05-16 Hrvoje Niksic + + * ftp-basic.c: Don't xfree() the line returned by ftp_response if + the returned code is not FTPOK. + +2005-05-16 Hrvoje Niksic + + * init.c (cleanup): Don't free the non-existent opt.ftp_acc. Free + the SSL-related stuff. + +2005-05-16 Hrvoje Niksic + + * ftp.c (print_length): Consistently print \n at end of the + "Length" line. + +2005-05-14 Hrvoje Niksic + + * openssl.c (ssl_connect): Announce the beginning and the end of + the SSL handshake when in debug mode. + + * wget.h (PTR_FORMAT): New macro for easier printing of pointer + values. Use %0*lx along with PTR_FORMAT instead of %p. + +2005-05-14 Hrvoje Niksic + + * http.c (gethttp): Would forget to close the connection when + keep_alive was not used. + +2005-05-13 Hrvoje Niksic + + * openssl.c (pattern_match): Document the code that decides + whether "*" matches ".". + +2005-05-12 Hrvoje Niksic + + * ftp-ls.c (ftp_index): Use %d to print the port number, which is + now int. + From Steven M. Schweda's VMS patches. + +2005-05-12 Hrvoje Niksic + + * url.c (rewrite_shorthand_url): Don't rewrite "https://host" to + "ftp://https//host" when SSL is not used. + +2005-05-11 Hrvoje Niksic + + * openssl.c (ssl_check_server_identity): Renamed to + ssl_check_certificate because it does more than just checking the + server's identity. + (ssl_check_certificate): Tell the user about + --no-check-certificate. + +2005-05-11 Hrvoje Niksic + + * openssl.c (ssl_init): Always use SSL_VERIFY_NONE, so that the + handshake finishes even if the certificate is invalid. That way + ssl_check_server_identity can provide better diagnostics on why + the verification failed. + +2005-05-11 Hrvoje Niksic + + * openssl.c (pattern_match): New function. + (ssl_check_server_identity): Treat peer certificate common name as + wildcard. + +2005-05-10 Hrvoje Niksic + + * openssl.c (ssl_check_server_identity): Print certificate subject + and issuer. + +2005-05-10 Hrvoje Niksic + + * res.c (res_register_specs): Correctly pass pointers to + hash_table_get_pair. + +2005-05-10 Hrvoje Niksic + + * http.c (gethttp): Call ssl_check_server_identity. + + * openssl.c (ssl_check_server_identity): New function, verifies + that the host name in the certificate matches the actual host + name. + (verify_cert_callback): Removed, since it didn't do anything + except returning the preverify_ok argument. + + * connect.c (fd_transport_context): Allow retrieval of the context + pointer registered with fd_register_transport. + +2005-05-09 Hrvoje Niksic + + * openssl.c (verify_cert_callback): Renamed from verify_callback. + Always return the received "ok" value. Print the X509 name in + debug mode. + (ssl_init): Enable partial writes in SSL context. + +2005-05-08 Hrvoje Niksic + + * http.c (http_loop): Check for wildcards in the URL path + component, not in the whole URL. + + * ftp.c (ftp_loop): Check for wildcards in URL path before + unescaping, so the users can escape globbing metacharacters with % + escapes. + +2005-05-08 Hrvoje Niksic + + * init.c (run_command): Correctly interpret the return value of + parse_line. + (commands): Re-alphabetize. + +2005-05-08 Hrvoje Niksic + + * netrc.c (parse_netrc): Explicitly check for assignment != NULL + to silence warning from Borland C. + + * url.c (sync_path): Don't unnecessarily increment p. + (url_parse): Don't unnecessarily set url_encode to NULL just + prior to return from the function. + +2005-05-08 Hrvoje Niksic + + * log.c (escnonprint_internal): Place variable declarations + before other statements. + +2005-05-08 Hrvoje Niksic + + * html-url.c: Include recur.h. + + * http.c (request_new): Define as accepting no args. + +2005-05-07 Hrvoje Niksic + + * url.c (strpbrk_or_eos): Made inline. Use strchr(s, '\0') for + finding the NUL char position. + +2005-05-07 Hrvoje Niksic + + * url.c (decide_copy_method): Renamed to char_needs_escaping. + Since it now returns only two possible values, change it to return + boolean (int). + +2005-05-07 Hrvoje Niksic + + * ftp-basic.c (ftp_request): Prevent newlines in VALUE causing + inadvertent sending of multiple FTP commands. + +2005-05-07 Hrvoje Niksic + + * url.c (decide_copy_method): Never cause reencode_escapes to + decode % escapes; it is too intrusive and breaks some servers. + +2005-05-07 Hrvoje Niksic + + * http.c (gethttp): When tunnelling SSL traffic over proxy with + CONNECT, we're really talking to the remote server directly. + Because of this, the request-line argument must be the URL path + rather than the whole URL, as it would be when using regular + proxies. + Reported by Charles Lane. + +2005-05-06 Hrvoje Niksic + + * init.c (cmd_spec_useragent): Allow empty User-Agent. + + * http.c (gethttp): Don't print "unknown authentication scheme" + for failed Basic authentication. + (SET_USER_AGENT): Don't set user-agent if opt.useragent is empty. + (gethttp): Use alloca for allocation of www_authenticate. + +2005-05-06 Hrvoje Niksic + + * main.c (print_help): Fix wording of --secure-protocol help text. + +2005-05-06 Hrvoje Niksic + + * cmpt.c (strstr): Updated from glibc 2.3.5. + +2005-05-05 Hrvoje Niksic + + * http.c (http_atotm): Zero out the whole struct tm being passed + to strptime. + +2005-05-05 Hrvoje Niksic + + * main.c (main): Propagate option name to setoptval. + + * init.c (setoptval): Accept another argument, OPTNAME. Propagate + that argument as the option name independently of the actual + command, determined by command_by_name(com). + +2005-05-05 Hrvoje Niksic + + * init.c (parse_line): Make the return value indicate whether + there was a syntax error or a setter failed. + (run_wgetrc): Return an indication on whether an error has been + encountered. + (initialize): Abort if there have been errors running either + .wgetrc file. + +2005-05-05 Hrvoje Niksic + + * log.c (copy_and_escape): Slightly reduce code repetition between + the two loops. + +2005-05-05 Charles C.Fu + + * utils.c (proclist): Strip leading slash when calling fnmatch + too, otherwise wildcard comparisons always fail. + +2005-05-05 Hrvoje Niksic + + * utils.c (touch): Set access time to current time. + +2005-05-05 Hrvoje Niksic + + * url.c (url_unescape): Don't unescape %00, it effectively + truncates the string. + +2005-05-05 Hrvoje Niksic + + * log.c (copy_and_escape): Replace the FOR_URI argument with a + slightly more general mechanism for specifying different kinds of + escape. + +2005-05-05 Hrvoje Niksic + + * ftp-basic.c (ftp_response): Fix printing FTP server response. + +2005-05-05 Hrvoje Niksic + + * retr.c (limit_bandwidth_reset): Reset sleep_adjust. + (limit_bandwidth): Don't allow huge "adjustment" values that + result from being suspended for a while. + +2005-05-04 Hrvoje Niksic + + * wget.h: If gettext was found but libtintl.h wasn't, declare + gettext's return type to avoid type mismatches. + +2005-05-03 Hrvoje Niksic + + * url.c (url_parse): Rename label `error' to avoid conflict with + identifier. + + * retr.c (fd_read_body): Rename label `out' to avoid conflict with + identifier. + (fd_read_hunk): Use explicit double constant. + (retrieve_from_file): Don't use string concatenation. + (sleep_between_retrievals): Make sure xsleep is called with a + `double' argument. + (no_proxy_match): Define as static, like it is declared. + + * progress.c (bar_create): Use 0.0 instead of 0 because K&R + compilers can't automatically promote it. + + * http-ntlm.c (ntlm_output): Replace \xHH sequences with \OOO for + the sake of old compilers. + + * ftp.c (ftp_loop_internal): Don't use string concatenation. + + * http.c (request_send): Use explicit double constants when + calling fd_read and fd_write. + (post_file): Ditto. + (gethttp): Ditto. + (skip_short_body): Ditto. + + * ftp-basic.c: When calling fd_write, specify the last argument as + a `double' constant for the sake of K&R compilers which don't see + the prototype and therefore can't promote it to double + automatically. + + * cookies.c (cookie_jar_load): Rename abort label to abort_cookie + to avoid name conflict in K&R compilers. + +2005-04-29 Hrvoje Niksic + + * ptimer.c (posix_init): Since we allow _POSIX_MONOTONIC_CLOCK==0, + it is not enough to check for _POSIX_MONOTONIC_CLOCK-0, we must + also check for defined(_POSIX_MONOTONIC_CLOCK). + +2005-04-28 Hrvoje Niksic + + * ftp.c, hash.c, connect.c, host.c, http.c: Remove unreached code, + such as "break" following return or abort. + +2005-04-28 Hrvoje Niksic + + * init.c (commands): Wrap the use of opt.random_file in #ifdef + HAVE_SSL. + +2005-04-28 Hrvoje Niksic + + * http.c (gethttp): Correctly set the user agent. + +2005-04-27 Hrvoje Niksic + + * init.c (cmd_spec_useragent): Free the old value of + opt.useragent before setting the new one. + +2005-04-27 Mauro Tortonesi + + * main.c: Map --ftp-password, --http-password and --proxy-password to + the new ftppassword, httppassword and proxypassword commands + respectively. Document the --user and --password options in the help + string. + +2005-04-27 Mauro Tortonesi + + * ftp.c: Add support for --user and --password. + + * http.c: Add support for --user and --password. + + * init.c: Deprecated ftppasswd, httppasswd, login, passwd and + proxypasswd commands. Added ftppassword, ftpuser, httppassword, + password, proxypassword and user commands. + + * main.c: Renamed --ftp-passwd to --ftp-password. Added --ftp-user, + --http-password, --password, --proxy-password and --user. Deprecated + --http-passwd and --proxy-passwd. Added documentation for new options + and removed documentation for deprecated options in the help string. + + * options.h (struct options): Added user and passwd members to handle + --user and --password respectively. Renamed ftp_acc and ftp_pass + members to ftp_user and ftp_passwd for consistency. + +2005-04-27 Hrvoje Niksic + + * main.c (print_help): Advertise "DER", not "ASN1". + +2005-04-27 Hrvoje Niksic + + * openssl.c (init_prng): Disable the weak random seed by default. + + * http.c (gethttp): Simplify SSL initialization; disable SSL when + anything goes wrong with the initialization. + + * options.h (struct options): New option opt.random_file. + +2005-04-27 Hrvoje Niksic + + * init.c: Wrap private key commands in IF_SSL. + +2005-04-27 Hrvoje Niksic + + * openssl.c (ssl_init): Ditto. + + * options.h (struct options): Allow separate specification of key + type and certificate type. + + * init.c (cmd_spec_cert_type): Provide a "der" synonym for "asn1" + certificate encoding. + +2005-04-26 Hrvoje Niksic + + * openssl.c: Renamed "gen_sslfunc.c" to "openssl.c" and + "gen_sslfunc.h" to "openssl.h". This reflects the intent of + openssl.c encapsulating the OpenSSL-specific code. + +2005-04-26 Hrvoje Niksic + + * init.c: Renamed "closure" (a synonym for context in some + cultures) to "place", which more accurately reflects the usage. + +2005-04-26 Hrvoje Niksic + + * gen_sslfunc.c (ssl_init): Use default locations for loading the + certificate bundles. + (ssl_init_prng): Disable the cryptographically weak PRNG + initialization fallback. + + * init.c: Renamed SSL command-line arguments and wgetrc commands. + (defaults): Check the server certificate by default. + +2005-04-26 Hrvoje Niksic + + * cookies.c (cookie_handle_set_cookie): Delete the part of the + path after the trailing slash. + + * http.c (gethttp): Call cookie_handle_set_cookie with path that + begins with '/'. + +2005-04-26 Hrvoje Niksic + + * http.c (gethttp): Call skip_short_body only if keep_alive is in + use. + (gethttp): Send the User-Agent header with the CONNECT request as + well. + +2005-04-25 Hrvoje Niksic + + * main.c (option_data): Removed support for the undocumented flag + --use-proxy. + +2005-04-25 Hrvoje Niksic + + * main.c (option_data): Don't treat -Y as a boolean switch; treat + it as a value switch instead, so "-Y off" continues to work. + +2005-04-24 Hrvoje Niksic + + * utils.c (aprintf): Delete unreachable statement. + +2005-04-24 Hrvoje Niksic + + * host.c (cmp_prefer_ipv4): New function. + (cmp_prefer_ipv6): New function. + (lookup_host): Use the appropriate comparator according to + opt.prefer_family. + + * init.c: New option prefer_family. + + * host.c (is_valid_ipv6_address): Spell NS_* constants in lower + case to avoid clash with system headers. + (lookup_host): Reorder the addresses so that IPv4 ones come first. + + * utils.c (stable_sort): New function. + +2005-04-24 Hrvoje Niksic + + * connect.c (retryable_socket_connect_error): Return 0 for + ENETUNREACH and EHOSTUNREACH. + +2005-04-23 Hrvoje Niksic + + * cmpt.c: Reenable the memmove implementation for systems that + lack it. + + * http.c (gethttp): Store the "authorized" state of the persistent + connection. + (request_remove_header): New function. + (gethttp): Don't send the "Basic" authentication if the connection + is already authorized. + +2005-04-23 Hrvoje Niksic + + * utils.c (base64_encode): Treat input as unsigned chars. + Required for correct encoding of binary stuff. + +2005-04-23 Hrvoje Niksic + + * http-ntlm.c: Format the function definitions in an + ansi2knr-friendly fashion. + +2005-04-22 Hrvoje Niksic + + * http.c (gethttp): Handle multiple WWW-Authentication headers, + only one of which is recognized. Those are sent by IIS with NTLM + authorization. + (create_authorization_line): Propagate information whether + authorization is finished. + (gethttp): Only stop authorization when it's really finished, not + after fixed two steps. + +2005-04-21 Hrvoje Niksic + + * gen_sslfunc.c (ssl_init): Fix warning message text; mark the + message as translatable. + +2005-04-21 Hrvoje Niksic + + * main.c (print_help): Print the EGD option outside the cluster of + SSL options. + +2005-04-21 Hrvoje Niksic + + * http-ntlm.c (ntlm_output): Fix setting the domain. + Suggested by Sami Krank. + +2005-04-20 Mauro Tortonesi + + * connect.c: Set IPV6_V6ONLY socket option when -6 switch is used. + +2005-04-20 FUJISHIMA Satsuki + + * http.c (request_set_header): Fix the check whether a new header + needs to be allocated. + +2005-04-18 Hrvoje Niksic + + * utils.c (base64_encode): Use the parameter order that makes more + sense. Return the length of the base64 written. Updated all + callers. + +2005-04-17 Hrvoje Niksic + + * http.c (request_set_header): Free NAME when VALUE is NULL and + freeing the header name is requested. + +2005-04-17 Hrvoje Niksic + + * snprintf.c (fmtstr): Declare VALUE as const char *. + Based on patch by Russ Allbery. + +2005-04-17 Hrvoje Niksic + + * snprintf.c (fmtfp): More correct handling of significant digit + count with %g -- 0.002 has one significant digit, not three. + +2005-04-16 Hrvoje Niksic + + * retr.c (fd_read_body): Respect read timeout with non-interactive + or no progress gauge -- treat ETIMEDOUT specially only when + progress_interactive. + Reported by FUJISHIMA Satsuki. + +2005-04-16 FUJISHIMA Satsuki + + * http.c (gethttp): Don't use HTTP/1.0 persistent connections over + proxy. + +2005-04-16 Hrvoje Niksic + + * snprintf.c: Use the PARAMS macro to handle prototypes. Write + function definitions in the ansi2knr-friendly way. + (fmtstr): If string precision is specified, don't read VALUE past + it. + (dopr): Actually print %g and %e formats. + (fmtfp): Fix a bug that caused 0.01 to be printed as 0.1. + (fmtfp): Use LLONG in floating point conversions to be able to + convert more digits. + (fmtfp): Interpret precision as number of significant digits with + %g. + (fmtfp): Omit trailing decimal zeros with %g. + + * snprintf.c: Don't include because none of it is used. + Include strings.h/string.h, as per Autoconf. + +2005-04-15 Hrvoje Niksic + + * ptimer.c: Use _POSIX_TIMERS - 0 > 0, which handles the case when + _POSIX_TIMERS is defined but empty, as well as the case when it is + undefined. Do the same with the check for _POSIX_MONOTONIC_CLOCK. + Suggested by Larry Jones. + +2005-04-15 Hrvoje Niksic + + * ptimer.c: Check that _POSIX_TIMERS is defined as well as > 0. + Problem reported by Steven M. Schweda. + +2005-04-14 Hrvoje Niksic + + * http.c (skip_short_body): Print the skipped body data in debug + mode. + (skip_short_body): Don't skip more than 4k of body data. + (skip_short_body): Return whether the skipping was successful. + (gethttp): If skip_short_body failed, invalidate the connection. + +2005-04-12 Gisle Vanem + + * ftp.c (getftp): Ditto. + + * http.c (gethttp): Open the output file in binary mode. + +2005-04-11 Hrvoje Niksic + + * hash.c: Conditionalize including config.h on HAVE_CONFIG_H + instead of on STANDALONE. + +2005-04-11 Hrvoje Niksic + + * gen_sslfunc.c (ssl_print_errors): Made static. + (ssl_print_errors): Eliminate potentially dangerous fixed-size + error buffer. Passing NULL to ERR_error_string causes it to use + its own static buffer, which is fine for our purposes. + + * gen_sslfunc.c: Include gen_sslfunc.h. Make the declarations of + ssl_init and ssl_conect match the actual definitions. + (ssl_connect): Simply return a boolean, the SSL context is no + longer useful as a return value. + + * retr.c: Don't include SSL headers; we don't need them. + +2005-04-11 Hrvoje Niksic + + * config-post.h: Don't define _VA_LIST under Solaris; it breaks + compilation with GCC 3.4 under Solaris 10. (It was defined to + avoid a warning with previous versions of GCC.) + +2005-04-11 Hrvoje Niksic + + * xmalloc.c (register_ptr): Warn the user to increase SZ prior to + aborting. + +2005-04-11 Hrvoje Niksic + + * convert.c (convert_cleanup): Free converted_files. + +2005-04-10 Hrvoje Niksic + + * wget.h (DEBUGP): Use __builtin_expect to give a hint to GCC that + opt.debug is false in the vast majority of cases. + +2005-04-10 Hrvoje Niksic + + * config-post.h: Declare alloca as void *, not char *. + +2005-04-09 Hrvoje Niksic + + * recur.c (download_child_p): When -p is used, (temporarily) + ignore accept/reject rules for HTMLs, even when they are at the + maximum recursion depth. That is because with -p we are, if + necessary, overstepping the max. depth to get the requisites. + +2004-06-12 Larry Jones + + * recur.c (download_child_p): Correct the logic in check number 6: + test opt.reclevel (not DEPTH) against INFINITE_RECURSION. + +2005-04-09 Hrvoje Niksic + + * url.c: Use "static const" in preference to "const static". + Sun's cc warns that "storage class after type is obsolescent". + + * url.c (urlchr_table): Don't mark ~ as unsafe, too many broken + web sites are confused when ~ is changed to %7E. Their servers + redirect /%7Efoo/ to /~foo/, which Wget again accesses using %7E, + causing further redirections, therefore looping infinitely. See + Debian bug #301624 for an example. + +2005-04-09 Hrvoje Niksic + + * alloca.c: Include wget.h to be able to use xmalloc. In addition + to defining malloc to xmalloc, also define free to xfree. + +2005-04-09 Hrvoje Niksic + + * http-ntlm.c (ntlm_output): Use "char", not "unsigned char" for + ntlmbuf. Our base64 functions accept char anyway. + (ntlm_output): Join up the format string, since we nominally + support K&R compilers. + (ntlm_output): Ditto. + +2005-04-08 Hrvoje Niksic + + * ptimer.c: Use Windows timers under Cygwin, whose POSIX timer + implementation is incomplete. + +2005-04-08 Hrvoje Niksic + + * ptimer.c (struct ptimer): Remove the unused initialized field. + + * ptimer.c: Renamed function parameters from WT (which used to + stand for wget_timer or wtimer) to PT. + +2005-04-08 Hrvoje Niksic + + * ptimer.c (posix_init): Be smarter about choosing clocks. In + decreasing order of preference, use CLOCK_MONOTONIC, + CLOCK_HIGHRES, and CLOCK_REALTIME. + (ptimer_allocate): Removed. + + * ptimer.c: Refactor the code by cleanly separating the + architecture-dependent code from the architecture-independent + code. + +2005-04-08 Hrvoje Niksic + + * ptimer.c (ptimer_init): Explicitly check that + _POSIX_MONOTONIC_CLOCK is *both* defined and >=0. (Undefined + symbols are >=0.) + +2005-04-08 Hrvoje Niksic + + * ptimer.c (ptimer_diff): Fix typo affecting Windows build. + +2005-04-08 Hrvoje Niksic + + * ptimer.c (ptimer_init): In fact, _POSIX_MONOTONIC_CLOCK needs to + be >= 0. + + * ptimer.c (ptimer_init): Check whether _POSIX_MONOTONIC_CLOCK is + defined instead of whether it's greater than 0. glibc defines it + to 0, but still makes it available via sysconf. + +2005-04-08 Hrvoje Niksic + + * mswindows.c (str_to_int64): Rename OVERFLOW and UNDERFLOW to + INT64_OVERFLOW and INT64_UNDERFLOW, since those names are used. + +2005-04-07 Hrvoje Niksic + + * ptimer.c: New file. Move the "wtimer" functions from utils.c to + this file and rename them to ptimer_. + +2005-04-07 Hrvoje Niksic + + * host.c (NO_ADDRESS): Define NO_ADDRESS only after the system + headers have been included. + +2005-04-06 Hrvoje Niksic + + * http.c (pconn): Include NTLM data, which is per-connection. + (known_authentication_scheme_p): Recognize NTLM authorization. + (create_authorization_line): Call ntlm_input and ntlm_output. + + * http-ntlm.c: New file, donated by Daniel Stenberg and originally + written for curl, heavily modified for Wget. + + * utils.c (base64_encode): Relocated from http.c, since it is now + used by http-ntlm.c, and will possibly be used elsewhere. + (base64_decode): New function, originally based on code from GNU + recode. + +2005-04-02 Hrvoje Niksic + + * ftp.c (ftp_loop): Ditto. + + * ftp-basic.c (ftp_pasv): Use the xzero shorthand for memset(0). + (ftp_lpsv): Ditto. + +2005-04-05 Mauro Tortonesi + + * Makefile.in: removed string_t.c from list of source files. + +2005-04-04 Mauro Tortonesi + + * string_t.c: Removed. + + * string_t.h: Removed. + +2005-04-02 Hrvoje Niksic + + * url.c (rewrite_shorthand_url): Only accept recognized schemes. + That way "foo:80" will correctly be rewritten to "http://foo:80" + instead of left unchanged and ultimately rejected because of + "unsupported scheme foo". + +2005-03-31 Hrvoje Niksic + + * utils.c (number_to_string): Avoid explicit 64-bit constants; + construct them by multiplication at compile-time. + + * utils.c, elsewhere: Don't append "L" to 32-bit integer + constants; we aren't really compilable on 16-bit systems anyway. + + * hash.c (prime_size): Remove primes larger than 2^31, but include + 2^31-1, which is prime. + +2005-03-30 Hrvoje Niksic + + * utils.c (string_set_to_array): New function. + + * convert.c: Replace the use of "slists" with sets/hash-tables, + which in fact suit the intended purpose much better. + downloaded_html_list is removed altogether. + +2005-03-29 Hrvoje Niksic + + * ftp.h (enum): Rename GLOBALL, GETALL, and GETONE to + GLOB_GLOBALL, GLOB_GETALL, and GLOB_GETONE to avoid conflict with + Linux headers. + +2005-03-29 Hrvoje Niksic + + * utils.c (numdigit): More correct handling of negative numbers. + +2005-03-21 Hrvoje Niksic + + * http.c (gethttp): Print the human-readable size. + + * ftp.c (getftp): Print the human-readable size of the file to be + downloaded. + + * utils.c (human_readable): New function. + + * utils.c: Renamed "legible" to "with_thousand_seps", + "legible_large_int" to "with_thousand_seps_large", and "legible_1" + to "add_thousand_seps". + +2005-03-21 Hrvoje Niksic + + * http.c (gethttp): Inhibit persistent connections when talking to + proxies, as mandated by RFC 2068. + +2005-03-20 Hrvoje Niksic + + * url.c (unescape_single_char): New function. + (url_escape_dir): Use it to unescape slashes in directory + components. + (url_string): Escape unsafe chars in host name, except for the ':' + charaters, which can appear in IPv6 addresses. + + * main.c (main): Don't access the cookie jar directly. + + * log.c (escnonprint_internal): Correctly calculate the needed + string size. Don't forget the buffer's new size after having + reallocated it. + (log_cleanup): New function. Free the escnonprint ring data. + + * init.c (cleanup): Don't free the cookie jar explicitly, it is + now done by http_cleanup. + (cleanup): opt.user_headers is now a vector, free it with + free_vec. + + * http.c (gethttp): Make sure to free the request data, the status + message, and the response data before returning from the function. + (save_cookies): New function. + (http_cleanup): Free the cookie jar here. + + * hash.c: Renamed string_hash to hash_string and ptrhash to + hash_pointer. Exported hash_pointer. + + * xmalloc.c: Organized malloc_table (previously malloc_debug) as a + simple EQ hash table. register_ptr and unregister_ptr are now of + O(1) complexity. + + * xmalloc.c: Renamed "*_debug" to debugging_* and "*_real" to + checking_*. + +2005-03-12 Hrvoje Niksic + + * utils.c (debug_test_md5): Moved to gen-md5.c. + + * mswindows.h: Don't declare inet_ntop, since we don't use it. + + * mswindows.h: For consistency, also wrap closesocket, it being + a Winsock call. + + * mswindows.h: Don't declare sleep and usleep; we're defining + xsleep now. + + * mswindows.h (mkdir): Don't special-case Borland C, _mkdir + works there as well. + + * host.c: Don't include winsock header files; the correct ones + are already included by mswindows.h. + + * mswindows.c (xsleep): Round toward the nearest millisecond + in an attempt to avoid average short sleeps. + + * utils.c (wtimer_granularity): Report correct values for + Windows timers and for high-resolution timers. + + * utils.c (wtimer_initialize_once): New function, called to + initialize the timer frequency. + + * utils.c: Replace the use of GetSystemTime with high-resolution + counters under Windows. When high-resolution counters are + unavailable, use GetTickCount(). + +2005-03-15 Hrvoje Niksic + + * retr.c (fd_read_body): Undo the 2004-11-18 change. Instead, + always be "exact". + +2005-03-17 Hrvoje Niksic + + * ftp-basic.c (ftp_login): Don't free the string if ftp_response + returned an error status because the line didn't get allocated in + the first place. + +2005-03-15 Hrvoje Niksic + + * http.c (read_http_response_head): Limit the response size to 64k + bytes. + + * retr.c (fd_read_hunk): Accept a MAXSIZE argument that limits the + number of bytes the function is allowed to allocate. + (fd_read_line): Limit the line to 4096 bytes. + +2005-03-12 Hrvoje Niksic + + * wget.h: Include options.h after wgint has been defined. + + * options.h (struct options): Declare options processed with + cmd_bytes as wgint, not long. + +2005-03-18 Hrvoje Niksic + + * init.c (cmd_file): Use concat_strings. + + * http.c (basic_authentication_encode): Use concat_strings. + + * ftp-ls.c (ftp_index): Use concat_strings. + + * ftp-basic.c (ftp_request): Use concat_strings. + + * utils.c (concat_strings): New function. + +2005-03-12 Hrvoje Niksic + + * init.c (simple_atof): Handle negative numbers; skip whitespace + before the number. + (simple_atoi): Ditto. Also, check for overflow and underflow. + (cmd_number): Bail out on negative numbers. + (parse_bytes_helper): Ditto. + +2005-03-06 Hrvoje Niksic + + * http.c (gethttp): Handle multiple Set-Cookie headers sent by + remote server. + +2005-03-06 Hrvoje Niksic + + * init.c (defaults): Use passive FTP by default. + +2005-03-06 Hrvoje Niksic + + * mswindows.c: Provide wrappers to Winsock functions that set + errno to WSAGetLastError() in case of failure. Also provide a + Windows-specific version of strerror. + + * mswindows.h: Wrap calls to socket, bind, connect, recv, send, + select, getsockname, getpeername, and setsockopt. + +2005-03-06 Hrvoje Niksic + + * url.c (url_parse): Reject port numbers larger than 65535. We + also check for overflow while parsing port numbers. + +2005-03-06 Hrvoje Niksic + + * utils.c (read_file): Don't use wgint for file size; LFS won't + work since the file is mmap'ed as a whole. + + * options.h: Don't include stdio.h. + + * log.c: Ditto. + + * init.c: Disambiguate assignment from non-zero test to avoid + Borland C warning. + + * http.c (response_new): Don't needlessly post-increment count. + + * hash.c: Include stdio.h. + + * gnu-md5.h: Don't include stdio.h. + + * getopt.h (struct option): Always use const. + + * ftp.c (getftp): Avoid unnecessary assignment to RES to avoid + Borland C warning. + + * ftp-ls.c: Disambiguate assignment from non-zero test to avoid + Borland C warning. + + * cmpt.c (strptime_internal): Don't initialize rp_backup when + !_NL_CURRENT to avoid Borland C warning. + +2005-03-06 Hrvoje Niksic + + * utils.c (fopen_excl): Fix parse error when O_BINARY is + available. + +2005-03-05 Hrvoje Niksic + + * url.c (url_file_name): Don't allow hosts named ".." to be + appended as path elements. + +2005-03-03 Hrvoje Niksic + + * retr.c (retrieve_url): Escape location header. + + * http.c (print_server_response_1): Escape server response when + printing it. + (gethttp): Escape host name, status message, location header, and + content type. + (http_loop): Escape error message from server. + + * host.c (lookup_host): Escape host name when printing it. + + * ftp.c (getftp): Escape user name when printing it. + (getftp): Escape remote file and directory for printing. + (getftp): Escape server listing when printing it. + (ftp_retrieve_list): Escape link name and file name. + (ftp_retrieve_glob): Escape file name. + + * ftp-basic.c (ftp_response): Escape server response when printing + it. + + * cookies.c (parse_set_cookies): Escape the cookie field when + printing it. + (parse_set_cookies): Escape contents of remote header. + (cookie_handle_set_cookie): Escape host name and cookie domain. + + * connect.c (connect_to_ip): Escape the host name. + + * log.c (escnonprint): New function, used for printing strings + coming from the server that possibly contain non-ASCII characters. + (escnonprint_uri): Ditto. + +2005-02-24 Hrvoje Niksic + + * ftp.c (getftp): Ditto. + + * http.c (gethttp): When we're not supposed to overwrite files, + use fopen_excl to open the file and recompute the file name. + + * log.c (redirect_output): Use unique_create to avoid a race + condition. + + * mswindows.c (fake_fork_child): Use unique_create. + + * utils.c (fopen_excl): New function that opens a stdio stream + with the O_EXCL flag (where available). + (unique_create): New function, like unique_name, but also creating + the file and returning a file pointer. + (fork_to_background): Use unique_create to create the file + immediately to avoid race condition with multiple instances of + wget -b. + +2005-02-24 Hrvoje Niksic + + * host.c (lookup_host): Test for AI_ADDRCONFIG directly, instead + of checking for HAVE_GETADDRINFO_AI_ADDRCONFIG. + +2005-02-23 Hrvoje Niksic + + * host.c (is_valid_ipv6_address): Move here from url.c. + (lookup_host): If the address is numeric, don't print the + "resolving..." line, don't set up DNS timeouts, and set the + AI_NUMERICHOST hint, where available. + +2005-02-26 Gisle Vanem + + * utils.c: Use the nnnLL syntax under GCC. Define struct_stat to + struct _stati64 under __MINGW32__ as well as under MS VC. + +2005-02-26 Hrvoje Niksic + + * utils.c: Use the nnnI64 syntax for __int64 constants under all + Windows compilers. + (SPRINTF_WGINT): Use "%I64" under all Windows compilers. + + * mswindows.h (WGINT_MAX): Use the nnnI64 syntax for + __int64 constants under all Windows compilers. + (struct_stat): Use `struct stati64' under Borland C. + (fstat): Don't redefine to _fstati64 under Borland. + + * mswindows.c: Define str_to_int64 under Borland C as well as + under (older) Visual C. + +2005-02-25 Hrvoje Niksic + + * ftp.c (getftp): Initialize err to suppress compiler warning. + +2005-02-24 Hrvoje Niksic + + * ftp.c (ftp_expected_bytes): Fix bug that caused infloop because + of not correctly skipping the '(' character. + +2005-02-24 Hrvoje Niksic + + * mswindows.c (wget_ftello): Removed. + + * mswindows.h: Remove bogus definition of stat. + (wget_ftello): Remove the leftover ftello replacement. + +2005-02-20 Hrvoje Niksic + + * mswindows.c (wget_ftello): Wget's replacement for ftello. + + * utils.c (file_size): Use ftello where available. + + * ftp-ls.c (ftp_parse_unix_ls): Use str_to_wgint to parse the file + size. + (ftp_parse_winnt_ls): Ditto. + + * ftp-basic.c (ftp_size): Use str_to_wgint to convert number to + wgint; pass 10 instead of 0 as the BASE argument. + + * ftp.c (ftp_expected_bytes): Use str_to_wgint to parse the file + size. + + * sysdep.h (LARGE_INT_FMT): Use __int64 as LARGE_INT on + MSVC/Windows; print it with "%I64". + + * wget.h: Define a `wgint' type, normally aliased to (the possibly + 64-bit variant of) off_t. + + * all: Use `wgint' instead of `long' for numeric variables that + can hold file sizes. + + * utils.c (number_to_string): Support printing of `wgint' + argument. + (number_to_static_string): New function. + + * all: Replace printf("%ld", long_value) with printf("%s", + number_to_static_string(wgint_value)). + +2005-02-18 Mauro Tortonesi + + * main.c: Added the --ftp-passwd command line option. + + * init.c: Renamed command passwd to ftppasswd. + +2005-02-11 Mauro Tortonesi + + * string_t.c: Fixed a bug in do_escape and triggered escape of + backslashes in string_escape to avoid ambiguities in the result + string. + +2005-02-10 Mauro Tortonesi + + * string.h: Renamed to string_t.h to fix a compilation conflict + with the string.h header in the standard C library. + + * string.c: Renamed to string_t.c for consistency with string.h. + + * string_t.c: Ditto. + + * string_t.h: Ditto. + +2004-12-31 Mauro Tortonesi + + * string.c: New file. + + * string.h: New file. + + * Makefile.in: Added string.c to the list of modules to compile. + + * main.c: Updated copyright. + +2004-11-18 Ulf Harnhammar + + * ftp-ls.c: Fixed a problem in ftp_parse_winnt_ls that could allow a + malicious remote FTP server to crash wget. + +2004-11-18 Hans-Andreas Engel + + * http.c: Enable --convert-links (-k) when a single page is downloaded + via --output-document (-O). + +2004-11-18 Mauro Tortonesi + + * connect.c: Minor correction to the comment in front of fd_peek. + +2004-11-18 Leonid Petrov + + * retr.c: Fix a timeout problem in fd_read_body when using http_proxy. + +2004-11-15 YAMAZAKI Makoto + + * netrc.c: Fix termination by assertion bug in netrc parsing. + +2004-05-09 David Fritz + + * mswindows.c (fake_fork): Pass entire command line to the child + process. + +2004-03-31 Hrvoje Niksic + + * http.c (gethttp): Fix typo: SCHEME_SSL -> SCHEME_HTTPS. + +2004-03-30 Hrvoje Niksic + + * http.c (gethttp): Send the Proxy-Authorization header over + non-SSL connections too. + +2004-03-25 David Fritz + + * mswindows.c (fake_fork_child): Ignore error code when + OpenFileMapping() fails; assume it failed because the object does + not exist. + +2004-03-24 David Fritz + + * mswindows.c (fake_fork): New function. + + * mswindows.c (fork_to_background): Use it. + +2004-03-19 David Fritz + + * mswindows.c (ws_hangup): Incorporate old fork_to_background() + code. Add event name argument. + (fork_to_backgorund): Now a simple wrapper around ws_hangup(). + (ws_handler): Correctly handle the case when neither CTRLC_BACKGND + nor CTRLBREAK_BACKGND are defined. Don't bother handling close, + logoff, or shutdown events. Call ws_hangup() with the correct + event name; don't assume it was CTRL+Break. + +2004-03-19 Hrvoje Niksic + + * url.c (url_parse): Decode %HH sequences in host name. + +2004-03-04 Hrvoje Niksic + + * convert.c (local_quote_string): Quote "#" as "%23" and "%" as + "%25" when creating links to local files. + +2004-03-02 David Fritz + + * mswindows.c (ws_percenttitle): Guard against future changes by + doing nothing if the proper variables have not been initialized. + Clamp percentage value. + +2004-03-04 Gisle Vanem + + * retr.c (fd_read_body): Don't change console title if quiet. + +2004-02-25 David Fritz + + * mswindows.c (set_sleep_mode): Remove argument and return value. + Call GetModuleHandle() instead of LoadLibrary()/FreeLibrary() for + kernel32.dll. Use typedef for function-pointer. Don't cast + l-value. Don't use dereference operator when calling through + function-pointer. + (ws_startup): Update call to set_sleep_mode(). + (ws_cleanup): Remove call to set_sleep_mode(). + +2004-02-23 David Fritz + + * http.c (http_loop): Ditto. + + * ftp.c (ftp_loop_internal): Update call to ws_changetitle(). + + * main.c (main): Don't bother calling ws_changetitle(). + + * mswindows.h (ws_changetitle): Update prototype. + + * mswindows.c (ws_changetitle): Remove second argument. Use + xfree_null(). + (ws_percenttitle): Only update title when percentage has changed. + +2004-02-23 David Fritz + + * mswindows.h: Ditto. + + * mswindows.c: Misc. formatting/comment tweaks throughout. + +2004-02-20 David Fritz + + * main.c (print_help): Remove call to ws_help(). + + * mswindows.c (ws_help): Remove. + + * mswindows.h (ws_help): Remove. + +2004-02-16 David Fritz + + * init.c (home_dir): Use aprintf() instead of xmalloc()/sprintf(). + Under Windows, if $HOME is not defined, use the directory that + contains the Wget binary instead of hard-coded `C:\'. + (wgetrc_file_name): Under Windows, look for $HOME/.wgetrc then, if + not found, look for wget.ini in the directory of the Wget binary. + + * mswindows.c (ws_mypath): Employ slightly more robust methodology. + Strip trailing path separator. + +2004-02-06 Hrvoje Niksic + + * http.c (gethttp): Respect --ignore-length. + (gethttp): Inhibit keep-alive if --ignore-length is specified. + +2004-02-06 Hrvoje Niksic + + * connect.c (sockaddr_set_data): Zero out + sockaddr_in/sockaddr_in6. Apparently BSD-derived stacks need this + when binding a socket to local address. + +2004-02-04 Hrvoje Niksic + + * hash.c: Make the file compilable outside Wget source tree when + -DSTANDALONE is used. + +2004-01-29 Hrvoje Niksic + + * utils.c (determine_screen_width): Return 0 if not running on + Windows or on a TIOCGWINSZ-capable system. + +2004-01-28 David Fritz + + * utils.c (determine_screen_width): Correctly determine console + width under Windows. + +2004-01-28 Christian Biere + + * progress.c (bar_set_params): Fixed syntax error when HAVE_ISATTY + was undefined. + + * ftp.c (ftp_loop_internal): Allocate a larger buffer in case + "try" gets translated to something large. Ditto in http_loop in + http.c. + + * http.c (response_header_copy): Don't write to buf[BUFSIZE]. + + * ftp-opie.c (skey_response): Eliminate unnecessary string + concatenation; just call gen_md5_update twice. + +2004-01-25 Hrvoje Niksic + + * utils.c (xsleep): Don't call usleep with values larger than + 1,000,000. + +2003-12-16 Hrvoje Niksic + + * http.c (gethttp): Fix generation of `Content-Length'. + +2003-12-15 Gisle Vanem + + * url.c (url_skip_credentials): Fixed return value; 'url' if no + credentials. + +2003-12-14 Hrvoje Niksic + + * url.c (url_skip_credentials): Return a pointer directly. + +2003-12-14 Hrvoje Niksic + + * url.c (url_file_name): Ditto. + (parse_errors): Ditto. + + * retr.c (retr_rate): Ditto. + + * progress.c (create_image): Ditto. + + * netrc.c (parse_netrc): Ditto. + + * main.c (struct cmdline_option): Ditto. + (redirect_output_signal): Ditto. + + * init.c (commands): Ditto. + + * ftp-ls.c (ftp_index): Ditto. + + * cookies.c (check_domain_match): Declare the pointer to a literal + string as `const'. + +2003-12-12 Hrvoje Niksic + + * retr.c (fd_read_body): Pass total size to progress_create, not + the remaining amount. + +2003-12-12 Hrvoje Niksic + + * retr.c (fd_read_body): Don't fiddle with "interactive timeout" + if read timeout is unset. + +2003-12-12 Hrvoje Niksic + + * connect.c (bind_local): Don't set the IPV6_V6ONLY option on the + socket. + +2003-12-06 Hrvoje Niksic + + * url.c (url_file_name): Respect the setting of + opt.protocol_directories. + + * main.c (main): Only check for ret=='?' when longindex is unset. + (option_data): New option --protocol-directories. + +2003-12-06 Hrvoje Niksic + + * ftp.c (getftp): Ditto. + + * http.c (gethttp): Correctly calculate bandwidth as total data + read divided with download time. + + * retr.c (fd_read_body): Separate the return values for data + written and read. + +2003-12-05 Hrvoje Niksic + + * http.c (H_REDIRECTED): Respect the HTTP/1.1 "303 See Other" + response code. + Suggested by Dan Razzell. + +2003-11-30 Hrvoje Niksic + + * retr.c (fd_read_body): Report the amount of data *written* as + amount_read. This is not entirely logical, but that's what the + callers expect, and it's not easy to change. + + * ftp.c (ftp_loop_internal): Ditto. + + * http.c (http_loop): Be smarter about assigning restval; if we're + in the nth pass of a download, simply use the information we have + about how much data has been retrieved as restval. + + * ftp.c (getftp): Ditto for FTP "REST" command. + + * http.c (gethttp): When the server doesn't respect range, skip + the first RESTVAL bytes of the read body. Never truncate the + output file. + + * retr.c (fd_read_body): Support skipping initial STARTPOS octets. + +2003-11-30 Hrvoje Niksic + + * http.c (skip_short_body): Renamed skip_body to skip_short_body; + don't bother calling fd_read_body. + +2003-11-30 Hrvoje Niksic + + * retr.c (fd_read_body): Sanitize arguments and document them + better. Make sure the timer is created and updated only if + necessary. Updated callers. + +2003-11-30 Hrvoje Niksic + + * http.c (skip_body): New function. + (gethttp): Use it to skip the body of the responses we don't care + to download. That allows us to reuse the connection. + (gethttp): Trust that the HEAD requests will not generate body + data. + + * retr.c (fd_read_body): Don't write to OUT if it's NULL. + +2003-11-29 Hrvoje Niksic + + * http.c (gethttp): Initialize SSL only the first time when SSL + URL is downloaded. + +2003-11-29 Hrvoje Niksic + + * cookies.c (cookie_header): Only generate the contents of the + header, not the leading "Cookie: " or the trailing "\r\n". + + * http.c (gethttp): When adding headers specified with `--header', + allow them to override the headers generated by Wget. + + * init.c (cmd_spec_header): Made opt.user_headers a vector. + + * http.c (request_new): New function. Returns a request structure + which can be modified in various ways, most notably by adding HTTP + headers to the request. + (request_set_header): New function for adding the header to the + request. If the header is already available, it gets replaced. + (request_send): Construct and send the request. + (gethttp): Use the request_* functions to generate the request. + +2003-11-28 Hrvoje Niksic + + * http.c (gethttp): Don't include the Proxy-Authorization header + in the request tunneled through proxy. + +2003-11-28 Hrvoje Niksic + + * http.c (gethttp): Use the CONNECT handle to establish SSL + passthrough through non-SSL proxies. + +2003-11-28 Hrvoje Niksic + + * init.c: Don't #include netinet/Winsock stuff. + +2003-11-28 Hrvoje Niksic + + * http.c: Deleted the old functions header_process, + header_extract_number, header_exists, header_strdup, + http_process_range, http_process_none, http_process_type, and + http_process_connection. + + * http.c (response_new): New function. + (response_header_bounds): Ditto. + (response_header_copy): Ditto. + (response_header_strdup): Ditto. + (response_status): Ditto. + (gethttp): Use the new response_* functions to parse the response. + Support HTTP/0.9 responses. + +2003-11-27 Hrvoje Niksic + + * progress.c (create_image): Don't calculate ETA if nothing has + been downloaded yet, because it causes division by zero. + +2003-11-27 Hrvoje Niksic + + * connect.c (bind_local): Rename sa_len to addrlen because IRIX + headers define sa_len as a macro. + +2003-11-26 Hrvoje Niksic + + * html-parse.c (convert_and_copy): Remove embedded newlines when + AP_TRIM_BLANKS is specified. + +2003-11-26 Hrvoje Niksic + + * ftp.c: Set con->csock to -1 where rbuf_uninitialize was + previously used. + +2003-11-26 Hrvoje Niksic + + * Makefile.in (http$o): Added the trailing backslash that was + missing. + +2003-11-21 Hrvoje Niksic + + * headers.c: Removed. The file is no longer relevant, now that no + special handling of headers is done by the rbuf code. Moved + portions to http.c. + +2003-11-21 Hrvoje Niksic + + * rbuf.c: Removed. + + * ftp-basic.c (ftp_response): Use fd_read_line. No longer use + struct rbuf. Updated all callers. + + * http.c (gethttp): Use fd_read_head to read all the headers in + one go. + (next_header): New function. + + * retr.c (fd_read_line): New function: reads a line from FD, + leaving the rest of the data unread. + (fd_read_head): New function. + + * connect.c (fd_peek): New function, implements peeking. + (poll_internal): New function. + (fd_read): Use it. + (fd_write): Ditto. + (fd_peek): Ditto. + (fd_register_transport): Allow registering a "peeker" callback. + +2003-11-20 Hrvoje Niksic + + * connect.c: Renamed xread/xwrite/xclose to + fd_read/fd_write/fd_close. The "x" prefix is not appropriate + because the semantics have diverged from read/write/close too + significantly. Updated all callers. + +2003-11-20 Hrvoje Niksic + + * connect.c (sock_write): It's not necessary to initialize RES. + +2003-11-19 Hrvoje Niksic + + * main.c (main): Don't reference opt.ipv4_only and opt.ipv6_only + if IPv6 is disabled. + +2003-11-19 Hrvoje Niksic + + * connect.c (socket_has_inet6): Only compile it if IPv6 is enabled + and AI_ADDRCONFIG is missing. + +2003-11-18 Hrvoje Niksic + + * gen_sslfunc.c (ssl_init_prng): Warn the user when using a weak + random seed. + +2003-11-18 Hrvoje Niksic + + * host.c (address_list_contains): Renamed address_list_find to + address_list_contains because its result is boolean. + +2003-11-18 Hrvoje Niksic + + * connect.c (select_fd): Return 1 if select is not available. + +2003-11-17 Hrvoje Niksic + + * connect.c (connect_to_host): Don't reference address list after + releasing it. + +2003-11-17 Hrvoje Niksic + + * main.c (print_help): Fix alignment of FTP options output. + +2003-11-17 Hrvoje Niksic + + * host.c (lookup_host): Check for the ability to create IPv6 + sockets here. + + * init.c (defaults): Don't auto-set --inet4-only on IPv6-less + systems. + +2003-11-16 Hrvoje Niksic + + * main.c (print_help): Fix typo in `-O' help message. Fix docs of + -Y/--proxy. Fix docs of `--cookies' and `--glob'. Improve docs + of --convert-links. Fix docs of SSL options. + +2003-11-16 Hrvoje Niksic + + * ftp-basic.c: Don't include and others because + they're no longer needed. + +2003-11-16 Hrvoje Niksic + + * main.c (main): Don't allow setting of both opt.ipv4_only and + opt.ipv6_only. + + * init.c (defaults): Mark opt.ipv4_only specially when set + automatically. + +2003-11-15 Hrvoje Niksic + + * host.c (lookup_host): Use AI_ADDRCONFIG only if the family is + unspecified. This ensures that specifying `--no-inet4' on systems + where IPv6 resolves, but doesn't work behaves the same regardless + of the availability of AI_ADDRCONFIG. + +2003-11-15 Hrvoje Niksic + + * host.c: Don't refer to the now-removed function + forget_host_lookup in the documentation of lookup_host. + +2003-11-15 Hrvoje Niksic + + * http.c (persistent_available_p): Correctly specify the endpoint + argument to socket_ip_address. + (gethttp): When printing the "reusing connection to..." message, + specify the host name of the reused connection, not the current + host name. That makes more sense because it provides a useful + piece of information -- we know to which host we're supposed to + connect anyway! + +2003-11-15 Hrvoje Niksic + + * init.c: Make sure the options are in alphabetic order! + + * host.c (lookup_host): Merge lookup_host_passive and lookup_host + after all -- having both would result in some code duplication. + (lookup_host): Set hints.ai_family to AF_INET if ipv4_only is + requested. Likewise, set it to AF_INET6 for ipv6_only. Specify + AI_ADDRCONFIG where available. + (lookup_host): New flag LH_REFRESH that specifies that a cached + entry for HOST should be refreshed. + (cache_query): New function. + (cache_store): Ditto. + (cache_remove): Ditto. + (forget_host_lookup): No longer necessary, replaced with static + function cache_remove. + +2003-11-14 Hrvoje Niksic + + * main.c: Enable -4 and -6 only if IPv6 is enabled. + +2003-11-14 Hrvoje Niksic + + * connect.c (register_transport): Renamed from register_extended. + Explain the intended usage. + +2003-11-14 Hrvoje Niksic + + * url.c (uri_merge): Merging "foo" and "bar" should result in + "bar", not in "foo/bar". + (path_simplify): Don't remove empty path elements; don't + special-case leading slash. + (path_simplify): Don't swallow ".."'s at the beginning of string. + E.g. simplify "foo/../../bar" as "../bar", not as "bar". + (append_uri_pathel): Defang ".." path element upon encountering + it. + +2003-11-13 Hrvoje Niksic + + * http.c (persistent_available_p): Don't attempt to talk to two + different SSL sites over the same secure connection. + +2003-11-13 Hrvoje Niksic + + * http.c (gethttp): Ditto. + + * ftp.c (getftp): Use retryable_socket_connect_error instead of + CONNECT_ERROR. + + * wget.h (CONNECT_ERROR): Removed. + + * connect.c (retryable_socket_connect_error): New function instead + of unsupported_socket_family_error. + +2003-11-13 Hrvoje Niksic + + * wget.h (CONNECT_ERROR): Use it. + + * connect.c (unsupported_socket_family_error): New function. + +2003-11-13 Hrvoje Niksic + + * connect.c (bind_local): Renamed bindport to bind_local; return + the socket directly. Updated callers. + (accept_connection): Renamed acceptport to accept_connection; + return the created socket directly. Updated callers. + +2003-11-13 Hrvoje Niksic + + * init.c (defaults): Turn on opt.ipv4_only if we're compiling with + IPv6, and AI_ADDRINFO is not available, and AF_INET6 sockets can't + be created. + +2003-11-13 Hrvoje Niksic + + * host.c (lookup_host): Document the fact that the addresses are + returned in order. + +2003-11-12 Hrvoje Niksic + + * utils.c: Use limits.h only where available. + + * hash.c: Use INVALID_PTR and INVALID_PTR_BYTE. Include limits.h. + +2003-11-11 Hrvoje Niksic + + * main.c: Added options --inet4-only and --inet6-only. + +2003-11-11 Hrvoje Niksic + + * host.c (host_errstr): Use the more standard message "Unknown + host". + +2003-11-10 Hrvoje Niksic + + * connect.c (connect_to_host): Use that flag to decide whether to + re-resolve the host name. + + * host.c (struct address_list): Added a flag that maintains + whether the connection worked at some point. + +2003-11-10 Hrvoje Niksic + + * host.c (lookup_host): Special-case the numeric addresses only in + the non-IPv6 case. + +2003-11-10 Hrvoje Niksic + + * connect.c (resolve_bind_address): Call lookup_host_passive. + Make sure that opt.bind_address is resolved only once. + + * host.c (lookup_host_passive): New function, handles "passive" + lookups. + (lookup_host): Remove the passive flags. Remove the + family-related flags -- use ip_default_family instead. + +2003-11-09 Hrvoje Niksic + + * html-url.c: Get URLs from . + +2003-11-09 Hrvoje Niksic + + * main.c (option_data): Specify the command to use for --mirror. + +2003-11-08 Hrvoje Niksic + + * cookies.c (cookie_handle_set_cookie): Specify exact match for + unspecified domains. + +2003-11-08 Hrvoje Niksic + + * main.c (main): Removed one-letter options `-C', `-g', `-G', and + `-s'. + +2003-11-08 Hrvoje Niksic + + * main.c (main): Add --dont-remove-listing for backward + compatibility with previous versions. + (print_help): Fix typo, spotted by Dennis Smit. + +2003-11-08 Gisle Vanem + + * ftp-basic.c: Support Windows-2000 ftp servers. Win-2000 *is* + Win-NT 5.0 so calling it ST_WINNT is okay I guess. + +2003-11-08 Hrvoje Niksic + + * progress.c (update_speed_ring): Clear the speed ring when the + download stalls. + + * retr.c (get_contents): Specify 0.95s read timeout, so that the + progress gauge can be updated even when data arrives very slowly + or stalls. + +2003-11-08 Hrvoje Niksic + + * utils.c (wtimer_allocate): Bless the use of wtimer_read on a + timer that has merely been allocated because get_contents() does + that. + (wtimer_update): Abort if the timer is not initialized. + +2003-11-08 Hrvoje Niksic + + * retr.c (get_contents): Pass the timer to limit_bandwidth(). + + * utils.c (wtimer_update): New function instead of wget_elapsed; + just update the timer, but don't return anything. + (wtimer_read): Read and return the last known value of the timer. + +2003-11-08 Hrvoje Niksic + + * http.c (persistent_available_p): Instead of matching all the + addresses of HOST and last host, determine the peer's IP address + with socket_ip_address and see if that address is one of those + HOST resolves to. + + * host.c (address_list_match_all): Removed. + (address_list_find): New function, finds an IP address in the + address list. + + * ftp.c (ftp_do_pasv): Get the peer's address here, and pass it to + ftp_epsv so it doesn't need to call getpeername. + + * ftp-basic.c (ftp_port): Use socket_ip_address instead of + getpeername. + (ftp_lprt): Ditto. + + * connect.c (socket_ip_address): Replaces conaddr, generalized to + either get peer's or local address. + (sockaddr_get_data): Made local to this file. + +2003-11-08 Hrvoje Niksic + + * hash.c (HASH_POSITION): Explicitly accept the hash function. + (grow_hash_table): Extract ht->hash_function outside the loop. + (hash_table_remove): Ditto. + (hash_table_clear): Fill entries with 0xff to clear them. + (hash_table_remove): Mark entries as deleted with the correct + marker. + +2003-11-08 Hrvoje Niksic + + * http.c (persistent_available_p): No reason for the host lookup + to be silent -- it's a lookup like any other. + +2003-11-08 Hrvoje Niksic + + * connect.c (register_extended): Check that fd >= 0. + +2003-11-07 Hrvoje Niksic + + * connect.c (LAZY_RETRIEVE_INFO): Set LAST_INFO. + +2003-11-07 Hrvoje Niksic + + * hash.c (NON_EMPTY): Use the all-bit-set value as the marker that + the field is empty. This allows NULL pointer and 0 value to be + used as keys, which is necessary for the connect.c code to work + when fd==0. + (hash_table_new): Fill mappings with 0xff. + (grow_hash_table): Ditto. + +2003-11-07 Hrvoje Niksic + + * url.c (url_parse): Allow empty ports. + +2003-11-07 Hrvoje Niksic + + * main.c (print_help): Break the help string into multiple chunks. + (cmdline_option): New option handler OPT_FUNCALL. Generalized + HANDLE_CMD to generic DATA. + (option_data): Use the new OPT_FUNCALL feature. + +2003-11-06 Hrvoje Niksic + + * log.h: Declare log_init, log_close, and + log_request_redirect_output here. + +2003-11-05 Dennis Smit + + * main.c: (main): added --preserve-permissions option. + + * ftp.c (ftp_retrieve_list): added support for + --preserve-permissions option. + + * init.c: added support for --preserve-permission option. + + * option.h: added support for --preserve-permission option. + +2003-11-06 Hrvoje Niksic + + * main.c (init_switches): New function. Convert option_data to + long_options and short_options, which can be fed to getopt_long. + (main): Execute command-line options by consulting option_data. + +2003-11-06 Hrvoje Niksic + + * gen_sslfunc.c (ssl_read): Implement a more correct check for + EINTR. + (ssl_write): Ditto. + (init_ssl): Use a global SSL context. + +2003-11-06 Hrvoje Niksic + + * connect.c (xclose): Free INFO even if it doesn't provide a + closer. + +2003-11-06 Hrvoje Niksic + + * connect.c: Updated all callers of + iread/ssl_iread/iwrite/ssl_iwrite to use xread and xwrite instead. + + * rbuf.h (struct rbuf): Removed the SSL member because SSL is + handled automatically by xread. + + * hash.c (ptrhash): Made private. + (ptrcmp): Ditto. + (inthash): Removed. + + * connect.c (select_fd): Don't set errno, leave it to the caller. + + * gen_sslfunc.c (connect_ssl): Use register_extended to register + SSL callbacks for communication with SSL-enabled endpoints. + (ssl_read): New function. + (ssl_write): Ditto. + (ssl_poll): Ditto. + (ssl_close): Ditto. + + * connect.c (register_extended): New function -- register + callbacks for basic socket operations. + (xread): Ditto. + (xwrite): Ditto. + (xclose): Ditto. + (sock_read): New function, default implementation for reading. + (sock_write): Ditto for writing. + (sock_poll): Ditto for polling. + (sock_close): Ditto for closing. + +2003-11-05 Hrvoje Niksic + + * connect.c (bindport): Fix compilation under pre-C99 compilers. + +2003-11-05 Hrvoje Niksic + + * connect.c (connect_to_ip): More compact error checking. + (bindport): Don't treat failed setsockopt as a fatal error. + +2003-11-05 Hrvoje Niksic + + * connect.c (resolve_bind_address): Use a more accurate error + message -- we're not binding to ANY, we're disabling bind + altogether. + +2003-11-05 Hrvoje Niksic + + * cookies.c (save_cookies_mapper): Respect the setting of + keep-session-cookies. + (cookie_jar_load): Import session cookies. + Based on code submitted by Nicolas Schodet. + + * utils.c (datetime_str): Use information in TM when it's + non-NULL. + + * main.c (main): New option `--keep-session-cookies'. + +2003-11-04 Hrvoje Niksic + + * Makefile.in (realclean): Delete config.h.in. + +2003-11-04 Hrvoje Niksic + + * config-post.h: New file, included from now autogenerated + config.h.in. + +2003-11-04 Hrvoje Niksic + + * progress.c (progress_handle_sigwinch): Don't call + determine_screen_width() from the signal handler. Instead, just + set a volatile variable. + (bar_create): Check whether SIGWINCH was received. + (bar_update): Ditto. + + * sysdep.h: Define SYSTEM_FNMATCH only if HAVE_FNMATCH_H is true. + +2003-11-03 Hrvoje Niksic + + * utils.c (xsleep): New function. Uses nanosleep where available, + resuming sleeps interrupted by signals. Updated callers of sleep + and usleep to use xsleep. + +2003-11-03 Hrvoje Niksic + + * ftp-basic.c (ftp_login): Remove shadowing (and bogus) + declaration of SEED. + +2003-11-03 Hrvoje Niksic + + * log.c (logvprintf): Documented better. Renamed to + log_vprintf_internal to avoid confusion with the public API + functions logprintf and logputs. + +2003-11-03 Hrvoje Niksic + + * wget.h (N_): Don't parenthesize argument. + +2003-11-03 Hrvoje Niksic + + * host.h (ADDRESS_IPV4_DATA): Don't take the address of in.s_addr + because that doesn't work on machines that define it as bitfield. + +2003-11-03 Hrvoje Niksic + + * connect.c (select_fd): Generalize the third argument into WAIT, + so that the caller can request waiting for both read and write. + Updated callers. + +2003-11-02 Hrvoje Niksic + + * html-url.c (cleanup_html_url): Destroy the hash tables, don't + just call free on them. + (init_interesting): Use hash_table_put instead of string_set_add + because we don't need the strdup that the latter function + performs. + + * init.c (cleanup): Don't pass NULL to cookie_jar_delete. + + * xmalloc.c (xfree_real): Abort when passed a NULL pointer. + (xfree_debug): Print at the file and line of the offending call to + free. + +2003-11-02 Hrvoje Niksic + + * wget.h: Retired the `boolean' type. Moved the DEFAULT_LOGFILE + define to log.h. Moved the INFINITE_RECURSION define to recur.h. + + * xmalloc.h: Renamed FREE_MAYBE to xfree_null and moved the + definition from wget.h to xmalloc.h. + +2003-11-02 Hrvoje Niksic + + * html-parse.c (decode_entity): New function; split the decoding + of entities here. + (convert_and_copy): Use it to decode entities. + (decode_entity): Handle the &apos entity. + (decode_entity): Don't decode Latin 1 numeric entities. Don't + decode �. + +2003-11-01 Hrvoje Niksic + + * ftp-opie.c (calculate_skey_response): Use uint32_t instead of + `unsigned long' for the cheksum array. Document the function. + +2003-11-01 Hrvoje Niksic + + * connect.c (acceptport): Don't call select_fd when timeout is not + requested. + +2003-11-01 Hrvoje Niksic + + * host.c: Removed the ip_default_family global variable. + + * host.c (lookup_host): Document the function. Fixed declaration + of VEC. + +2003-10-31 Hrvoje Niksic + + * various: Use new macros xnew, xnew0, xnew_array, and xnew0_array + in various places. + +2003-10-31 Hrvoje Niksic + + * wget.h: Move declarations of malloc and logging code to + xmalloc.h and log.h respectively to unclutter this file. + (STRDUP_ALLOCA): Made it side-effect free. + + * xmalloc.h: New files. Define macros xnew, xnew0, xnew_array, + and xnew0_array. + + * xmalloc.c: New file. Move the xmalloc routines here. + +2003-10-31 Hrvoje Niksic + + * connect.c (sockaddr_set_data): Remove the broken code that + checked for NULL address. + +2003-10-31 Hrvoje Niksic + + * host.c (address_list_from_single): Removed. + (address_list_from_ipv4_addresses): Renamed from + address_list_from_vector. + +2003-10-31 Hrvoje Niksic + + * sysdep.h (CLOSE): Don't call close on file descriptors less than + 0, i.e. on uncreated sockets. + + * connect.c (resolve_bind_address): Work on struct sockaddr + directly. + (connect_to_host): Replacement for connect_to_many. Resolve HOST + and connect to any of its addresses. If we can't connect and the + host name lookup was cached, try to resolve it again. This should + fix problems with hosts behind dynamic DNS. Updated all callers. + (connect_to_ip): Replacement for connect_to_one. Removed SILENT; + added the argument PRINT instead. Updated all callers. + (set_connection_host_name): Removed. + + * host.c (address_list_address_at): New function instead of + address_list_copy_one. It returns a pointer to ip_address *, so + it's not necessary to copy the data. + (address_list_cached_p): New function. + (forget_host_lookup): Ditto. + + * connect.c: Got rid of the MSOCK global variable. Made bindport + return the local socket it creates. Added a new argument to + acceptport, the socket to call accept on. Updated callers. + (closeport): Removed. + + * connect.c: Moved the sockaddr code from host.c to this file, + because most of that stuff is used for connecting, and has nothing + to do with host names anyway. + (sockaddr_set_data, sockaddr_get_data): New functions, replace the + old sockaddr_set_address, sockaddr_set_port, sockaddr_get_address, + and sockaddr_get_port. + +2003-10-30 Hrvoje Niksic + + * sysdep.h: Use `S >= 8' rather than `S == 8' when looking for + large integers. + +2003-10-30 Hrvoje Niksic + + * url.c (append_uri_pathel): New argument ESCAPED_P that says + whether [B, E) is to be treated as URL-escaped or not. If + ESCAPED_P is false, don't unescape the region. + (url_file_name): u->file is not URL-escaped. + +2003-10-30 Hrvoje Niksic + + * retr.c (retrieve_from_file): Use retrieve_tree for + page-requisites. + + * main.c (main): Don't define opt.recursive when -p is used. + Instead, make sure that recursion is used for HTTP in that case. + +2003-10-29 Hrvoje Niksic + + * host.h: Defined accessors for elements of ip_address. Updated + all callers. + (address_list_match_all): Use memcmp in the non-IPv6 case. + + * wget.h (CONNECT_ERROR): Don't retry connecting if connect() + returned EAFNOSUPPORT. + +2003-10-27 Mauro Tortonesi + + * connect.h: changed bindport prototype and added the related + BIND_ON_IPV4_ONLY and BIND_ON_IPV6_ONLY flags. + + * connect.c: changed bindport and resolve_bind_address to allow + protocol-version specific DNS resolution. modified conaddr, + acceptport and connect_to_one to make use of struct + sockaddr_storage and of the new ip_address structure. + + * ftp-basic.c: added LPRT/LPSV (RFC1639) support, refactored + PORT/PASV (RFC959) and EPRT/EPSV (RFC2428) support code. + + * ftp.c: added the ftp_do_port and ftp_do_pasv functions to + handle FTP over IPv6. + + * ftp.h: changed prototype of ftp_epsv and added prototypes for + ftp_lpsv, ftp_lprt and ftp_eprt. + + * host.c: renamed the + wget_sockaddr_set_address and wget_sockaddr_get_addr, and + wget_sockaddr_{s,g}et_port couples to sockaddr_{s,g}et_address and + sockaddr_{g,s}et_port respectively. changed + address_list_match_all, address_list_from_addrinfo sockaddr_len, + pretty_print_address, lookup_host, sockaddr_{s,g}et_address and + sockaddr_{g,s}et_port to make use of struct sockaddr_storage and + of the new ip_address structure. removed map_ipv4_to_ip and + map_ip_to_ipv4. + + * host.h: redefined structure ip_address and removed structure + wget_sockaddr. + +2003-10-26 Hrvoje Niksic + + * sysdep.h: Include inttypes.h where available. + + * host.c: Switch from u_int32_t to uint32_t. + +2003-10-26 Hrvoje Niksic + + * netrc.c (parse_netrc): Reset the QUOTE flag after the closing + quote. + +2003-10-25 Hrvoje Niksic + + * url.c (is_valid_ipv6_address): Reformat to GNU coding style. + Use enums for NS_IN* constants. Use ISXDIGIT. + + * convert.c (construct_relative): Document better how the function + works. + +2003-10-23 Hrvoje Niksic + + * config.h.in: Deploy preprocessor magic to avoid Ultrix's + include which defines its own u_int32_t. + Reported by Bernhard Simon. + +2003-10-23 Hrvoje Niksic + + * version.c: Bump version. + +2003-10-23 Hrvoje Niksic + + * url.c: Ditto. + + * html-parse.c (advance_declaration): Don't use trailing comma in + enum because older compilers don't support it. + + * utils.c: Don't redefine HAVE_SIGSETJMP. + +2003-10-16 Hrvoje Niksic + + * convert.c (construct_relative): Don't handle absolute files + specially -- for example, -P/tmp/foo shouldn't imply that + converted files must refer to "/tmp/foo/..."! + +2003-10-15 Hrvoje Niksic + + * http.c: Consider status 307 a valid redirect. + +2003-10-15 Philip Stadermann + + * ftp.c (ftp_retrieve_glob): Correctly loop through the list whose + elements might have been deleted. + +2003-10-13 Hrvoje Niksic + + * html-url.c (tag_handle_meta): Set the Refresh link to expect + HTML. + (append_one_url): Renamed to append_url. + +2003-10-13 Hrvoje Niksic + + * sysdep.h: Only define u_int32_t. + +2003-10-11 Hrvoje Niksic + + * utils.c (large_int_to_string): Use snprintf() to print the + number. This will work even on systems where libc doesn't + understand %lld, but the compiler does, because it will use our + snprintf replacement. + + * init.c (parse_bytes_helper): New function. + (cmd_bytes): Use it to parse bytes, but cast the result to long. + (cmd_bytes_large): Ditto, but store the result to LARGE_INT. Used + for --quota so that --quota=10G works even on machines without + long long. + + * options.h (struct options): Declare quota as LARGE_INT. + + * retr.c (downloaded_exceeds_quota): Removed. + (downloaded_increase): Ditto. + (total_downloaded_bytes): New variable, replaces opt.downloaded, + which was the wrong place for it anyway. Updated callers of + downloaded_exceeds_quota and downloaded_increase to check this + variable directly. + + * sysdep.h: Get rid of VERY_LONG_TYPE. Use LARGE_INT for the same + purpose, defined as `long', `long long' or `double', depending on + size of long and whether long long is available. + +2003-10-11 Hrvoje Niksic + + * sysdep.h: Also check size of short for int32_t. + +2003-10-11 Hrvoje Niksic + + * host.c (lookup_host): Use u_int32_t to store the result of + inet_addr(). That removes the need for offset fiddling, caring + about endian-ness, etc. + + * sysdep.h: Define int32_t and u_int32_t if not available. + +2003-10-11 Hrvoje Niksic + + * ftp-basic.c (ftp_epsv): Use socklen_t * as the third argument to + getpeername. + + * config.h.in: Define socklen_t stub. + + * host.c (sockaddr_len): Return socklen_t. + + * connect.c (conaddr): Use socklen_t as the third argument to + accept, getsockname, and connect. + +2003-10-10 Hrvoje Niksic + + * recur.c (retrieve_tree): Don't descend into documents that are + not expected to contain HTML, regardless of their content-type. + + * html-url.c (tag_url_attributes): Record which attributes are + supposed to yield HTML links that can be followed. + (tag_find_urls): Propagate that information to the caller through + struct urlpos. + +2003-10-10 Hrvoje Niksic + + * hash.c (find_mapping): Return the next available mapping when + the key is not found, not NULL. + (hash_table_put): Use find_mapping to find the storage for the new + data. + (hash_table_put): Grow the table before exceeding maximum + fullness, not afterwards. + +2003-10-10 Hrvoje Niksic + + * hash.c (hash_table_new): Slightly change the meaning of the + first parameter. Instead of being the minimum initial size, it is + now the minimum number of items that the hash table can take + without needing to resize. + +2003-10-09 Hrvoje Niksic + + * html-url.c (init_interesting): Initialize interesting_tags and + interesting_attributes as hash tables. This simplifies the code + immensely because hash tables handle allocation and remove + duplicates automatically. + (find_tag): Removed. + (collect_tags_mapper): Instead of calling find_tag, simply get the + entry from interesting_tags hash table, which is both simpler and + faster. + +2003-10-09 Hrvoje Niksic + + * hash.c (hash_table_get): Declare hash-table argument as const. + (find_mapping): Ditto. + (hash_table_get_pair): Ditto. + (hash_table_contains): Ditto. + (hash_table_count): Ditto. + +2003-10-08 Hrvoje Niksic + + * html-url.c (get_urls_html): Parse the appropriate flags to + html-parse.c. + + * html-parse.c (map_html_tags): Accept FLAGS from the caller + instead of examining OPT. + +2003-10-08 Hrvoje Niksic + + * html-url.c (find_tag): Switch to binary search. + +2003-10-08 Hrvoje Niksic + + * main.c (print_help): Fix typo; stured -> stored. + +2003-10-08 Hrvoje Niksic + + * getopt.c: Add definitions of getopt_long and getopt_long_only. + +2003-10-08 Hrvoje Niksic + + * config.h.in: Renamed DEBUG to ENABLE_DEBUG. ENABLE_DEBUG is, I + think, a better name, because it implies that debugging output is + merely possible, not "on by default", as might be construed from + just DEBUG. + +2003-10-08 Hrvoje Niksic + + * ftp.c (has_insecure_name_p): Define it here. + + * utils.c (has_wildcards_p): Define it here. + + * sysdep.h: Declare fnmatch-related macros here, if not using + system fnmatch(). Update .c files to not declare fnmatch.h + directly. + + * cmpt.c (fnmatch): Moved here. Use it only under non-GNU libc. + +2003-10-08 Hrvoje Niksic + + * getopt.c: Newer version, imported from Free libit. + +2003-10-07 Hrvoje Niksic + + * cookies.c (struct cookie): Remove unused backpointer to cookie + jar. + +2003-10-07 Hrvoje Niksic + + * cmpt.c (memmove): Comment out, since it's no longer used. + + * cookies.c (cookie_jar_generate_cookie_header): Allocate room for + chains in one pass. + (find_chains_of_host): Assume that the caller has allocated DEST + to be sufficiently large to take all the data. + (eliminate_dups): Run through the array and eliminate dups on the + fly instead of using memmove. + (cookie_jar_process_set_cookie): Free cookie->domain before + re-setting it. + +2003-10-05 Gisle Vanem + + * mswindows.c (set_sleep_mode): Fix type of + _SetThreadExecutionState. + +2003-10-05 Hrvoje Niksic + + * utils.c (file_size): Return -1 if fopen() returns NULL. Prior + to this patch, wget --post-file=nosuchfile dumped core. + +2003-10-04 Gisle Vanem + + * mswindows.c (run_with_timeout): Use WaitForSingleObject to wait + for thread termination. + +2003-10-04 Hrvoje Niksic + + * log.c: Use `...' in function definitions; ansi2knr will convert + them to va_dcl. This allowed removal of the ugly VA_START_1 and + VA_START_2 macros. + +2003-10-03 Gisle Vanem + + * connect.c: And don't include them here. + + * mswindows.h: Include winsock headers here. + +2003-10-03 Hrvoje Niksic + + * html-parse.c (convert_and_copy): Move variable declarations + before statements. + +2003-10-02 Gisle Vanem + + * mswindows.c (run_with_timeout): For Windows: Run the 'fun' in a + thread via a helper function. Continually query the thread's + exit-code until finished or timed out. + +2003-10-02 Hrvoje Niksic + + * wget.h (XMALLOC_ARRAY): Removed. + (ALLOCA_ARRAY): Ditto. + + * html-parse.c: Renamed alloca_p to resized. + (GROW_ARRAY): Renamed DO_REALLOC_FROM_ALLOCA to GROW_ARRAY and + returned it to html-parse.c, since nothing else was using it. + +2003-10-02 Hrvoje Niksic + + * retr.c (retrieve_url): Initialize DUMMY storage for DT. Caught + by valgrind. + +2003-10-02 Hrvoje Niksic + + * html-parse.c (convert_and_copy): Handle numeric entities in + hexadecimal, &#xHH. + (convert_and_copy): Copy the contents directly to the pool without + a stack-allocated intermediary. + +2003-10-02 Hrvoje Niksic + + * utils.c (alarm_set): New function; use either setitimer or alarm + to set up the alarm. + (alarm_cancel): New function; cancel the alarm set up by + alarm_set. + (run_with_timeout): Use them. + +2003-10-01 Hrvoje Niksic + + * url.c (url_parse): Don't leak memory when a reencoded URL turns + out to be invalid. + + * url.c (parse_errors): Mark error messages for translation. + (url_error): Translate error messages returned to the caller. + +2003-10-01 Hrvoje Niksic + + * ftp.c (ftp_loop_internal): Initialize TMRATE to NULL to shut up + the compiler. + +2003-09-26 Gisle Vanem + + * src/mswindows.c: Added ws_percenttitle() showing progress in the + window titlebar. Called from retr.c. Secured ws_mypath(). + + * windows/config.h.ms: alloca() prototype not needed. Removed + "#undef ENABLE_NLS"; should be in Makefile IMHO. Moved + WGET_USE_STDARG from mswindows.h to config.ms.h because of #ifdef + in log.c. (MSVC's vararg.h and stdarg.h are incompatible). + +2003-09-29 Aaron Hawley + + * ftp.c (getftp): --spider option should now work with FTP + downloads. + (ftp_loop_internal): quiet reports and calculations of downloads + when --spider option set, nor try deleting when --delete-after + also set. + (ftp_loop): --spider will skip HTML-ification of .listing file. + +2003-09-26 Gisle Vanem + + * mswindows.c (read_registry): Removed. + (set_sleep_mode): New function. + (windows_main_junk): Call it. + +2003-09-26 Gisle Vanem + + * mswindows.c (read_registry): Fix invocation of registry + functions. + + * mswindows.c (read_registry): Condition definitions of sleep and + usleep with not HAVE_SLEEP and HAVE_USLEEP respectively. Define + HAVE_SLEEP and HAVE_USLEEP under __DMC__. + +2003-09-24 Hrvoje Niksic + + * url.c (url_escape_1): Revert unintentional change to lowercase + xdigit escapes. + (url_escape_dir): Document that this function depends on the + output of url_escape_1. + +2003-09-23 Hrvoje Niksic + + * progress.c (create_image): Print the current ETA if we're done + with the download. + (create_image): Change '-' display char to '+' in the progress bar. + + * Makefile.in (clean): Remove .libs. + +2003-09-23 Hrvoje Niksic + + * cookies.c (struct cookie): New flag domain_exact. + (update_cookie_field): Skip leading dot in domain. + (find_matching_chains): Match numeric addresses exactly; don't + needlessly copy HOST to the stack. + (matching_cookie): Added argument HOST. If cookie->domain_exact + is set, check that HOST is equal to cookie->domain. + (cookie_jar_load): Only use TAB as delimiter. Document the + meaning of DOMAIN-FLAG. Skip leading dot in domain. + (cookie_jar_load): Don't ignore DOMAIN-FLAG -- instead, set + domain_exact to true if DOMAIN-FLAG is false. + (save_cookies_mapper): If domain_exact is false, prepend the + domain with dot, like Mozilla does. + +2003-09-22 Hrvoje Niksic + + * progress.c (create_image): Print the initial part of the + download with '-' characters, analogous to how dot progress prints + the initial part with ','. + + * hash.c (ptrhash): New function. + (ptrcmp): Ditto. + (hash_table_new): Default to identity hash table. + +2003-09-22 Hrvoje Niksic + + * safe-ctype.h (_sch_test): The cast of BIT to unsigned char was + broken -- _sch_istable bitmasks are 16-bit, not 8-bit! Cast BIT + to unsigned short instead. + +2003-09-22 Hrvoje Niksic + + * url.c (path_simplify): Instead of calls to memmove, handle "./" + and "../" by advancing pointers. + +2003-09-22 Hrvoje Niksic + + * retr.c (getproxy): Moved from url.c. + + * convert.c: Split off link conversion from url.c into separate + file. Also included the book-keeping stuff from recur.c. + +2003-09-21 Hrvoje Niksic + + * init.c: Improved documentation of functions. + (cmd_boolean): Attempt to make code that tries to avoid calling + strcmp for "speed" a bit more readable. + + * init.c (simple_atof): Report error on encountering non-digit, + non-"." character. + (simple_atoi): Replacement for myatoi(), calling interface + compatible with simple_atof. Updated myatoi's callers. + +2003-09-21 Bertrand Demiddelaer + + * url.c (path_simplify): Would read two bytes past the end of the + string in the "./" case. + +2003-09-21 Matthew J. Mellon + + * http.c (gethttp): Recognize content-type "application/xhtml+xml" + as what Wget considers "text/html". + +2003-09-21 Hrvoje Niksic + + * connect.c (connect_with_timeout): Made timeout type double. + + * options.h (struct options): New members read_timeout, + dns_timeout, and connect_timeout. + Use them. + +2003-09-21 Hrvoje Niksic + + * init.c (simple_atof): New function. + (cmd_time): Use it. + (cmd_bytes): Accept things like "1.5k" and such. Use simple_atof + to parse decimals. + + * retr.c (limit_bandwidth): Adjust each sleep by the error of the + previous one. + +2003-09-21 Hrvoje Niksic + + * main.c (main): Use setoptval() for setting the options. Use + run_command for `-e'. + + * init.c (parse_line): Rewritten to return COMIND right away. + Changed linkage to static. + (run_wgetrc): Use the available comind when calling setval, so it + doesn't have to be computed twice. + (setval_internal): New function, runs the command's action without + any error checking. + (setoptval): New function, does what setval used to do, but exits + in case of error. + (run_command): New function. + +2003-09-21 Hrvoje Niksic + + * connect.c (select_fd): Change MAXTIME's type to double. Handle + its decimal part. + + * retr.c (sleep_between_retrievals): In the random-wait case, use + random_float() to wait between 0 and 2*opt.wait seconds. + + * utils.c (run_with_timeout): Accept `double' timeouts. Correctly + handle timeout values in (0, 1) range. + (random_float): New function. + + * options.h (struct options): Change the types of wait, waitretry, + and timeout to double. + + * init.c (cmd_time): Accept floating point time. + +2003-09-20 Hrvoje Niksic + + * retr.c (get_contents): Cosmetic fixes. + +2003-09-20 Hrvoje Niksic + + * url.c (uri_merge): Get rid of uri_merge_1. + (uri_merge): Merge "foo//", "bar" as "foo//bar", not "foo///bar", + i.e. don't add an extra slash merely because BASE ends with two + slashes. + (parse_credentials): Renamed from parse_uname. Rewrittern in + standard [beg, end) calling style. + (url_skip_credentials): Renamed from url_skip_uname. Made static. + (url_skip_credentials): Include # and ; as terminators. Old code + would mistakenly consider "http://foo.com#hniksic@iskon.hr" to + contain a username. + (url_skip_scheme): Removed because it was unused. + (url_has_scheme): Require "scheme" to be at least one char long. + +2003-09-19 Hrvoje Niksic + + * url.c (url_file_name): Expect NULL dir_prefix. + + * init.c (cmd_file): Use a macro to prevent multiple #ifdef + WINDOWS. + (defaults): Set dir_prefix to NULL by default. + +2003-09-19 Hrvoje Niksic + + * safe-ctype.h (_sch_test): Cast BIT to unsigned char, like latest + gcc does. + +2003-09-19 Hrvoje Niksic + + * wget.h (BOUNDED_TO_ALLOCA): Evaluate PLACE only once. + (ARRAY_SIZE): Renamed to countof. All callers updated. + +2003-09-19 Hrvoje Niksic + + * main.c (main): New option --strict-comments. + + * html-parse.c (find_comment_end): New function: simple BM search + for "-->". + (map_html_tags): Use it if looking at a comment and not in strict + comments mode. + +2003-09-17 Aurelien Marchand + + * ftp.h: Added OS400 system in enum + * ftp-basic.c: recognize OS400 systems + * ftp.c: don't prepend the CWD if talking to OS400, since it + breaks the change in library + +2003-09-18 Hrvoje Niksic + + * retr.c (get_contents): Pass the correct argument to ssl_iread. + +2003-09-18 Hrvoje Niksic + + * safe-ctype.h: Don't #define ctype.h macros to errors because + that loses when someone #include's ctype.h after safe-ctype.h. + +2003-09-17 Hrvoje Niksic + + * url.c: Undef U, W, C after use. + +2003-09-17 Hrvoje Niksic + + * init.c (cmd_spec_restrict_file_names): Allow the OS setting to + be augmented by ",nocontrol" which means don't escape the control + characters, but otherwise keep OS settings. + + * url.c (file_unsafe_char): Deleted. + (append_uri_pathel): Query filechr_table directly. + (filechr_table): Separated Unix, Windows, and control-unsafe + characters. + +2003-09-17 Hrvoje Niksic + + * url.c (url_escape_1): New function. + (url_escape): Use it. + (sync_path): Handle pathological cases where u->file and u->dir + contain really strange characters. + (ENCODE): Deleted. + (REENCODE): Deleted. + +2003-09-16 Hrvoje Niksic + + * url.c (url_file_name): Don't reallocate FNAME if the file + doesn't exist, as is usually the case. + + * utils.c (unique_name): New flag allow_passthrough. + +2003-09-16 Hrvoje Niksic + + * utils.c (wtimer_sys_diff): Convert the time difference to signed + __int64, then to double. This works around MS VC++ 6 which can't + convert unsigned __int64 to double directly. + +2003-09-16 Hrvoje Niksic + + * Makefile.in (clean): Also remove the core. files + produced by recent Linux systems. + +2003-09-16 Hrvoje Niksic + + * http.c (post_file): Don't pad the file if it's not large + enough. Bail out instead. + +2003-09-15 Hrvoje Niksic + + * retr.c (get_contents): Reduce the buffer size to the amount of + data that may pass through for one second. This prevents long + sleeps when limiting bandwidth. + + * connect.c (connect_to_one): Reduce the socket's RCVBUF when + bandwidth limitation to small values is requested. + +2003-09-15 Hrvoje Niksic + + * progress.c (update_speed_ring): Moved the speed ring update to a + separate function and documented it better. + + * progress.c: Use `double' for most timers to support granularity + smaller than 1ms. + +2003-09-15 Hrvoje Niksic + + * wget.h (XDIGIT_TO_XCHAR): Implement as index into a literal + string. + (XDIGIT_TO_xchar): Ditto. + +2003-09-15 Hrvoje Niksic + + * utils.c: Change the type of timer-related functions from long to + double, for better precision. On machines supporting gettimeofday + the timers now work with granularity of less than one millisecond. + +2003-09-15 Hrvoje Niksic + + * cookies.c (parse_set_cookies): Fixed the parser to handle more + edge conditions. + (test_cookies): New function, contains a test suite for + parse_set_cookies. + +2003-09-15 Hrvoje Niksic + + * url.c (strpbrk_or_eos): Implement as a macro under Gcc. + +2003-09-15 Hrvoje Niksic + + * cookies.c (parse_set_cookies): Allow trailing space in + set-cookies header. Also, allow any amount of whitespace, not + only one character. Allow empty set-cookies header without + spewing an error. + +2003-09-14 Hrvoje Niksic + + * url.c (append_uri_pathel): Use opt.restrict_file_names when + calling file_unsafe_char. + + * init.c: New command restrict_file_names. + + * main.c (main): New option --restrict-file-names[=windows,unix]. + + * url.c (url_file_name): Renamed from url_filename. + (url_file_name): Add directory and hostdir prefix here, not in + mkstruct. + (append_dir_structure): New function, does part of the work that + used to be in mkstruct. Iterates over path elements in u->path, + calling append_uri_pathel on each one to append it to the file + name. + (append_uri_pathel): URL-unescape a path element and reencode it + with a different set of rules, more appropriate for handling of + files. + (file_unsafe_char): New function, uses a lookup table to decide + whether a character should be escaped for use in file name. + (append_string): New utility function. + (append_char): Ditto. + (file_unsafe_char): New argument restrict_for_windows, decide + whether Windows file names should be escaped in run-time. + + * connect.c: Include to get prototype for abort(). + +2003-09-14 Hrvoje Niksic + + * utils.c (wtimer_sys_set): Extracted the code that sets the + current time here. + (wtimer_reset): Call it. + (wtimer_sys_diff): Extracted the code that calculates the + difference between two system times here. + (wtimer_elapsed): Call it. + (wtimer_elapsed): Don't return a value smaller than the previous + one, which could previously happen when system time is set back. + Instead, reset start time to current time and note the elapsed + offset for future calculations. The returned times are now + guaranteed to be monotonically nondecreasing. + +2003-09-10 Hrvoje Niksic + + * host.c (lookup_host): Print the result of the DNS lookup. + +2003-09-10 Hrvoje Niksic + + * init.c (cmd_boolean): Accept yes/no along with on/off. + (cmd_lockable_boolean): Ditto. + +2003-09-10 Hrvoje Niksic + + * init.c: New command dns_cache. + + * main.c (main): New option --dns-cache[=off]. + +2003-09-09 Hrvoje Niksic + + * config.h.in: Initialize HAVE_GETADDRINFO and ENABLE_IPV6. + + * all: Use #ifdef ENABLE_IPV6 instead of the older INET6. Use + HAVE_GETADDRINFO for getaddrinfo-related stuff. + +2003-09-09 Hrvoje Niksic + + * url.c (url_parse): Return an error if the URL contains a [...] + IPv6 numeric address and we don't support IPv6. + +2003-09-05 Hrvoje Niksic + + * url.c (is_valid_ipv6_address): Modified to not require + zero-terminated strings. + (is_valid_ipv4_address): Ditto. + +2003-09-05 Mauro Tortonesi + + src/url.c: added RFC 2732 compliance for URL parsing. The + functions is_*_address valid are a modified version of + glibc 2.3.2 inet_pton's code. + +2003-09-03 Ahmon Dancy + + * main.c init.c options.h: Added --retry-connrefused option so + that Connection Refused failures are treated as non-fatal (when + trying to retrieve from busy servers). + + * wget.h: New CONNECT_ERROR macro for encapsulating this + modification. + + * ftp.c http.c : Use CONNECT_ERROR macro in places where + ECONNREFUSED was checked. + +2003-01-11 Ian Abbott + + * ftp.c (ftp_retrieve_glob): Reject insecure filenames as determined + by calling new function has_insecure_name_p. This is based on a + patch by Red Hat. + + * fnmatch.c (has_insecure_name_p): New function: returns non-zero + if filename starts with `/' or contains `../' and is therefore + considered insecure. + + * fnmatch.h: Declare has_insecure_name_p(). + +2002-08-03 Hrvoje Niksic + + * init.c (cmd_file): Allocate RESULT correctly. + +2002-07-24 Hrvoje Niksic + + * recur.c (retrieve_tree): Check whether downloaded_html_set is + non-NULL before using it. + +2002-05-27 Hrvoje Niksic + + * html-parse.c (NAME_CHAR_P): Allow almost any character here. + +2002-05-24 Hrvoje Niksic + + * progress.c (bar_set_params): Fall back to dot progress if the + terminal type is "emacs". + +2002-05-20 Hrvoje Niksic + + * log.c: Don't #undef WGET_USE_STDARG. + +2002-05-16 Hrvoje Niksic + + * hash.c (prime_size): Store the offset of the prime number in the + prime table. When searching, start with the given offset. + (hash_table_new): Pass the pointer to ht->prime_offset to + prime_size. + (grow_hash_table): Ditto. + (prime_size): Make 13 the first prime to make empty hash tables + slightly smaller. + +2002-05-16 Ian Abbott + + * recur.c (download_child_p): Minor optimization to avoid an + unnecessary additional call to schemes_are_similar_p function. + +2002-05-16 Ian Abbott + + * url.c (schemes_are_similar_p): New function to test enumerated + scheme codes for similarity. + + * url.h: Declare it. + + * recur.c (download_child_p): Use it to compare schemes. This + also fixes a bug that allows hosts to be spanned (without the + -H option) when the parent scheme is https and the child's is + http or vice versa. + +2002-05-14 Bill Richardson + + * ftp.c (getftp): Don't ftruncate stdout. + + * http.c (gethttp): Don't ftruncate stdout. + +2002-05-09 Ian Abbott + + * cmpt.c (strptime_internal): Synched with glibc-2.1.3. + (get_number): Ditto. + (get_alt_number): Ditto. + (__isleap): New function-like macro used by strptime. + (day_of_the_week): New function used by strptime. + (day_of_the_year): Ditto. + (__mon_yday): Now shared by mktime and strptime implementations. + +2002-05-08 Hrvoje Niksic + + * cookies.c (check_domain_match): Use match_tail in case + insensitive mode. + + * utils.c (match_tail): Allow the caller to specify case + insensitive mode. + + * cookies.c (store_cookie): When expiry_time is 0, print it as + undefined, not indefinite. + +2002-05-07 Ian Abbott + + * cookies.c (cookie_jar_process_set_cookie): Do not store + discarded cookie. + +2002-04-21 Hrvoje Niksic + + * cookies.c (check_domain_match): Allow cookies to be set for + subdomains of unknown top-level domains under some circumstances. + +2002-04-21 Thomas Lussnig + + * gen_ssl.c: + - allow checking of server cert + - allow defining client cert type + - allow limit of ssl protocol + - check more return values + - added debug message on break + +2002-04-21 Hrvoje Niksic + + * recur.c (download_child_p): Revert order of items in check + number 6 for clarity. + +2002-04-20 Hrvoje Niksic + + * init.c: Ditto. + + * main.c: Ditto. + + * http.c: Use the new interface. + + * cookies.c: Provide an OO-style "cookie jar" interface to enable + separate cookie jars. + + * http.c (http_atotm): Declare argument as const. + +2002-04-20 Hrvoje Niksic + + * cookies.c (cookie_new): Default to PORT_ANY. + (find_cookie_chain_exact): Only search by DOMAIN. + (find_matching_cookie): Also check that PORT matches. + (store_cookie): Only match the domain. + (set_cookie_header_cb): When a cookie "fakes" a domain, assume it + is valid for that host rather than discarding it completely. + (find_matching_chains): Don't search by PORT. + (matching_cookie): Also match PORT. + (load_cookies): Set the port if specified, otherwise leave it as + ANY. + (save_cookies_mapper): Save the port if specified, otherwise leave + it empty. + +2002-04-19 Thomas Lussnig + + * init.c: The option `egdfile' was not in sort order. + +2002-04-16 Hrvoje Niksic + + * ftp.c (getftp): Treat directories that begin with : as + absolute. + (getftp): Strip trailing slashes from con->id before merging it + with TARGET. + +2002-04-16 Hrvoje Niksic + + * http.c (gethttp): If Content-Type is not given, assume + text/html. + +2002-04-15 Hrvoje Niksic + + * recur.c (download_child_p): Don't ignore rejection of HTML + documents that are themselves leaves of recursion. + +2002-04-15 Ian Abbott + + Makefile.in: Updated several dependencies for object files to take + account of nested include files. + +2002-04-15 Ian Abbott + + Makefile.in: The target `connect$o' (connect.o) now depends on + `utils.h' + +2002-04-15 Ian Abbott + + * host.c (SET_H_ERRNO): New function-like macro to set `h_errno'. + (gethostbyname_with_timeout): Use it. + + * utils.c: Don't define `SETJMP()', `run_with_timeout_env' or + `abort_run_with_timeout()' when `USE_SIGNAL_TIMEOUT' is undefined. + +2002-04-15 Hrvoje Niksic + + * host.c (getaddrinfo_with_timeout): New function. + (gethostbyname_with_timeout): Ditto. + (lookup_host): Use them. + +2002-04-14 Hrvoje Niksic + + * utils.c (number_to_string): Handle the case when n < -INT_MAX. + +2002-04-14 Hrvoje Niksic + + * init.c (comind): Use a marginally faster implementation of + binary search. To quote Martin Buchholz, "a nanosecond saved is a + nanosecond earned." + +2002-04-14 Hrvoje Niksic + + * main.c (print_help): Document `--post-data' and `--post-file'. + +2002-04-14 Hrvoje Niksic + + * http.c (gethttp): Ditto. + + * retr.c (retrieve_url): Initialize variables to appease the + compiler. + + * gen_sslfunc.c (ssl_iread): Don't handle EINTR when calling + select_fd. + (ssl_iwrite): Ditto. + + * connect.c (select_fd): Rewrite to handle EINTR. Set errno to + ETIMEDOUT in case of timeout. + (iread): No need to handle EINTR when calling select_fd. + (iwrite): Ditto. + +2002-04-14 Hrvoje Niksic + + * retr.c (retrieve_url): Make sure that POST is not honored for + redirections. + + * http.c (gethttp): Send the POST data when requested. + (post_file): New function. + (gethttp): Use it. + + * main.c (main): Ditto. + + * init.c: Add new options. + + * options.h (struct options): New options post_data and + post_file_name. + +2002-04-14 Hrvoje Niksic + + * connect.c (connect_with_timeout): Firing SIGALRM can result in + connect() exiting with EINTR. Treat EINTR the same as ETIMEDOUT. + +2002-04-13 Hrvoje Niksic + + * connect.c (connect_with_timeout): Use it. + + * utils.c (run_with_timeout): New function. + +2002-04-13 Hrvoje Niksic + + * url.c (getproxy): Accept a struct url argument. This obviates + the need for USE_PROXY_P. + + * retr.c (retrieve_url): Allow proxy to be a non-FTP URL. + + * ftp.c (getftp): Recognize FWTK-style proxy. + +2002-04-12 Hrvoje Niksic + + * config.h.in: Only define _VA_LIST when compiled with gcc. + +2002-04012 Ian Abbott + + * http.c (http_loop): Compensate for MS Windows two-second + granularity of file modification time when comparing timestamps. + + * ftp.c (ftp_retrieve_list): Ditto. + +2002-04-12 Ian Abbott + + * utils.c (has_html_suffix_p): New function to test filename for + common html extensions. + + * utils.h: Declare it. + + * http.c (http_loop): Use it instead of previous test. + + * retr.c (retrieve_url): Ditto. + + * recur.c (download_child_p): Ditto. + +2002-04-12 Hrvoje Niksic + + * config.h.in: Define _VA_LIST on Solaris to prevent stdio.h from + declaring va_list. + From Kevin Rodgers . + +2002-04-12 Ian Abbott + + * Makefile.in: Specify libtool mode explicitly when linking. + +2002-04-12 Hrvoje Niksic + + * connect.c (connect_with_timeout): New function. + (connect_to_one): Use it. + + * config.h.in: Add stubs for HAVE_SIGSETJMP, HAVE_SIGBLOCK, and + HAVE_SETJMP_H. + +2002-04-11 Hrvoje Niksic + + * log.c: Set WGET_USE_STDARG if __STDC__ is defined and stdarg.h + is present. + +2002-04-11 Hrvoje Niksic + + * progress.c (bar_create): If INITIAL is larger than TOTAL, fix + TOTAL. + (bar_finish): Likewise. + +2002-04-11 Hrvoje Niksic + + * html-url.c (tag_handle_form): New function. Pick up form + actions and mark them for conversion only. + +2002-04-11 Hrvoje Niksic + + * progress.c (struct progress_implementation): Use PARAMS when + declaring the parameters of *create, *update, *finish, and + *set_params. + + * netrc.c: Ditto. + + * http.c: Reformat some function definitions so that ansi2knr can + read them. + + * hash.c (struct hash_table): Use the PARAMS macro around + parameters in the declaration of hash_function and test_function. + (prime_size): Spell 2580823717UL and 3355070839UL as (unsigned + long)0x99d43ea5 and (unsigned long)0xc7fa5177 respectively, so + that pre-ANSI compilers can read them. + (find_mapping): Use PARAMS when declaring EQUALS. + (hash_table_put): Ditto. + + * ftp.h: Wrap the parameters of ftp_index declaration in PARAMS. + + * cookies.c (cookie_new): Use (unsigned long)0 instead of 0UL, + which was unsupported by pre-ANSI compilers. + + From Nelson H. F. Beebe , for the most part. + +2002-04-11 Hrvoje Niksic + + * url.c (url_filename): Use compose_file_name regardless of + whether opt.dirstruct is set. + (mkstruct): Don't handle the query and the reencoding of DIR; that + is done in compose_file_name. + +2002-04-10 Hrvoje Niksic + + * wget.h: Ditto for extern char *exec_name. + + * options.h: Don't guard against OPTIONS_DEFINED_HERE -- it is + perfectly legal to follow an `extern' with a non-`extern' ones, + provided the types match. + + * main.c: Don't define OPTIONS_DEFINED_HERE. + +2002-04-10 Hrvoje Niksic + + * progress.c (create_image): Revert to calculating ETA based on + average download speed. + (create_image): Don't print ETA until the download has been active + for at least 3 seconds. + (create_image): When ETA is not available, don't print anything. + The previous version would print --:--. + +2002-04-10 Hrvoje Niksic + + * progress.c (bar_update): Keep updating a subinterval until it + reaches or exceeds a watermark. That way the measurement will be + guaranteed to span a configurable minimum of time. The current + default is 3s in 30 100ms intervals. + +2002-04-09 Hrvoje Niksic + + * progress.c (bar_update): Maintain an array of the time it took + to perform previous 30 network reads. + (create_image): Calculate the download speed and ETA based on the + last 30 reads, not the entire download. + (create_image): Make sure that the ETA is not changed more than + once per second. + +2002-04-09 Ian Abbott + + * mswindows.c (borland_utime): New function conditionally defined + when `HACK_BCC_UTIME_BUG' is defined. A reimplementation of + `utime()' as Borland's `utime()' function is broken on Windows 9x + systems. (Original patch by Chin-yuan Kuo .) + +2002-04-08 Hrvoje Niksic + + * ftp.c (ftp_loop): Propagate the result of ftp_retrieve_glob. + +2002-03-26 Ian Abbott + + * Makefile.in: Updated several dependencies for object files. + +2002-03-20 Ian Abbott + + * mswindows.c: Include "utils.h". + +2002-03-18 Ian Abbott + + * host.h: Don't include netdb.h on windows. + +2002-02-19 Hrvoje Niksic + + * recur.c (retrieve_tree): Handle the case when start_url doesn't + parse. + +2002-02-19 Andreas Damm + + * wget.h (DO_REALLOC_FROM_ALLOCA): Multiply with sizeof(type) when + calling xmalloc and memcpy. + +2002-02-19 Hrvoje Niksic + + * host.h: Include Unix-specific includes #ifndef WINDOWS. + Patch originally provided by Christian Lackas. + +2002-02-11 Christian Lackas + + * recur.c: recurive downloading for https fixed. + +2002-02-19 Alan Eldridge + + * host.h: Also include and . + + * ftp-basic.c: Also include . + +2002-02-05 Ian Abbott + + * http.c (gethttp): when -c used, mark already fully retrieved + file as successfully retrieved. + +2002-02-19 Hrvoje Niksic + + * url.c (url_parse): Don't treat '?' as query string separator + when parsing FTP URLs. + +2002-02-01 Hrvoje Niksic + + * html-url.c (tag_handle_meta): Don't crash on where content is missing. + +2002-01-31 Herold Heiko + + * ftp-basic.c, host.c: don't include sys/socket.h, arpa/inet.h, + netdb.h on windows. + +2002-01-30 Hrvoje Niksic + + * retr.c (retrieve_url): Remove redirection cycle detection. This + is because some sites legitimately redirect the user back to the + same location, e.g. after an authorization check performed by + another page. MAX_REDIRECTIONS is still used to prevent infinite + redirection loops. + +2002-01-26 Hrvoje Niksic + + * http.c (gethttp): Wrap host name in square brackets if it + contains a colon. + +2002-01-26 Hrvoje Niksic + + * url.c (url_parse): Allow all hex digits, not only decimal ones, + to form an IP address. + +2002-01-26 Hrvoje Niksic + + * url.c (urlchr_table): Make square braces reserved, so we can + parse http://[::1]/. + (url_parse): Handle host in braces. + (url_string): If url->host contains colons, wrap it in braces. + +2002-01-24 Hrvoje Niksic + + * connect.c (resolve_bind_address): New function. + (connect_to_one): Use it. + (bindport): Ditto. + + * init.c: Don't resolve bind-address here. + + * host.c (wget_sockaddr_set_address): Would bug out with ADDR == NULL. + +2002-01-24 Hrvoje Niksic + + * host.c (lookup_host): Use sizeof(ip4_address) to calculate the + offset. + (address_list_new): Use map_ipv4_to_ip. + (wget_sockaddr_set_address): Convert ADDR to IPv4 before using it + in IPv4 context. + +2002-01-24 Hrvoje Niksic + + * source: Integrated IPv6 support. + Written by Thomas Lussnig . + +2002-01-15 Ian Abbott + + * init.c (cmd_file): Change `\' to `/' for Windows (yes, really!) + (cmd_directory): New function. Like cmd_file(), but strips + trailing directory separators. + (commands): Change action for "dirprefix" from `cmd_file' to + `cmd_directory'. + + * utils.c (make_directory): Allow intermediate `mkdir' calls to + fail, as not all path components that do not exist should be + directory components, especially under Windows. + +2002-01-17 Hrvoje Niksic + + * netrc.c (parse_netrc): Skip leading whitespace before testing + whether the line is empty. Empty lines still contain the line + terminator. + +2002-01-15 Hrvoje Niksic + + * gen_sslfunc.c (ssl_iread): Call select on the file descriptor + only if no data is pending in SSL buffers. + From tony@bluetail.com. + +2002-01-14 Hrvoje Niksic + + * headers.c (header_get): Strip trailing whitespace from the + header. + +2002-01-14 Hrvoje Niksic + + * url.c (parse_uname): URL-decode *USER and *PASSWD. + +2002-01-07 Ian Abbott + + * url.c (uri_merge_1): Deal with "net path" relative URL (one that + starts with "//"). + +2002-01-14 Hrvoje Niksic + + * http.c (gethttp): Invalidate SOCK if get_contents encountered an + error. + +2001-12-24 Hrvoje Niksic + + * version.c: Wget 1.8.1 is released. + +2001-12-19 Hrvoje Niksic + + * version.c: Wget 1.8.1-pre3 is released. + +2001-12-19 Hrvoje Niksic + + * recur.c (retrieve_tree): Enqueue the canonical representation of + start_url, so that the test against dl_url_file_map works. + +2001-12-19 Hrvoje Niksic + + * log.c (logputs): Check for requested verbosity before printing + anything. + +2001-12-19 Hrvoje Niksic + + * html-url.c (tag_handle_link): Treat the "shortcut icon" link as + inline. + +2001-12-18 Hrvoje Niksic + + * recur.c (retrieve_tree): Make a copy of file obtained from + dl_url_file_map because the code calls xfree(file) later. + +2001-12-18 Hrvoje Niksic + + * recur.c (register_html): Maintain a hash table of HTML files + along with the list. Disallow duplicates. + (retrieve_tree): Use downloaded_html_set to check whether the file + found in dl_url_file_map is an HTML file, and descend into it if + so. + (convert_all_links): Don't guard against duplicates in + downloaded_html_list, since they are no longer possible. + +2001-12-18 Ian Abbott + + * recur.c (retrieve_tree): Pass on referring URL when retrieving + recursed URL. + +2001-12-17 Hrvoje Niksic + + * version.c: Wget 1.8.1-pre2 is released. + +2001-12-17 Hrvoje Niksic + + * retr.c (sleep_between_retrievals): Simplify indentation. + +2001-12-17 Hrvoje Niksic + + * gen_sslfunc.c (ssl_init_prng): Use random_number to get a byte + of "randomness" at a time. + (ssl_init_prng): Don't seed the PRNG; random_number will do that. + + * retr.c (sleep_between_retrievals): Use it. Make sure that the + random amount averages in opt.wait. + (sleep_between_retrievals): Don't seed the PRNG; random_number + will do that. + + * utils.c (random_number): New function. + +2001-12-14 Hrvoje Niksic + + * url.c (path_simplify): Move here from utils.c, and make static. + +2001-12-13 Hrvoje Niksic + + * init.c (wgetrc_file_name): Print correct message when loading + getenv("WGETRC") fails. + +2001-12-13 Hrvoje Niksic + + * recur.c (register_download): Don't abort when one URL references + two different files. + +2001-12-13 Hrvoje Niksic + + * http.c (gethttp): Check for conn->scheme, not u->scheme, before + calling ssl_iwrite. + +2001-12-13 Hrvoje Niksic + + * version.c: Wget 1.8.1-pre1 is released. + +2001-12-13 Hrvoje Niksic + + * res.c (matches): Fix broken URL in the docstring. + +2001-12-13 Hrvoje Niksic + + * html-url.c (tag_url_attributes): Mark as + external. + +2001-12-12 Hrvoje Niksic + + * url.c (get_urls_file): Cosmetic changes. + +2001-12-12 Hrvoje Niksic + + * html-url.c (append_one_url): Resurrect warning when unable to + resolve a relative link. + +2001-12-12 Hrvoje Niksic + + * html-url.c (collect_tags_mapper): Break into several functions. + (tag_url_attributes): Collect . + +2001-12-11 Hrvoje Niksic + + * host.c: New type ipv4_address. Use it consistently instead of + `unsigned char[4]' and `unsigned char *'. + (pretty_print_address): Accept a `const void *', to require even + less casting. + +2001-12-11 Hrvoje Niksic + + * ftp-ls.c (ftp_parse_vms_ls): Fix obvious memory leaks. + +2001-12-10 Hrvoje Niksic + + * main.c (main): Initialize progress after fork_to_background, so + that it knows when to use dots. + + * mswindows.c (ws_hangup): Call log_request_redirect_output. + + * utils.c (fork_to_background): Print the PID of the child + process. + + * log.c (log_request_redirect_output): Set a flag that output + redirection has been requested. Doing anything else in a signal + handler is unsafe. + (check_redirect_output): New function: check whether redirection + has been requested and, if so, call redirect_output(). + (logputs): Call check_redirect_output. + (logprintf): Ditto. + (debug_logprintf): Ditto. + (redirect_output): Print clearer messages. + + * main.c (redirect_output_signal): Don't call + redirect_output_signal directly. Instead, call + log_request_redirect_output. + + * utils.c (memfatal): Ditto. + + * progress.c (display_image): Use it. + + * log.c (log_set_save_context): New function: allow the caller to + turn off saving log context lines. + +2001-12-10 Hrvoje Niksic + + * host.c (address_list_set_faulty): Uncomment a sanity check. + +2001-12-10 Hrvoje Niksic + + * utils.c (long_to_string): Return a pointer after where the + number ends. + (long_to_string): Rename to number_to_string. + +2001-12-10 Hrvoje Niksic + + * utils.c (path_simplify): Correctly handle the unlikely case that + b starts out as path + 1. + +2001-12-10 Hrvoje Niksic + + * utils.c (path_simplify): Rewrite, with better comments, and + without the use of strcpy to move overlapping blocks. + +2001-12-09 Hrvoje Niksic + + * init.c (cmd_spec_progress): Resurrect. Check whether VAL is a + valid progress type before setting it. + +2001-12-09 Hrvoje Niksic + + * main.c (main): Remove stray debugging message. + +2001-12-09 Hrvoje Niksic + + * progress.c (create_image): Fix ETA padding when hours are prined. + +2001-12-09 Hrvoje Niksic + + * version.c: Wget 1.8 is released. + +2001-12-09 Hrvoje Niksic + + * url.c (reencode_string): Declare static. + + * res.c (registered_specs): Declare static. + + * progress.c (current_impl_locked): Declare static. + + * log.c (flush_log_p): Declare static. + (needs_flushing): Ditto. + + * http.c (digest_authentication_encode): Declare static. + + * html-url.c (init_interesting): Declare static. + + * host.c (host_name_addresses_map): Declare static. + + * cookies.c (find_matching_chains): Declare static. + + * ftp-ls.c (ftp_parse_vms_ls): Warn about the memory leak + indicated by lint. + + * utils.c (path_simplify): Remove unused variable STUB_CHAR. + + * host.c (address_list_set_faulty): Document that INDEX is + currently unused. + + * url.c (rewrite_shorthand_url): Remove unused variable PATH. + +2001-12-08 Hrvoje Niksic + + * version.c: Wget 1.8-pre2 is released. + +2001-12-06 Hrvoje Niksic + + * progress.c (progress_handle_sigwinch): Set up the signal again. + + * utils.c: Include , where Solaris defines + TIOCGWINSZ. + + * progress.c (bar_create): Don't use the last column on the screen. + (create_image): Pad ETA to constant size. Pad SIZE to nine digits + only until it exceeded them. + +2001-12-06 Hrvoje Niksic + + * version.c: Wget 1.8-pre1 is released. + +2001-12-06 Hrvoje Niksic + + * progress.c (progress_create): Make sure that, when the output is + redirected, the progress implementation gets changed to the + fallback one. + (bar_set_params): Set current_impl_locked to 1 when "force" is + specified. + (progress_create): Don't change the progress implementation if + current_impl_locked is non-zero. + + * main.c (redirect_output_signal): Call + progress_schedule_redirect. + + * progress.c (progress_schedule_redirect): New function. + +2001-12-06 Hrvoje Niksic + + * log.c (logvprintf): Restructure to allow being called multiple + times. + (logprintf): Call logvprintf in a loop. + (debug_logprintf): Ditto. + +2001-12-06 Hrvoje Niksic + + * gen_sslfunc.c (ssl_init_prng): Allow the user to disable EGD by + setting egd_file it to empty string. + + * main.c (main): Change the option name from --sslegdsock to + --egd-file. + +2001-12-06 Hrvoje Niksic + + * gen_sslfunc.c (ssl_init_prng): Make the printed message + translatable. + +2001-12-06 Hrvoje Niksic + + * url.c (scheme_disable): New function. + + * main.c (main): Call ssl_init_prng from here rather than from + init_ssl, so that it has a chance to disable support for https + before a URL has been resolved. + + * gen_sslfunc.c (ssl_init_prng): Seed with rand() if all else + failed. + (ssl_init_prng): Disable support for https if seeding the PRNG + fails. + +2001-12-06 Hrvoje Niksic + + * utils.c (read_whole_line): Handle lines beginning with \0. + +2001-12-05 Hrvoje Niksic + + * recur.c (convert_all_links): Guard against duplicates in + downloaded_html_files. + (register_download): Don't invalidate similar-looking URLs. + (match_except_index): New function. + +2001-12-05 Hrvoje Niksic + + * utils.c (path_simplify): Document with test cases. + +2001-12-04 Hrvoje Niksic + + * gen_sslfunc.c: Ditto. + + * rbuf.c: Include . + +2001-12-04 Hrvoje Niksic + + * recur.c (retrieve_tree): Check whether the URL was already + downloaded before downloading it again. + (descend_child_p): Renamed to download_child_p. + (register_download): When one URL is downloaded to a file already + "owned" by another URL, delete all references that map any URL to + that file. + (register_delete_file): New function. + (retrieve_tree): Use it after deleting a file. + + * url.c (url_parse): Re-canonicalize the URL also if the path is + empty, so that e.g. "http://www.server.com" -> + "http://www.server.com/". + (lowercase_str): Use ISUPPER instead of !ISLOWER. + + * retr.c (retrieve_url): Use the canonical URL form when calling + register_download(). + +2001-12-04 Ian Abbott + + * snprintf.c (dopr): Use `unsigned int' as the second argument to + va_arg when casting to `unsigned short' is intended. + +2001-12-04 Herold Heiko + + * gen_sslfunc.c: on windows provide ssl crypto random + initialization through RAND_screen(); could possibly + be not enough for strong ssl communication (see the + relevant manual page from the openssl package). + +2001-12-04 Hrvoje Niksic + + * url.c (local_quote_string): Reenable quoting of question marks, + but only when `--html-extension' is used. + +2001-12-03 Hrvoje Niksic + + * version.c: Wget 1.8-beta3 is released. + +2001-12-03 Hrvoje Niksic + + * snprintf.c (dopr): Cast the result of va_arg to short int and + short unsigned int where these types are expected to be used. + +2001-12-03 Hrvoje Niksic + + * snprintf.c (dopr): Replace `short int' and `unsigned short int' + with `int' when using it as the second argument to `va_arg'. + +2001-12-03 Hrvoje Niksic + + * host.c (address_list_new_one): New function. + (lookup_host): Use it. + +2001-12-03 Andre Majorel + + * host.c (lookup_host): Don't initialize TMPSTORE directly because + it's not legal C. + +2001-12-03 Hrvoje Niksic + + * ftp-basic.c (ftp_port): Don't return HOSTERR if we fail getting + the socket data. + + * ftp.c: Ditto. + + * http.c: No need to declare h_errno. + + * host.c: Declare h_errno. + +2001-12-02 Hrvoje Niksic + + * utils.c (file_merge): If BASE doesn't contain a slash, just + return a copy of FILE. + +2001-12-02 Hrvoje Niksic + + * version.c: Wget 1.8-beta2 is released. + +2001-12-01 Hrvoje Niksic + + * ftp.c (getftp): When PWD fails, assume "/". + + * ftp-basic.c (ftp_syst): Fix indentation. + +2001-12-01 Hrvoje Niksic + + * url.c (get_urls_file): If opt.base_href is specified, merge each + URL with the base. + +2001-12-01 Hrvoje Niksic + + * main.c (print_help): Don't document the removed `-nh'. + +2001-12-01 Hrvoje Niksic + + * url.c (url_full_path): Document better. + + * http.c (gethttp): Use the full path when creating digest + authorization. + +2001-12-01 Hrvoje Niksic + + * cookies.c (path_matches): Return 0 if PREFIX doesn't begin with + '/'. + +2001-12-01 Hrvoje Niksic + + * cookies.c (path_matches): FULL_PATH doesn't begin with '/', but + PREFIX does. + +2001-12-01 Hrvoje Niksic + + * cookies.c (check_domain_match): Reimplement to match Netscape's + "preliminary specification" for cookies. + +2001-12-01 Hrvoje Niksic + + * url.c (replace_attr_refresh_hack): New function. + (convert_links): Call replace_attr_refresh_hack for Refresh + links. It will add the "TMOUT; URL=" junk before the link. + + * html-url.c (collect_tags_mapper): Set ID to the ID of the + "content" attribute, not "http-equiv". + (collect_tags_mapper): Don't use OFFSET to hack the raw_* values; + instead, store the information that this entry belongs to a + "refresh" link. + +2001-12-01 Hrvoje Niksic + + * version.c: Wget 1.8-beta1 is released. + +2001-12-01 Hrvoje Niksic + + * recur.c (retrieve_tree): Allow -p retrievals to exceed maximum + depth by more than one. + +2001-11-30 Hrvoje Niksic + + * retr.c (retrieve_url): Don't allow more than 20 redirections. + +2001-11-30 Hrvoje Niksic + + * recur.c (retrieve_tree): Skip the non-inline entries when + enqueuing the children of a leaf HTML node in -p mode. + (descend_url_p): Ignore opt.no_parent when in -p mode and UPOS is + "inline". + + * html-url.c (get_urls_html): Don't accept dash_p_leaf_HTML. + (collect_tags_mapper): When an entry is "inline", mark it as such. + + * recur.c (descend_url_p): Fix test when checking for + acceptance/rejection rules. + +2001-10-31 Daniel BODEA + + * netrc.c (search_netrc): When slack_default is 0, still look for + an account with matching password, just not the "default account". + HTTP Authorization using .netrc should now work as expected. + +2001-11-30 T. Bharath + + * http.c (persistent_available_p): Call SHUTDOWN_SSL if + test_socket_open fails. + +2001-11-30 Hrvoje Niksic + + * progress.c (display_image): Just print one CR to reset the + cursor position. + +2001-11-30 Christian Fraenkel + + * init.c: New command `ssl_egd_sock'. + + * main.c (main): New option `--sslegdsock'. + + * gen_sslfunc.c (ssl_init_prng): Seed the RNG using EGD. + +2001-11-29 Hrvoje Niksic + + * cmpt.c (memmove): Include a simple memmove implementation. + +2001-11-29 Hrvoje Niksic + + * headers: Guard against header files being included twice. + +2001-11-29 Hrvoje Niksic + + * gen-md5.c: Use unsigned char * as the buffer argument to + gen_md5_update. + +2001-11-29 Hrvoje Niksic + + * connect.h: Declare select_fd. + +2001-11-29 Hrvoje Niksic + + * recur.c (descend_url_p): When resolving no_parent, compare with + start_url, not parent url. Otherwise link from /a/b/ to /a/c/ + wouldn't be followed, although the download started from /a/. + +2001-01-23 Herold Heiko + + * config.h.ms, mswindows.h: defined HAVE_ISATTY, use _isatty for + MS VC; somebody with Borland compiler please check and provide + patch if possible; + + * cmpt.c: provided a usleep emulation. + +2001-11-29 Hrvoje Niksic + + * host.c (address_list_new): Initialize al->faulty. + +2001-11-29 Hrvoje Niksic + + * http.c (http_process_range): Accept the broken output of + "JavaWebServer/1.1.1". + +2001-11-28 Hrvoje Niksic + + * progress.c (dot_set_params): If PARAMS is unspecified, use + dot_style, if available. + + * init.c: Ditto. + + * main.c (main): Resurect --dot-style. + + * progress.c (dot_finish): Print the quantity if we're left at the + beginning of a row. + +2001-11-27 Hrvoje Niksic + + * cmpt.c (random): Removed. + + * retr.c (sleep_between_retrievals): Use the more portable rand() + instead of random(). + +2001-11-27 Ian Abbott + + * retr.c (retrieve_from_file): Initialize `new_file' to NULL to + prevent seg fault. + +2001-11-27 Hrvoje Niksic + + * connect.c (connect_to_many): Use address_list_set_faulty to + prevent the faulty address from being reused. + + * host.c (address_list_set_faulty): New function. + (address_list_get_bounds): New function, instead of + address_list_count. + +2001-11-27 Hrvoje Niksic + + * url.c (convert_links): Don't translate %d-%d. + + * main.c (print_help): Remove stray HAVE_RANDOM code. + +2001-11-27 Hrvoje Niksic + + * ftp.c (getftp): Improve output after sending PASV. Don't + attempt to "look up" the IP address we already know; call + connect_to_one directly. + +2001-11-27 Hrvoje Niksic + + * progress.c: Change the default progress implementation to "bar". + +2001-11-27 Hrvoje Niksic + + * progress.c (bar_create): Print two newlines. + +2001-11-27 Hrvoje Niksic + + * cmpt.c (random): New function, a simple-minded replacement for + random() on systems that don't have it. + +2001-11-26 Hrvoje Niksic + + * config.h.in: Put a HAVE_USLEEP stub. + + * cmpt.c (usleep): Replacement implementation of usleep using + select. + + * init.c: New option init_rate. + + * main.c (main): New option --limit-rate. + + * retr.c (limit_bandwidth): New function. + (get_contents): Call it to limit the bandwidth used when + downloading. + + * progress.c (dot_update): Would print the wrong download speed on + rows other than the first one when the download was continued. + (dot_finish): Ditto. + +2001-11-26 Ian Abbott + + * http.c (gethttp): fix undeclared variable 'err' when compiled + with HAVE_SSL. + +2001-11-26 Hrvoje Niksic + + * progress.c: Don't allocate new timers; use the timing data + propagated from the caller. + + * retr.c (get_contents): Allocate and use a timer. + +2001-11-26 Hrvoje Niksic + + * http.c (last_host_ip): Made into an address_list. + (invalidate_persistent): Release pc_last_host_ip. + (register_persistent): Use lookup_host. + (persistent_available_p): Check for equality of hosts using + address_list_match_all. Call address_list_release. + (http_cleanup): New function. + + * ftp.c (getftp): Use lookup_host and connect_to_many. + + * http.c (gethttp): Use lookup_host and connect_to_many. + + * connect.c (make_connection): Removed. + (connect_to_one): New function. + (connect_to_many): Ditto. + (set_connection_host_name): Ditto. + + * host.c (lookup_host): New function; new return type. + (address_list_new): New function. + (address_list_count): Ditto. + (address_list_copy_one): Ditto. + (address_list_delete): Ditto. + (address_list_release): Ditto. + (pretty_print_address): Ditto. + +2001-11-26 Hrvoje Niksic + + * recur.c (retrieve_tree): In case of followed redirection, + blacklist the pre-redirection URL. + +2001-11-26 Hrvoje Niksic + + * recur.c (descend_redirect_p): New function. + (retrieve_tree): Make sure redirections are not blindly followed. + +2001-11-04 Alan Eldridge + + * config.h.in: added HAVE_RANDOM. + + * options.h: added random_wait to struct options. + + * main.c (print_help [HAVE_RANDOM], main): added arg parsing, help + for --random-wait. + + * retr.c (sleep_between_retrievals) [HAVE_RANDOM]: added + implementation of random wait times. + + * init.c (commands): added "randomwait" keyword. + +2001-11-25 Hrvoje Niksic + + * recur.c (descend_url_p): Be more conservative with blacklisting + URLs. + (convert_all_links): Print how many files have been converted, and + how long it took. + + * progress.c (create_image): Place the number of downloaded bytes + right after the progress bar. + + * utils.c (suffix): Return a pointer into the string. + +2001-11-25 Hrvoje Niksic + + * url.c (convert_links): Handle CO_NULLIFY_BASE. + + * recur.c (retrieve_tree): Ignore download-ignorable children. + (convert_all_links): Specify CO_NULLIFY_BASE when link_base_p. + + * html-url.c (handle_link): Return the newly created urlpos. + (collect_tags_mapper): When dealing with BASE, store the base + reference and mark it as download-ignorable. + +2001-11-25 Hrvoje Niksic + + * url.c (convert_links): Attempt to quote '?' as "%3F" when + linking to local files. Given up on the attempt, as it breaks + local browsing. + +2001-11-25 Hrvoje Niksic + + * main.c (private_initialize): Removed. + (main): Don't call private_initialize. + + * http.c: Call lookup_host. + + * host.c (host_init): Removed. + (add_host_to_cache): Initialize host_name_address_map here, on + demand. + (ngethostbyname): Commented out. + + * connect.c (make_connection): Remove dead code; use lookup_host. + + * host.c (store_hostaddress): Renamed to lookup_host and reversed + the args. + Removed host_address_name_map and host_slave_master_map. + +2001-11-25 Hrvoje Niksic + + * progress.c (dot_create): Align the "[ skipping ... ]" string + with the dots. + + * retr.c (rate): Split into two functions: calc_rate and + retr_rate. + + * progress.c (create_image): Draw a dummy progress bar even when + total size is unknown. + (display_image): Place the text cursor at the end of the "image". + +2001-11-25 Hrvoje Niksic + + * url.c (reencode_string): Use unsigned char, not char -- + otherwise the hex digits come out wrong for 8-bit chars such as + nbsp. + (lowercase_str): New function. + (url_parse): Canonicalize u->url if needed. + (get_urls_file): Parse each URL, and return only the valid ones. + (free_urlpos): Call url_free. + (mkstruct): Add :port if the port is non-standard. + (mkstruct): Append the query string to the file name, if any. + (urlpath_length): Use strpbrk_or_eos. + (uri_merge_1): Handle the cases where LINK is an empty string, + where LINK consists only of query, and where LINK consists only of + fragment. + (convert_links): Count and report both kinds of conversion. + (downloaded_file): Use a hash table, not a list. + (downloaded_files_free): Free the hash table. + + * retr.c (retrieve_from_file): Ditto. + + * main.c (main): Call either retrieve_url or retrieve_tree + for each URL, not both. + + * retr.c (register_all_redirections): New function. + (register_redirections_mapper): Ditto. + (retrieve_url): Register the redirections. + (retrieve_url): Make the string "Error parsing proxy ..." + translatable. + + * res.c (add_path): Strip leading slash from robots.txt paths so + that the path representations are "compatible". + (free_specs): Free each individual path, too. + (res_cleanup): New function. + (cleanup_hash_table_mapper): Ditto. + + * recur.c (url_queue_new): New function. + (url_queue_delete): Ditto. + (url_enqueue): Ditto. + (url_dequeue): Ditto. + (retrieve_tree): New function, replacement for recursive_retrieve. + (descend_url_p): New function. + (register_redirection): New function. + + * progress.c (create_image): Cosmetic changes. + + * init.c (cleanup): Do all those complex cleanups only if + DEBUG_MALLOC is defined. + + * main.c: Removed --simple-check and the corresponding + simple_host_check in init.c. + + * html-url.c (handle_link): Parse the URL here, and propagate the + parsed URL to the caller, who would otherwise have to parse it + again. + + * host.c (xstrdup_lower): Moved to utils.c. + (realhost): Removed. + (same_host): Ditto. + +2001-11-24 Hrvoje Niksic + + * utils.c (path_simplify): Preserver the (non-)existence of + leading slash. Return non-zero if changes were made. + +2001-11-24 Hrvoje Niksic + + * progress.c (bar_update): Don't modify bp->total_length if it is + zero. + +2001-11-24 Hrvoje Niksic + + * retr.c (retrieve_url): When the redirection URL doesn't parse, + print the correct error message rather than "UNKNOWN". + +2001-11-24 Hrvoje Niksic + + * progress.c (bar_finish): If the timer didn't record any time + since the download beginning, fake 1ms. + +2001-11-24 Hrvoje Niksic + + * recur.c (recursive_retrieve): Fix typo. + +2001-11-23 Hrvoje Niksic + + * progress.c (create_image): Don't translate "%ld ". + +2001-11-23 Hrvoje Niksic + + * progress.c (bar_set_params): Allow the user to force the use of + the bar. + +2001-11-23 Lemble Gregory + + * gen_sslfunc.c (ssl_init_prng): New function; seed the SSL RNG. + +2001-11-23 Hrvoje Niksic + + * progress.c: Renamed dp_* functions to dot_* for greater clarity + and consistency with bar_*. + (print_download_speed): Get rid of the unneeded '@' character. + (create_image): Fix download rate geometry. + + * progress.c (print_elapsed): Remove spurious space. + (print_elapsed): Renamed to print_download_speed, since that's + what it does. + +2001-11-23 Hrvoje Niksic + + * progress.c (bar_update): If the downloaded amount becomes larger + than the expected amount, adjust the expected amount accordingly. + +2001-11-23 Hrvoje Niksic + + * utils.c (determine_screen_width): New function. + + * main.c (main): New option `--progress=TYPE'. + (main): Implement compatibility with the old option `--dot-style'. + + * init.c: Removed cmd_spec_dotstyle -- that logic is now in + dp_set_params. + (cmd_spec_progress): New function. + + * retr.c (get_contents): Use the progress_* functions instead of + the old show_progress(). + (show_progress): Removed. + (rate): Print "xxxx.xx K/s" instead of "KB/s". Ditto for MB/s, + etc. + + * progress.c (set_progress_implementation): New function. + (valid_progress_implementation_p): Ditto. + (progress_create): Ditto. + (progress_update): Ditto. + (progress_finish): Ditto. + (dp_create): Ditto. + (dp_update): Ditto. + (dp_finish): Ditto. + (dp_set_params): Ditto. + (print_elapsed): Ditto. + +2001-11-22 Hrvoje Niksic + + * retr.c (show_progress): Use it. + + * log.c (log_set_flush): New function. + +2001-11-22 Hrvoje Niksic + + * utils.c (path_simplify): Don't remove trailing slashes. + + * ftp.c (ftp_get_listing): Use it. + + * utils.c (file_merge): New function. + + * url.c (opt_url): Removed. + + * recur.c (recursive_retrieve): Inline "opt_url" logic. + + * main.c (main): Use xfree(), not free(). + + * url.c (rewrite_url_maybe): Renamed to rewrite_shorthand_url. + + * ftp.c (ccon): Move `ccon' typedef here, since it's only used + internally. + + * config.h.in: Include a stub for HAVE_STRPBRK. + + * cmpt.c (strpbrk): Include a replacement for systems without + strpbrk(). + + * ftp.c: Use url_set_dir and url_set_file when modifying the URL. + + * url.c (url_set_dir): New function. + (url_set_file): Ditto. + + * ftp-basic.c (ftp_process_type): Process FTP type here; the URL + parser makes the URL "params" available, so we can do that in this + function. + + * retr.c: Ditto. + + * ftp.c: Ditto; pass the local file information in `ccon'. + + * http.c: Get rid of the ugly kludge that had URL being replaced + with the proxy URL when proxy retrieval was requested. Use a + separate parameter to http_loop and gethttp for the proxy URL. + + * http.c: Changed to reflect the fact that local file, proxy, and + referer information are no longer stored in struct url. The local + file information is passed in `struct hstat' now. + + * url.c: Reworked URL parsing to be more regular. Reencode the + URL using reencode_string. + Removed non-URL-related information from struct url. This + includes fields `proxy', `local', and `referer'. + +2001-11-22 Jochen Hein + + * main.c (main): Split the copyright notice for easier + translation. + +2001-08-21 Dave Turner + + * ftp-basic.c (ftp_size): New function to send non-standard SIZE + command to server to request file size. + * ftp.h (ftp_size): Export it. + * ftp.c (getftp): Use new ftp_size function if restoring + transfer of a file with unknown size. + +2001-11-20 Hrvoje Niksic + + * url.c (parseurl): Don't depend on the now-obsolete TYPE. + +2001-11-19 Hrvoje Niksic + + * url.c (getproxy): Handle URL shorthands. + +2001-11-19 Hrvoje Niksic + + * main.c: Remove --wait / --waitretry backwards compatibility + code. + +2001-11-19 Hrvoje Niksic + + * main.c (main): Use it. + + * url.c (rewrite_url_maybe): New function. + +2001-11-19 Hrvoje Niksic + + * url.c: Clean up handling of URL schemes. + +2001-05-13 Hrvoje Niksic + + * url.c: Get rid of `protostrings'. + (skip_proto): Don't use protostrings. + (has_proto): Ditto. + +2001-11-18 Hrvoje Niksic + + * Makefile.in: Conditionally compile getopt.o. + +2001-11-18 Hrvoje Niksic + + * md5.h: Renamed to gnu-md5.h. + + * md5.c: Renamed to gnu-md5.c. + + * http.c: Ditto. + + * ftp-opie.c: Use the new macros. + + * sysdep.h: Define md5-related macros. + + * config.h.in: Define HAVE_SOLARIS_MD5 or HAVE_BUILTIN_MD5 + depending on which md5 implementation is used. + +2001-11-18 Hrvoje Niksic + + * res.c (res_register_specs): Initialize OLD and HP_OLD to appease + the compiler. + +2001-11-18 Hrvoje Niksic + + * http.c (gethttp): Print the whole response line when printing + headers is requested. + +2001-05-12 Hrvoje Niksic + + * res.c: New file. Implement all RES-related code here. + +2001-11-18 Hrvoje Niksic + + * version.c: Wget 1.7.1 is released. + +2001-11-16 Hrvoje Niksic + + * headers.c (header_extract_number): Ignore trailing whitespace. + +2001-08-24 Ian Abbott + + * html-url.c (collect_tags_mapper): Fix bug converting links + with -k option for tags with multiple link attributes by + handling links in the order they appear. + +2001-08-15 Ian Abbott + + * ftp.c (ftp_loop_internal): Avoid a potential buffer overflow in + the call to the 'rate' function by moving it past the error + checking for the 'getftp' function return value. + +2001-11-16 Hrvoje Niksic + + * html-parse.c (advance_declaration): Use 0x22 instead of '"' or + '\"'. Different compilers' assert macros are broken in different + ways. + +2001-09-29 Christian Fraenkel + + * http.c (gethttp): print debug output for errors occuring during + the ssl handshake. + +2001-11-16 Chris Seawood + + * init.c: Ditto. + + * host.c: Ditto. + + * connect.c: Ditto. + + * sysdep.h: Support compilation under BEOS. + +2001-06-08 Edward J. Sabol + + * url.c (url_equal): Fix a memory leak when parseurl returns an + error on the second URL. Also, since url_equal is not used at the + moment, do not compile it. + + * url.h: Ditto for the prototype of url_equal. + +2001-11-16 Hrvoje Niksic + + * html-parse.c (map_html_tags): Support XML-style empty tags. + +2001-06-26 Hrvoje Niksic + + * wget.h (DO_REALLOC_FROM_ALLOCA): Check for do_realloc_newsize in + loop condition because we're no longer setting SIZEVAR here. + +2001-06-26 Hrvoje Niksic + + * wget.h (DO_REALLOC_FROM_ALLOCA): Set SIZEVAR after the memcpy() + call because it needs the old value. + +2001-06-18 Hrvoje Niksic + + * cookies.c (ATTR_NAME_CHAR): Allow almost any character to be in + an attribute name. + +2001-06-18 Hrvoje Niksic + + * url.c (url_filename): Make sure that slashes that sneak in to + u->file via query string get protected. + (file_name_protect_query_string): New function. + +2001-06-14 Hrvoje Niksic + + * recur.c (recursive_retrieve): Also check undesirable_urls with + canonicalized URL. + +2001-06-14 Hrvoje Niksic + + * http.c (gethttp): Search `.netrc' with real host, not the proxy + one. + +2001-06-14 Hrvoje Niksic + + * sysdep.h (MAP_FAILED): Provide MAP_FAILED for systems that don't + define it. + +2001-06-09 Jan Prikryl + + * ftp.h: Provide correct prototype for ftp_parse_ls(). + +2001-06-04 Hrvoje Niksic + + * version.c: Wget 1.7 is released. + +2001-06-03 Karl Eichwalder + + * ftp-ls.c (ftp_parse_ls): Fix typo. + +2001-05-27 Hrvoje Niksic + + * all: Update copyright information. + +2001-05-26 Hrvoje Niksic + + * http.c (gethttp): Indicate that the continued download failed + for *this* file. + +2001-05-26 Hrvoje Niksic + + * version.c: Wget 1.7-pre1 is released. + +2001-05-26 Hrvoje Niksic + + * version.c: Updated version to 1.7-pre1. + +2001-05-14 Hrvoje Niksic + + * gen_sslfunc.c: Don't include directly. + +2001-05-14 Hrvoje Niksic + + * http.c (gethttp): Use real URL data for cookies, not the proxy + stuff. + +2001-05-12 Hrvoje Niksic + + * main.c (print_help): Document `--no-http-keep-alive'. + + * utils.c (numdigit): Handle negative numbers *correctly*. + + * hash.c (make_nocase_string_hash_table): Use term "nocase" rather + than the confusing "unsigned". + + * utils.c (string_set_contains): Renamed from string_set_exists. + + * hash.c (hash_table_contains): Renamed from hash_table_exists. + + * cookies.c: Move case-insensitive hash tables to hash.c. + +2001-05-09 Hrvoje Niksic + + * http.c (gethttp): Before concluding that the file is already + fully retrieved, make sure that the file existed and `Range' was + actually requested. + +2001-05-09 Hrvoje Niksic + + * cookies.c (eliminate_dups): New function. + (build_cookies_request): Use it. + (build_cookies_request): Set chain_store_size after reallocating + all_chains. + (check_domain_match): Annotated for easier future debugging. + (store_cookie): In the debug message, print whether the cookie is + permanent. + +2001-05-08 Hrvoje Niksic + + * http.c (http_loop): Reset no_truncate before deciding whether to + set it. + (gethttp): Further clarify "-c conflicts with existing file" error + message, based on input from Herold Heiko. + +2001-05-07 Hrvoje Niksic + + * http.c (http_loop): If restval is set, set no_truncate to 1 + unconditionally. + +2001-05-02 Jan Prikryl + + * ftp-ls.c (ftp_parse_winnt_ls): Assure months are being correctly + converted. Pointed out by . + (ftp_parse_vms_ls): Ditto. + +2001-04-30 Hrvoje Niksic + + * init.c (cmd_address): Zero SIN before using it; apparently + needed on *BSD. + +2001-04-29 Hrvoje Niksic + + * ftp.c (ftp_loop_internal): Don't set NO_TRUNCATE if the file is + empty. + +2001-04-29 Hrvoje Niksic + + * main.c (main): Make `--cookies' respect its argument. + +2001-04-28 Hrvoje Niksic + + * main.c (main): Removed undocumented option `--email-address'. + + * netrc.c: Use the latest read_whole_line. + + * init.c (defaults): Set opt.ftp_pass to "-wget@". + + * mswindows.c (pwd_cuserid): Ditto. + + * utils.c (pwd_cuserid): Removed. + + * host.c (ftp_getaddress): Removed. + +2001-04-28 Hrvoje Niksic + + (http_loop): Allocate space for filename_plus_orig_suffix with + alloca; this is more efficient and removes the need to free it + before each and every return. + +2001-04-28 Hrvoje Niksic + + * http.c (gethttp): Return RETRUNNEEDED when the retrieval is + unneeded because the file is already there and fully downloaded, + and -c is specified. + (http_loop): Handle RETRUNNEEDED. + + * wget.h (uerr_t): New value RETRUNNEEDED. + + * http.c (http_loop): Set no_truncate for files that both exist + and are non-empty. + (gethttp): Consider the download finished when restval >= contlen, + not only when restval==contlen. + (gethttp): Handle redirection before giving up due to -c. + (gethttp): Clarify error message which explains that -c will not + truncate the file. + (gethttp): When returning CONTNOTSUPPORTED, don't forget to free + the stuff that needs freeing and release the socket. + +2001-04-27 Hrvoje Niksic + + * main.c (print_help): Wget booleans accept "off", not "no". + +2001-04-27 Hrvoje Niksic + + * http.c (http_loop): If allow_cache is zero, always disable + caching, not only when retrieving through proxy. + + * init.c: Ditto. + + * options.h (struct options): Rename proxy_cache to allow_cache. + +2001-04-27 Hrvoje Niksic + + * http.c (mktime_from_utc): Improve documentation. + (http_atotm): Put format strings into a separate array. + +2001-04-27 Hrvoje Niksic + + * safe-ctype.h: Instead of throwing #error when isalpha is + defined, redefine it to something that will throw a compile-time + error if actually *used*. Do the same for the rest of the + standard C macros. + +2001-04-26 Hrvoje Niksic + + * url.c (getproxy): Ignore empty proxy vars. + +2001-04-25 Hrvoje Niksic + + * http.c (http_loop): Would load cookies every time. + + * cookies.c (load_cookies): Handle cookies whose values contain + embedded spaces. + +2001-04-25 Hrvoje Niksic + + * utils.c: Define each DIGITS_* in one line. + +2001-04-25 Roger L. Beeman + + * http.c (http_atotm): Initialize t.tm_isdst to 0. + (mktime_from_utc): Prevent mktime() from having discontinuities at + DST transition points. + +2001-04-25 Hrvoje Niksic + + * html-url.c (get_urls_html): Fix documentation. + +2001-04-25 Hrvoje Niksic + + * url.c (UNSAFE_CHAR): Reimplement using a static table. + (url_init): Removed. + (init_unsafe_char_table): Removed. + +2001-04-25 Hrvoje Niksic + + * snprintf.c (dopr): Replace ISDIGIT with '0' <= ch && ch <= '9'. + +2001-04-25 Hrvoje Niksic + + * utils.c: Document timer functions. + + * retr.c (rate): Use it. + (rate): Print in GB/s if transfer rate exceeds 1 GB/s. + + * utils.c (wtimer_granularity): New function. + +2001-04-24 Hrvoje Niksic + + * retr.c (show_progress): Ditto. + + * ftp.c (getftp): Ditto. + + * http.c (gethttp): Use new timer functions. + + * utils.c (wtimer_allocate): New function. + (wtimer_new): Ditto. + (wtimer_delete): Ditto. + (wtimer_reset): Ditto. + (wtimer_elapsed): Ditto. + +2001-04-24 Hrvoje Niksic + + * utils.c (long_to_string): New, faster version. Favors smaller + numbers; much of the calculation is now done at compile-time. + +2001-04-24 Hrvoje Niksic + + * utils.c (numdigit): Handle negative numbers. + +2001-04-23 Hrvoje Niksic + + * retr.c (show_progress): Print the download rate even when the + percentages are not available. + +2001-04-21 Hrvoje Niksic + + * ftp.c (getftp): Adjust expected_bytes if the length is + authoritative. + +2001-04-14 Hrvoje Niksic + + * url.c: Don't declare `construct'. + + * hash.c (grow_hash_table): Speed up rehashing; inline storing of + mappings to new locations. + (hash_table_new): Make resize_threshold a field in the hash table, + so we don't have to recalculate it in each hash_table_put. + (grow_hash_table): Update resize_threshold. + (MAX): Remove unused macro. + (prime_size): Made static. + +2001-04-14 Hrvoje Niksic + + * retr.c (retrieve_url): Call uri_merge, not url_concat. + + * html-url.c (collect_tags_mapper): Call uri_merge, not + url_concat. + + * url.c (mkstruct): Use encode_string instead of xstrdup followed + by URL_CLEANSE. + (path_simplify_with_kludge): Deleted. + (contains_unsafe): Deleted. + (construct): Renamed to uri_merge_1. + (url_concat): Renamed to uri_merge. + +2001-04-13 Hrvoje Niksic + + * url.c (str_url): Use encode_string instead of the unnecessary + CLEANDUP. + (encode_string_maybe): New function, returns input string if no + encoding is needed. + (encode_string): Call encode_string_maybe to do the dirty work, + xstrdup if no work needed. + +2001-04-13 Hrvoje Niksic + + * wget.h (XDIGIT_TO_xchar): Define here. + + * url.c (decode_string): Use new name. + (encode_string): Ditto. + + * http.c (XDIGIT_TO_xchar): Rename HEXD2asc to XDIGIT_TO_xchar. + (dump_hash): Use new name. + + * wget.h: Rename ASC2HEXD and HEXD2ASC to XCHAR_TO_XDIGIT and + XDIGIT_TO_XCHAR respectively. + +2001-04-13 Hrvoje Niksic + + * init.c: Include cookies.h. + + * cookies.h: Declare cookies_cleanup. + + * cookies.c (check_domain_match): Remove unused variable. + (save_cookies): Remove extraneous argument from debug statement. + + * host.c (same_host): Don't call skip_url. + + * url.c (skip_url): Removed. Removed its calls from various + functions in url.c. + +2001-04-13 Hrvoje Niksic + + * cookies.c (unsigned_string_hash): Use the new code in + string_hash as reference. + + * hash.c (hash_table_map): Allow deletion and change of the + element processed by MAPFUN. + (string_hash): Use the function from glib. + +2001-04-12 Hrvoje Niksic + + * config.h.in: Include #undef stub. + + * hash.c (hash_table_remove): Rewrite to actually clear deleted + entries instead of just marking them as deleted. + +2001-04-12 Hrvoje Niksic + + * hash.h: Declare hash_table_get_pair and hash_table_count. + +2001-04-12 Hrvoje Niksic + + * cookies.c: Declare http_atotm. + +2001-04-12 Hrvoje Niksic + + * ftp-ls.c (ftp_parse_unix_ls): Use octal constants for + permissions. A compiler that doesn't accept octal constants is + seriously broken and shouldn't be used -- octal constants were + present in K&R C! + +2001-01-20 Karl Eichwalder + + * Makefile.in: Provide and use DESTDIR according to the Coding + Standards. + +2001-04-12 Hrvoje Niksic + + * ftp-ls.c (ftp_parse_vms_ls): Make seconds optional in time + specification. + +2001-04-11 Hrvoje Niksic + + * url.c (parseurl): Don't strip trailing slash when u->dir is "/" + because that strips the *leading* slash, thus forcing relative + FTP retrieval. + +2001-04-10 Jan Prikryl + + * ftp.c (getftp): Convert initial FTP directory from VMS to UNIX + notation for VMS servers. + (ftp_retrieve_dirs): Do not prepend '/' to f->name when + odir is an empty string. + +2001-04-10 Jan Prikryl + + * ftp-ls.c (ftp_parse_winnt_ls): Made the fix for AM/PM more + effective. Suggested by Edward J. Sabol. + +2001-04-10 Hrvoje Niksic + + * cookies.c (build_cookies_request): Use and sort cookies from all + matching domains. + (build_cookies_request): Check for duplicates before generating + the `Cookies' header. + + * main.c (main): Don't load cookies here. + (main): Make loadcookies and savecookies call the correct command. + + * http.c (http_loop): Load cookies on-demand. + +2001-04-09 Hrvoje Niksic + + * http.c (gethttp): Fix indentation of SSL ifdef. + +2001-04-09 Hrvoje Niksic + + * ftp.c (ftp_retrieve_dirs): Don't forcibly prepend "/" to u->dir; + that hack is no longer necessary. + (getftp): Prepend initial directory to *non*-absolute u->dir's. + +2001-04-09 Hrvoje Niksic + + * init.c (cmd_file): New function. + (enable_tilde_expansion): New variable. + (run_wgetrc): Use it. + (cmd_file): Use it. + +2001-04-08 Hrvoje Niksic + + * init.c: Include cookie-related options. + + * main.c (main): Include cookie-specific options. + (main): Load cookies before download is finished. + (main): Save cookies when done. + + * http.c (gethttp): Process the `Set-Cookie' header. + (gethttp): Include cookies in the response. + + * cookies.c: New file. + +2001-04-08 Hrvoje Niksic + + * utils.c (datetime_str): New function. + +2001-04-08 Jan Prikryl + + * ftp-ls.c (ftp_parse_winnt_ls): The AM/PM change did assume + 12:01PM == 00:01, which was obviously wrong. Taken care of this + anomaly. + + * ChangeLog: Removed an excess conflict marker. Reformatted the + entry by Philipp Thomas from 2001-03-09. + + * ftp-ls.c (ftp_parse_winnt_ls): Ensure that adjusted PM hours lay + between 0 and 23. Elminate unused variable `sec'. + +2001-04-08 Hrvoje Niksic + + * hash.c (hash_table_count): New function. + +2001-04-06 Hrvoje Niksic + + * utils.c (read_file): Cast MAP_FAILED to char *. Enforced by + Digital Unix cc. + +2001-04-06 Hrvoje Niksic + + * config.h.in: Oops, do the namespace tweaks only on systems we + know about. + +2001-04-06 Hrvoje Niksic + + * hash.c: Include . + +2001-04-06 Hrvoje Niksic + + * config.h.in: Define "compilation environment" options that work + under Linux and Solaris. To be reviewed on other OS'es. + +2001-04-06 Hrvoje Niksic + + * http.c (gethttp): Prepend literal newline with `\n\'. + +2001-04-06 Hrvoje Niksic + + * sysdep.h: Don't define VERY_LONG_FORMAT. + + * utils.c (very_long_to_string): New function. + (legible_very_long): Use it; don't use VERY_LONG_FORMAT. + +2001-04-04 Christian Fraenkel + + * url.c (parse_uname): Would run past the end of the string if the + username was present, but the URL did not contain a slash, e.g. + http://foo:bar@myhost. + +2001-04-03 KOJIMA Hajime + + * http.c (http_atotm): Use %A instead of %a to match full + weekday. (On most systems there is no difference.) + +2001-04-03 Paul Bludov + + * mswindows.c (sleep): Use SleepEx() instead of Sleep(). + (ws_changetitle): Use alloca() instead of malloc() to avoid memory + leak. + (ws_mypath): Use GetModuleFileName instead of argv[0]. + (ws_startup): Use data.wVersion for comparison. + +2001-04-02 Hrvoje Niksic + + * http.c (http_loop): Ditto. + + * ftp.c (ftp_loop_internal): Made the check whether to continue + retrieval `-O'-friendly. + +2001-04-02 Hrvoje Niksic + + * netrc.c (parse_netrc): Don't trim the line endings explicitly; + they will be handled as whitespace. + (parse_netrc): Correctly handle lines that end with whitespace. + +2001-04-02 Hrvoje Niksic + + * retr.c (retrieve_url): New variable global_download_count used + to identify first retrieval. + + * ftp.c (getftp): Ditto. + + * http.c (gethttp): Rewind opt.dfp only on first retrieval. + +2001-04-02 Hrvoje Niksic + + * init.c (cmd_address): Heap-allocate the address that gets stored + to CLOSURE. Old code would simply assign an address on the stack. + +2001-04-01 Nicolas Lichtmaier + + * ftp.c (ftp_get_listing): Propagate error status. + (ftp_retrieve_glob): Use it. + (ftp_loop): Ditto. + +2001-04-01 Nicolas Lichtmaier + + * main.c (main): Add -C to the string that is the third arg to + getopt_long(). + +2001-04-01 Hrvoje Niksic + + * ftp.c (getftp): Don't start the download from scratch if `-c' + was specified, but the file is already fully downloaded. + + * http.c (gethttp): Don't truncate a pre-existing file if `-c' was + specified and the server doesn't support continued download. + (gethttp): Don't start the download from scratch if `-c' was + specified, but the file is already fully downloaded. + +2001-03-31 Hrvoje Niksic + + (recursive_retrieve): Don't clear the hash tables at this point at + all; it interferes with the normal operation of register_download. + +2001-03-31 Hrvoje Niksic + + * recur.c (recursive_retrieve): Clear the hash tables only when + they are defined. + +2001-03-31 Hrvoje Niksic + + * http.c (gethttp): Make sure the socket is closed with + CLOSE_INVALIDATE before we have drained the body. + +2001-03-31 Hrvoje Niksic + + * retr.c (retrieve_url): Call register_download() for downloaded + files and register_html() for downloaded HTML files. + + * recur.c (register_download): New function; register here that a + file has been downloaded, rather than in recursive_retrieve(). + (register_html): New function; enqueue the location of HTML files + here rather than in recursive_retrieve(). + +2001-03-31 Hrvoje Niksic + + * main.c (print_help): Use multiple fputs instead of a single ugly + printf(). + (main): Consistently assign numbers >128 to options without a + corresponding character. + +2001-03-09 Philipp Thomas + + * safe-ctype.h: New file. Locale independent ctype.h replacement + taken from libiberty. + + * safe-ctype.c: New file. Tables for above. + + * Makefile.in: Add safe-ctype$o to OBJS. Add dependencies for + safe-ctype$o. + + * cmpt.c: Remove include of ctype.h. Use ISSPACE instead of + isspace. + + * ftp-basic.c: Don't include ctype.h. + + * ftp-ls.c: Likewise. + + * ftp.c: Likewise. + + * headers.c: Likewise. + + * host.c: Likewise. + + * html-parse.c: Likewise. + + * html-url.c: Likewise. + + * http.c: Likewise. + + * init.c: Likewise. + + * main.c: Likewise. Set LC_CTYPE along with LC_MESSAGES. + + * netrc.c: Likewise. + + * recur.c: Likewise. + + * retr.c: Likewise. + + * snprintf.c: Replace ctype.h with safe-ctype.h. Use ISDIGIT + instead of isdigit. + + * sysdep.h: Remove defines of ctype macros as they aren't needed + for safe-ctype-h. + + * url.c: Don't include ctype.h. + + * utils.c: Likewise. + + * wget.h: Include safe-ctype.h. + +2001-03-27 Dan Harkless + + * Makefile.in: Moved top_builddir out of "User configuration + section" of top Makefile and analogous spot in this one. + +2001-03-17 Dan Harkless + + * Makefile.in: Include @SSL_INCLUDES@ substition in INCLUDES. + Define top_builddir. Link wget with libtool so the user doesn't + have to supply a bunch of custom environment variables to + correctly link with the OpenSSL shared libraries. + +2001-03-06 Hack Kampbjorn + + * http.c (gethttp): skip :port in host header if it is the + DEFAULT_HTTPS_PORT when using SSL. + + * url.c: move the #define of DEFAULT_HTTP_PORT, DEFAULT_FTP_PORT + and DEFAULT_HTTPS_PORT to the header file so it can be use in the + rest of the code. + * url.h: Ditto + +2001-03-01 Jonas Jensen + + * retr.c (show_progress): Correctly calculate the number of bytes + in the first line of the download that have been actually + downloaded in this run. + +2001-02-23 Dan Harkless + + * main.c (print_help): --help documentation for -N said it would + re-download files if they had the _same_ timestamp on server. + (print_help): -nr belongs in "FTP options" section of --help + output, not "Recursive retrieval" section. Alphabetized FTP + options by long option name. + +2001-02-16 Dan Harkless + + * init.c (commands): Hack Kampbjørn discovered + that "httpsproxy" had been inserted into commands[] out of + alphabetical order, causing "BUG: unknown command `httpuser'". + +2001-02-13 Jan Prikryl + + * ftp-ls.c (ftp_parse_ls): Added support of ST_MACOS (Unix-like + listing without correct permissons). + + * ftp.h (stype): Added ST_MACOS to identify the NetPresenz MacOS + FTP server. + + * ftp.c (ftp_retrieve_list): New mirroring logic: A remote file + shall be donwloaded only when it's newer than the local copy or + when it has the same timeestamp but its size is different. ST_VMS + and ST_MACOS as special cases that lie about file size. + + * ftp-ls.c (ftp_parse_ls): Support for ST_MACOS. + + * Makefile.in: Removed dependency on ftpparse library due to unclear + copyright issues and absence of any feedback to our queries. + + * ftp-ls.c: Removed dependency on ftpparse library due to unclear + copyright issues and absence of any feedback to our queries. + (ftp_parse_ls): Added a warning message when remote server system + does not seem to be suported by wget. + (ftp_parse_vms_ls): New function for parsing VMS ftp + server listing output. + (clean_line): New function responsible for removing + end-of-line characters from FTP listing texts. + + * ftp.c (getftp): Global variables pwd and host_type are now + member of the ccon structure under names ccon.id and ccon.rs. + + * ftp.h (struct ccon): Added formed global variables from ftp.c, + enum stype rs (remote system identification) and char *id (initial + working directory), as suggested by Hrvoje. + + * url.c (parse_uname): Added support for passwords containing '@' + characters. + (skip_uname): Ditto. + +2001-02-11 Hrvoje Niksic + + * ftp.c (ftp_loop): Reset con. + +2001-01-06 Jan Prikryl + + * url.c (parse_uname): Added support for passwords containing '@' + characters. + (skip_uname): Ditto. + +2001-02-11 Hack Kampbjørn + + * url.c (parseurl): Debug-print u->ftp_type. + +2001-02-11 Hrvoje Niksic + + * ftp.c (ftp_loop_internal): Disable padding. + (getftp): Ditto. + + * http.c (http_loop): Disable padding. + + * retr.c (show_progress): Use it to enable padding. + + * retr.c (rate): Optional parameter PAD for padding the rate. + +2001-02-10 Hrvoje Niksic + + * retr.c (show_progress): Make sure that the last output line + includes progress. + +2001-02-10 Jonas Jensen + + * retr.c (show_progress): Print the download rate along with the + percentages. + Along with Anders Thorsby . + +2001-02-10 Tim Mooney + + * ftp.h: Rename enums `command' to `wget_ftp_command' and + `fstatus' to `wget_ftp_status' because old names clash with Tru64 + net/if.h. + +2001-02-08 Christian Fraenkel + + * gen_sslfunc.c: verify_callback is now static + + * gen_sslfunc.c (init_ssl): load certificate if specified + + * gen_sslfunc.c (ssl_printerr): new function + + * init.c: added new --sslcertfile and --sslcertkey switches + + * main.c: ditto + + * options.h: ditto + + * http.c (gethttp): abort when init_ssl fails + +2001-01-23 Herold Heiko + + * mswindows.h: Include ; it's needed for alloca(). + +2001-01-10 Dan Harkless + + * url.c (str_url): Clarified this function's comment header after + Hrvoje answered my question on the list as to when hide != 1. + Also Hrvoje pointed out I need to use xstrdup() on the string literal. + +2001-01-06 Hrvoje Niksic + + * connect.c (bindport): Declare addrlen as int. Diagnosed by + Drazen Kacar . + (conaddr): Ditto. + +2001-01-09 Dan Harkless + + * html-url.c: A bunch of fixup of `--page-requisites'-related + comments to reflect Hrvoje's changes to my code when transplanting + it into this new file, to fix spelling mistakes, to clarify, etc. + + * url.c (write_backup_file): Clarified a comment. + (str_url): Henrik van Ginhoven pointed out on the list that we + shouldn't give away the number of characters in the password by + replacing each character with a 'x'. Use "" instead. + + * ftp.c (ftp_retrieve_dirs): The bug where recursion into FTP + directories didn't work if logging in put you in a directory other + than "/" is fixed now. Removed the comment here warning of the bug. + + * main.c (print_help): --continue's description was misleading. + We don't "restart", we "resume". Also, better to say + "partially-downloaded file" rather than just "existing file". + +2001-01-06 Dan Harkless + + * ChangeLog: The '[Not in 1.6 branch.]'s were decided not to be + the best way to go about my aim. Removed them in favor of: + + * ChangeLog-branches/1.6_branch.ChangeLog: New file. + +2001-01-04 Hrvoje Niksic + + * url.c (replace_attr): New function, to be used by both + TO_COMPLETE and TO_RELATIVE case in convert_links. + (find_fragment): New function for finding URL fragments. + (replace_attr): Better handle the case where the original string + is not quoted. Use find_fragment. + (convert_links): Use replace_attr(). + +2000-12-31 Dan Harkless + + * ChangeLog: Since this flat file doesn't have multiple branches, + looking at the dates would make you think that things went into + 1.6 that actually just went into the 1.7-dev branch. Added "[Not + in 1.6 branch.]" where appropriate to clarify. + +2000-12-30 Dan Harkless + + * ftp.c, http.c: Applied Hack Kampbjørn 's + patch to deal with h_errno not being defined in netdb.h under Cygwin. + +2000-12-18 Csaba Raduly + + * sysdep.h: Include and under Watcom. + +2000-12-17 Igor Khristophorov + + * http.c (check_end): Fix test for '+' or '-'. + +2000-12-17 Hrvoje Niksic + + * url.c (parseurl): Rename inner loop var from i to ind to avoid + clash with the function top-level-declared variable i. + (str_url): Likewise, rename inner-loop i to j. + + * recur.c (parse_robots): Don't declare LEN at top of function. + (robots_match): Renamed parameter FORBIDDEN to avoid hiding of + global variable. + + * main.c (main): Change erroneous use of bitwise and to logical. + + * init.c (cmd_address): Don't heap-allocate `sin'; it can be on + the stack because it will be copied to closure. + + Thanks to Csaba Raduly's run of PC-LINT over the sources. + +2000-12-17 Hrvoje Niksic + + * http.c (basic_authentication_encode): Use xmalloc(), not + malloc(). Thanks to Csaba Raduly's run of PC-LINT over the + sources. + +2000-12-17 Csaba Raduly + + * sysdep.h: Test for __EMX__ rather than for EMXOS2 for OS/2 + compilation. + +2000-12-17 Hrvoje Niksic + + * mswindows.c: Include . + + * gen_sslfunc.c: Include . + + * ftp-basic.c: Don't attempt to declare errno or h_errno because + they're not used. + + * main.c: Include because errno is used. + + * ftp.c: Ditto. + + * http.c: Include for h_errno. + +2000-12-13 Hrvoje Niksic + + * html-parse.c (advance_declaration): MSVC assert() chokes on + '\"'. Use '"' instead. + +2000-12-11 Hrvoje Niksic + + * utils.c (xfree_real): Removed. + (xfree_debug): Just call free(). + + * wget.h (xfree): Make it an alias for free. + +2000-12-11 Hrvoje Niksic + + * http.c (http_loop): Furthermore, touch output_document only if + it is known to be an existing regular file. + +2000-12-11 Hrvoje Niksic + + * ftp.c (ftp_retrieve_list): Ditto. + + * http.c (http_loop): Touch output_document if that is used for + output. + +2000-12-06 Hrvoje Niksic + + * http.c: Include gen_sslfunc.h after including Wget's headers. + (persistent_available_p): Needed coma before `int ssl'. + +2000-12-06 Hrvoje Niksic + + * ftp.c (ftp_loop_internal): Ditto. + + * http.c (http_loop): Use it. + + * retr.c (sleep_between_retrievals): New function that handles the + logic of opt.wait and opt.waitretry. + +2000-12-06 Hrvoje Niksic + + * rbuf.h: Implement only a single version of RBUF_READCHAR, using + rbuf_read_bufferful when the buffer is depleted. + + * rbuf.c (rbuf_read_bufferful): New function. + +2000-12-06 Hrvoje Niksic + + * gen_sslfunc.h: Use ansi2knr style function declarations. + + * gen_sslfunc.c: Reformat according to the GNU coding standards. + More should be done. + + * http.c (persistent_available_p): Place the cheap SSL test nearer + the top of the function. + (CLOSE_FINISH, CLOSE_INVALIDATE): Define only one version of each. + +2000-12-05 Hrvoje Niksic + + * url.c (init_unsafe_char_table): Reinstate space as an unsafe + char. + +2000-12-03 Christian Fraenkel + + * Makefile.in: added gen_sslfunc object + * config.h.in: added HAVE_SSL define + * connect.c: changed select_fd from static int to int + * connect.h: ditto + * gen_sslfunc.h: New file + * gen_sslfunc.c: ditto + * http.c: added HTTPS fuctionality + * retrc.c: ditto + * url.c: ditto + * init.c: added opt.httpsproxy + * options.h: ditto + * rbuf.h: added alternate rbuf struct + * wget.h: added CONSSLERR + * rbuf.c: ditto + + * http.c: Added HTTPS fuctionality. + + * retrc.c: Ditto. + + * url.c: Ditto. + + * init.c: Added opt.httpsproxy. + + * options.h: Ditto. + + * rbuf.h: Added alternate rbuf struct. + + * wget.h: Added CONSSLERR. + + * rbuf.c: Ditto. + +2000-11-30 Jan Prikryl + + * ftp-ls.c (ftp_parse_unix_ls): Added second parameter + "ignore_perms" to ignore file and directory permissions for + Windows NT FTP server listings. + (ftp_parse_winnt_ls): New function. + (ftp_parse_ls): Parses UNIX and Windows NT listings + separately. Simple heuristics for distinguishing between UNIX and + MS-DOS-like FTP listing provided by Windows NT FTP service. + +2000-11-18 Jan Prikryl + + * ftpparse.c, ftpparse.h: New files. + + * ftp-ls.c (ftp_parse_ls): Use ftp_parse_unix_ls for UNIX servers + only. Use ftp_parse_nonunix_ls otherwise. + (ftp_parse_nonunix_ls): Stub to the ftpparse library handling all + exotic FTP servers. + + * ftp.h (stype): New enum, distinguishes UNIX, VMS, and "other" + FTP servers. + + * ftp.c: New static wariables host_type, pwd, and pwd_len. + (getftp): Support for VMS. Support for FTP servers that do not + place you in the root directory after login. + (ftp_retrieve_list): VMS is silent about the real file size, issue + a more appropriate message. + (ftp_get_listing): Pass host_type to ftp_parse_ls. + + * ftp-basic.c (ftp_pwd, ftp_syst): New functions. + +2000-11-30 Jan Prikryl + + * ftp-ls.c (ftp_parse_unix_ls): Added second parameter + "ignore_perms" to ignore file and directory permissions for + Windows NT FTP server listings. + (ftp_parse_winnt_ls): New function. + (ftp_parse_ls): Parses UNIX and Windows NT listings + separately. Simple heuristics for distinguishing between UNIX + and MS-DOS-like FTP listing provided by Windows NT FTP service. + +2000-11-29 John Summerfield + + * netrc.c (parse_netrc): Get rid of line ending. + +2000-11-25 Hrvoje Niksic + + * ftp.c (ftp_retrieve_list): Undo typo "fix" until resolution by + Dan. + +2000-11-24 Karl Eichwalder + + * main.c (print_help): Untabify. + +2000-11-23 Hrvoje Niksic + + * utils.c (xrealloc_debug): Do the unregister/register thing only + if the pointer has actually changed. + (xmalloc_real): Declare `static' in DEBUG_MALLOC builds. + (xfree_real): Ditto. + (xrealloc_real): Ditto. + (xstrdup_real): Ditto. + +2000-11-22 Hrvoje Niksic + + * ftp.c (getftp): ftp_getaddress() returns a malloc'ed copy of the + string; no need to strdup() it. + (getftp): Make pwd_len a local variable. + (ftp_loop): Free PWD before returning. + + * init.c (cleanup): Free opt.ftp_pass only if it's non-NULL. + +2000-11-22 Hrvoje Niksic + + * all: Use xfree() instead of free. + + * utils.c (xfree): New function. + +2000-11-21 Hrvoje Niksic + + * url.c (convert_links): HTML-quote the converted string. + + * utils.c (html_quote_string): Move here from ftp-ls.c + (html_quote_string): Make non-static; declare in utils.h. + (html_quote_string): Convert SP to . + +2000-11-21 Hrvoje Niksic + + * ftp.c (getftp): Reformat Jan's code according to GNU coding + standards; remove (debugging?) printf's; use '\0' for the ASCII + zero character. Use alloca() instead of malloc() for + inter-function temporary allocations. + +2000-11-18 Jan Prikryl + + * ftpparse.c, ftpparse.h: New files. + + * ftp-ls.c (ftp_parse_ls): Use ftp_parse_unix_ls for UNIX servers + only. Use ftp_parse_nonunix_ls otherwise. + (ftp_parse_nonunix_ls): Stub to the ftpparse library handling all + exotic FTP servers. + + * ftp.h (stype): New enum, distinguishes UNIX, VMS, and "other" + FTP servers. + + * ftp.c: New static wariables host_type, pwd, and pwd_len. + (getftp): Support for VMS. Support for FTP servers that do not + place you in the root directory after login. + (ftp_retrieve_list): VMS is silent about the real file size, issue + a more appropriate message. + (ftp_get_listing): Pass host_type to ftp_parse_ls. + + * ftp-basic.c (ftp_pwd, ftp_syst): New functions. + +2000-11-21 Hrvoje Niksic + + * hash.c (hash_table_put): Don't overwrite deleted mappings. + +2000-11-21 Hrvoje Niksic + + * hash.c (find_mapping): New function. + (hash_table_get): Use it. + (hash_table_get_pair): Ditto. + (hash_table_exists): Ditto. + (hash_table_remove): Ditto. + (hash_table_remove): Really delete the entry if the mapping + following LOCATION is empty. + + * utils.c (string_set_add): Check whether the element has existed + before. + + * hash.c (hash_table_get_pair): New function. + +2000-11-20 Hrvoje Niksic + + * http.c (http_process_type): Ignore trailing whitespace; use + strdupdelim(). + + * recur.c (recursive_retrieve): Use the new `convert' field. + (convert_all_links): Ditto. + (convert_all_links): Don't respect meta_disallow_follow. + + * html-url.c (handle_link): Fill out link_relative_p and + link_complete_p. + + * url.h (struct _urlpos): Make elements more readable. + + * recur.c (recursive_retrieve): Call slist_prepend instead of + slist_append. + (convert_all_links): Call slist_nreverse before iterating through + urls_html. + + * utils.c (slist_prepend): New function. + (slist_nreverse): Ditto. + +2000-11-20 Hrvoje Niksic + + * http.c (check_end): Constify. + +2000-11-20 Hrvoje Niksic + + * http.c (http_loop): If username and password are known, try the + `Basic' authentication scheme by default. + + * connect.h: Declare test_socket_open. + +2000-11-20 Hrvoje Niksic + + * version.c: Bump version from 1.5.3+dev to 1.7-dev. + +2000-11-20 Hrvoje Niksic + + * http.c (gethttp): Don't use the return value of sprintf(). + (gethttp): Inhibit keep-alive if opt.http_keep_alive is 0. + +2000-11-20 Hrvoje Niksic + + * recur.c (recursive_retrieve): Print the "so we don't load" + debugging message only if we really don't load. + + * http.c (gethttp): Inhibit keep-alive if proxy is being used. + (gethttp): Don't request keep-alive if keep-alive is inhibited. + +2000-11-19 Hrvoje Niksic + + * http.c (gethttp): Make the HTTP persistent connections more + robust. + +2000-11-19 Hrvoje Niksic + + * retr.c (get_contents): If use_expected, make sure that the + appropriate amount of data is being read. + + * http.c (gethttp): Check for both `Keep-Alive: ...' and + `Connection: Keep-Alive'. + + * wget.h (DEBUGP): Call debug_logprintf only if opt.debug is + turned on. + +2000-11-19 Hrvoje Niksic + + * http.c (connection_available_p): Use it. + + * connect.c (test_socket_open): New function. + + * http.c (gethttp): Support persistent connections. Based on the + ideas, and partly on code, by Sam Horrocks . + (register_persistent): New function. + (connection_available_p): Ditto. + (invalidate_connection): Ditto. + +2000-11-19 Hrvoje Niksic + + * url.c (convert_links): Handle UREL2ABS case. + + * recur.c (recursive_retrieve): Instead of the list + urls_downloaded, use hash tables dl_file_url_map and + dl_url_file_map. + (convert_all_links): Use them to retrieve data. + + * host.c (clean_hosts): Free the hash tables. + + * main.c (private_initialize): Call host_init(). + + * host.c (store_hostaddress): Use a saner, hash table-based data + model. + (realhost): Ditto. + (host_init): Initialize the hash tables. + +2000-11-18 Hrvoje Niksic + + * utils.c (slist_append): Eviscerate NOSORT. Hash tables are now + used for what the sorted slists used to be used for. + (slist_contains): Don't rely on the list being sorted. + (slist_append): Simplify the code. + + * recur.c (recursive_cleanup): Use free_string_set. + + * utils.c (string_set_add, string_set_exists, string_set_free): + New functions for easier freeing of hash tables whose keys are + strdup'ed strings. + + * recur.c (recursive_retrieve): Use the hash table functions for + storing undesirable URLs. + + * hash.c: New file. + +2000-11-17 Hrvoje Niksic + + * main.c (private_initialize): Call url_init. + (main): Call private_initialize. + + * url.c (unsafe_char_table): New table. + (UNSAFE_CHAR): Use it. + (init_unsafe_char_table): New function. + (url_init): New function; call init_unsafe_char_table. + +2000-11-16 Hrvoje Niksic + + * mswindows.h: Define snprintf and vsnprintf to _snprintf and + _vsnprintf respectively. + +2000-11-15 Hrvoje Niksic + + * config.h.in: Do the _XOPEN_SOURCE and _SVID_SOURCE things only + on Linux. + +2000-11-15 Hrvoje Niksic + + * html-url.c (handle_link): Handle HTML fragment identifiers. + + * recur.c (recursive_retrieve): If norobot info is respected and + the file is specified not to be followed by robots, respect that. + + * html-url.c (collect_tags_mapper): Handle . For us the important cases are where X is NONE or + where X contains NOFOLLOW. + (get_urls_html): Propagate that information to the caller. + +2000-11-13 Hrvoje Niksic + + * url.c (convert_links): Unlink the file we might be reading from + before writing to it. + (convert_links): Use alloca instead of malloc for + filename_plus_orig_suffix. + +2000-11-12 Hrvoje Niksic + + * host.c (realhost): Add HOST to the list with quality==0 only if + it wasn't already there. + Based on analysis by Lu Guohan . + +2000-11-10 Hrvoje Niksic + + * url.c (get_urls_file): Ditto. + (convert_links): Ditto. + + * html-url.c (get_urls_html): Use read_file() instead of + load_file(). + + * utils.c (read_file): New function, instead of the old + load_file(). + (read_file_free): Ditto. + + * url.c (findurl): Search only for the supported protocols. + (convert_links): Use fwrite() when writing out a region of + characters. + +2000-11-10 Hrvoje Niksic + + * ftp-ls.c: Move html_quote_string and ftp_index here. + + * url.c: Remove get_urls_html, since that's now in html-url.c. + + * html-url.c: New file. + + * html-parse.c: New file. + +2000-11-10 Hrvoje Niksic + + * init.c (run_wgetrc): Don't bother killing off '\r' since + pars_line() skips whitespace at end of line anyway. + (parse_line): Oops, it didn't. Now it does. + + * recur.c (parse_robots): Ditto here. + + * ftp-ls.c (ftp_parse_unix_ls): Kill off the newline character + manually because read_whole_line no longer does. + + * utils.c (read_whole_line): Rewrite to: a) use less memory + (reallocates to needed size after work), b) work faster --> + fgets() instead of getc, c) be more correct --> doesn't kill the + newline character at the end of line. + +2000-11-10 Hrvoje Niksic + + * init.c (comind): Initialize MAX to array size - 1. + +2000-11-08 Hrvoje Niksic + + * url.c (construct): Changed last_slash[-1] to *(last_slash - 1). + Suggested by Edward J. Sabol. + +2000-11-08 Hrvoje Niksic + + * url.c (construct): Handle the case where host name is not + followed by a slash. + +2000-11-06 Hrvoje Niksic + + * init.c: commands[] need to be sorted! ("base" wasn't.) + +2000-11-05 Hrvoje Niksic + + * wget.h (DO_REALLOC_FROM_ALLOCA): Use braces to disambiguate + `if'. + +2000-11-05 Hrvoje Niksic + + * url.c (construct): Insert unneeded initialization for the + compiler to shut up. + + * config.h.in: Define _XOPEN_SOURCE to 500 to get the prototype + for strptime() (*duh*). Define _SVID_SOURCE to get S_IFLNK which + otherwise gets lost when you define _XOPEN_SOURCE. + + * utils.c (touch): Include the file name in the error message. + From Debian. + +2000-11-05 Hrvoje Niksic + + * log.c (logvprintf): Use vsnprintf() in all cases. If necessary, + resize the buffer to fit the formated message. That way, messages + of arbitrary size may be printed. + (logvprintf): Use saved_append() to optionally log the last + several lines of output. + (logputs): Ditto. + (log_close): Adapt to new data structures. + (log_dump): Ditto. + (redirect_output): Print messages to stderr, not to stdout. + + * log.c (saved_append_1): New function. Replaces the old logging + system ("log all output until 10M characters") with a new, much + more reasonable one ("log last screenful of text"). + (saved_append): New function; call saved_append_1. + (free_log_line): New function. + +2000-11-05 Hrvoje Niksic + + * url.c (construct): Fix comment. + (find_last_char): Document. + +2000-11-04 Hrvoje Niksic + + * snprintf.c: New file. + +2000-11-03 Hrvoje Niksic + + * wget.h: If HAVE_STDARG_H is not defined, don't declare argument + types to logprintf() and debug_logprintf(). + +2000-11-02 Hrvoje Niksic + + * ftp.c (ftp_loop_internal): Hide the password from the URL when + printing non-verbose. Problem spotted by Dariusz Mlynarczyk + . + +2000-11-02 Junio Hamano + + * ftp-basic.c (ftp_login): Make comparison case-insensitive. + +2000-11-02 Tyler Riddle + + * http.c (known_authentication_scheme_p): Recognize NTML + authentication. + (create_authorization_line): Treat NTML the same as `Basic'. + +2000-11-02 Hrvoje Niksic + + * retr.c (retrieve_url): Free url before returning. + (retrieve_url): Free mynewloc before returning. + Spotted by Mark A. Mankins . + +2000-11-02 Hrvoje Niksic + + * url.c (parseurl): Remove possible reading past the end of + sup_protos[]. Spotted by Mark A. Mankins . + +2000-11-01 Hrvoje Niksic + + * main.c (main): In case of opt.downloaded overflowing, print + instead of a totally bogus random value. + + * retr.c (retrieve_from_file): Ditto. + + * recur.c (recursive_retrieve): Ditto. + + * main.c (main): Ditto. + + * http.c (http_loop): Ditto. + + * ftp.c (ftp_loop_internal): Use downloaded_increase() instead of + `+=', and downloaded_exceeds_quota() instead of the simple-minded + check. + (ftp_retrieve_list): Ditto. + (ftp_retrieve_dirs): Ditto. + (ftp_retrieve_glob): Ditto. + + * retr.c (downloaded_increase): New function. Notice overflows of + opt.downloaded. + (downloaded_exceeds_quota): Make sure that opt.downloaded is not + used if it overflowed. + + * options.h (struct options): New member downloaded_overflow. + +2000-11-01 Hrvoje Niksic + + * wget.h (enum): Remove extra space after last enumeration. + +2000-11-01 Hrvoje Niksic + + * main.c (main): Use legible_very_long() for printing + opt.downloaded. + + * utils.c (legible_1): New function that operates on strings and + does the brunt of legible()'s work. + (legible): Use legible_1(). + (legible_very_long): New function; dump the argument with + sprintf(), and call legible_1(). + + * options.h (struct options): Use VERY_LONG_TYPE for + opt.downloaded. + + * sysdep.h (VERY_LONG_TYPE): Define it to have a 64-bit or greater + type. + + * config.h.in: Make sure that SIZEOF_LONG and SIZEOF_LONG_LONG get + defined. Define HAVE_LONG_LONG if long long is available. + +2000-11-01 Hrvoje Niksic + + * utils.c (long_to_string): Update with a later, better version. + +2000-11-01 Hrvoje Niksic + + * url.c (path_simplify_with_kludge): New function. + (path_simplify_with_kludge): Disable it. Instead... + (parse_dir): ...make sure that at this point the right thing is + done, i.e. that "query" part of the URL (?...) is always assigned + to the file, never to the directory portion of the path. + +2000-11-01 Hrvoje Niksic + + * retr.c (retrieve_url): Detect redirection cycles. + +2000-11-01 Hrvoje Niksic + + * url.c (get_urls_html): Decode HTML entities using + html_decode_entities. + + * html.c (htmlfindurl): Don't count the `#' in numeric entities + (&#NNN;) as an HTML fragemnt. + (html_decode_entities): New function. + +2000-11-01 Hrvoje Niksic + + * html.c (htmlfindurl): Fix recognition of # HTML fragments. + +2000-11-01 Hrvoje Niksic + + * url.c (construct): Rewritten for clarity. Avoids the + unnecessary copying and stack-allocation the old version + performed. + +2000-10-31 Hrvoje Niksic + + * ftp.c (getftp): Ditto. + + * http.c (gethttp): Rewind the stream when retrying from scratch. + +2000-10-31 Hrvoje Niksic + + * retr.c (retrieve_url): Use url_concat() to handle relative + redirections instead of /ad hoc/ code. + + * url.c (url_concat): New function encapsulating weird + construct(). + (urllen_http_hack): New function. + (construct): When constructing new URLs, recognize that `?' does + not form part of the file name in HTTP. + +2000-10-13 Adrian Aichner + + * retr.c: Add msec timing support for WINDOWS. + * retr.c (reset_timer): GetSystemTime() on WINDOWS. + * retr.c (elapsed_time): Calculate delta time to msec on WINDOWS. + +2000-10-27 Dan Harkless + + * retr.c (retrieve_url): Manually applied T. Bharath + 's patch to get wget to grok + illegal relative URL redirects. Reformatted and re-commented it. + +2000-10-23 Dan Harkless + + * connect.c (make_connection and bindport): Manually applied Rob + Mayoff 's 1.5.3 patch to add --bind-address, + changing coding style to GNU's. + + * ftp.c (ftp_loop_internal): --delete-after wasn't implemented for + files downloaded via FTP. Per a comment, .listing files were not + counted towards number of bytes and files downloaded because they're + deleted anyway. Well, they aren't under -nr, so count them then. + + * init.c: Manually applied Rob Mayoff's 1.5.3 patch to add + --bind-address, alphabetizing, changing coding style to GNU's, + commenting, and renaming cmd_ip_address() to cmd_address() to + imply hostnames also okay. + + * main.c (main): --delete-after didn't delete the root of the + tree. Ignore --convert-links if --delete-after was specified. + Manually applied Rob Mayoff's 1.5.3 patch to add --bind-address, + fixing duplicate use of added-since-1.5.3 case value. + (print_help): Clarified that --delete-after deletes local files. + Rob forgot to add a line for his new --bind-address option. + + * options.h (struct options): Manually applied Rob Mayoff's patch + to add --bind-address (bind_address structure member). + + * recur.c (recursive_retrieve): Improved comment; added DEBUGP(). + Ignore --convert-links if --delete-after was specified. + + * retr.c (retrieve_from_file): Just added a DEBUGP(). + +2000-10-19 Dan Harkless + + * ftp.c (ftp_loop_internal): downloaded_file() enumerators changed. + (getftp): Applied Piotr Sulecki 's + patch to work around FTP servers that incorrectly respond to the + "REST" command with the remaining size rather than the total file size. + + * http.c (gethttp): Improved a comment and added code to tack on + ".html" to text/html files without that extension when -E specified. + (http_loop): Use new downloaded_file() enumerators and deal with + the case of gethttp() called xrealloc() on u->local. + + * init.c (commands): Added new "htmlextension" command. + Also renamed John Daily's cmd_quad() to the more descriptive + cmd_lockable_boolean(), alpha-sorted the CMD_DECLARE()s and + removed duplicate cmd_boolean() declaration. + + * main.c (print_help): Added my new -E / --html-extension option. + (main): Undocumented --email-address option previously used -E synonym. + Stole it away for the much more deserving --html-extension's use. + + * options.h (struct options): Added html_extension field. + + * url.c (convert_links): URL X that we saved as X.html locally due + to -E needs to be backed up as X.orig, not X.html.orig. Added comments. + (downloaded_file): Now remembers if we added .html extension to a file. + + * url.h (downloaded_file_t): Added extra enumerators to support above. + (downloaded_file): Now takes and returns a downloaded_file_t. + + * wget.h (unnamed "dt" enum): Added ADDED_HTML_EXTENSION enumerator. + +2000-10-09 Dan Harkless + + * html.c (htmlfindurl): Added unneeded initialization to quiet warning. + + * main.c (print_help): Clarified what --retr-symlinks does. + +2000-09-15 John Daily + + * init.c: Add support for "always" and "never" values to allow + .wgetrc to override commandline (useful e.g. with .pm files + calling `wget --passive-ftp' when your firewall doesn't allow that). + + * ftp.c (getftp): passive_ftp is first option to support always/never. + +2000-08-30 Dan Harkless + + * ftp.c (ftp_retrieve_list): Use new INFINITE_RECURSION #define. + + * html.c: htmlfindurl() now takes final `dash_p_leaf_HTML' parameter. + Wrapped some > 80-column lines. When -p is specified and we're at a + leaf node, do not traverse , , or tags other than + . + + * html.h (htmlfindurl): Now takes final `dash_p_leaf_HTML' parameter. + + * init.c: Added new -p / --page-requisites / page_requisites option. + + * main.c (print_help): Clarified that -l inf and -l 0 both allow + infinite recursion. Changed the unhelpful --mirrior description + to simply give the options it's equivalent to. Added new -p option. + (main): Added some comments; handle new -p / --page-requisites. + + * options.h (struct options): Added new page_requisites field. + + * recur.c: Changed "URL-s" to "URLs" and "HTML-s" to "HTMLs". + Calculate and pass down new `dash_p_leaf_HTML' parameter to + get_urls_html(). Use new INFINITE_RECURSION #define. + + * retr.c: Changed "URL-s" to "URLs". get_urls_html() now takes + final `dash_p_leaf_HTML' parameter. + + * url.c: get_urls_html() and htmlfindurl() now take final + `dash_p_leaf_HTML' parameter. + + * url.h (get_urls_html): Now takes final `dash_p_leaf_HTML' parameter. + + * wget.h: Added some comments and new INFINITE_RECURSION #define. + +2000-08-23 Dan Harkless + + * main.c (print_help): -B / --base was not mentioned. + +2000-08-22 Dan Harkless + + * main.c (print_help): Modified -nc description to mention that it + also prevents the creation of multiple versions of the same file + with "." suffixes. + +2000-07-14 Jan Prikryl + + * retr.c (retrieve_url): Consistently strdup opt.referer when + setting u->referer. + +2000-06-09 Dan Harkless + + * main.c (print_help): --help output for --waitretry was over 80 cols. + +2000-06-09 Hrvoje Niksic + + * url.c (encode_string): Fix comment. + Suggested by Herold Heiko . + +2000-06-01 Const Kaplinsky + + * ftp.c (ftp_retrieve_list): Change permissions only on plain + files. + +2000-06-01 Hrvoje Niksic + + * url.c (str_url): Print the port number only if it's different + from the default port number for that protocol. + +2000-05-22 Dan Harkless + + * main.c (print_help): Added --help line for Damir Dzeko + 's until-now-undocumented --referer option. + Removed comments that --referer and --waitretry were undocumented. + Changed "`.wgetrc' command" to "`.wgetrc'-style command" on --help + line for --execute. + +2000-05-18 Hrvoje Niksic + + * ftp.c (getftp): Ditto. + + * http.c (gethttp): Check for return value of fclose/fflush. + +2000-04-12 Hrvoje Niksic + + * host.c (store_hostaddress): Instead of shifting ADDR, start + copying from the correct address. + +2000-04-12 Hrvoje Niksic + + * http.c (gethttp): Don't free REQUEST -- it was allocated with + alloca(). + Pointed out by Gisle Vanem . + +2000-04-04 Dan Harkless + + * host.c (store_hostaddress): R. K. Owen's patch introduces a + "left shift count >= width of type" warning on 32-bit + architectures. Got rid of it by tricking the compiler w/ a variable. + + * url.c (UNSAFE_CHAR): The macro didn't include all the illegal + characters per RFC1738, namely everything above '~'. It also + generated a warning on OSes where char =~ unsigned char. Fixed. + +1998-10-17 Hrvoje Niksic + + * http.c (http_process_type): Removed needless strdup(), a memory + leak. + +1998-09-25 Hrvoje Niksic + + * html.c (htmlfindurl): Set PH to the first occurrence of `#'. + +1998-09-25 Simon Munton + + * init.c (wgetrc_file_name): Don't free HOME under Windows. + +1998-12-01 "R. K. Owen" + + * host.c (store_hostaddress): Fix for big endian 64-bit machines. + +1998-12-01 Hrvoje Niksic + + * url.c (UNSAFE_CHAR): New macro. + (contains_unsafe): Use it. + (encode_string): Ditto. + +1998-12-01 Hrvoje Niksic + + * main.c (i18n_initialize): Use LC_MESSAGES only if available. + +2000-03-31 Hrvoje Niksic + + * Use TOUPPER/TOLOWER. + +1998-12-22 Alexander V. Lukyanov + + * ftp-opie.c (btoe): Zero-terminate OSTORE. + +2000-03-21 Hrvoje Niksic + + * wget.h (DO_REALLOC_FROM_ALLOCA): Ditto. + + * sysdep.h (ISALNUM): New macro. + (TOLOWER): Ditto. + (TOUPPER): Ditto. + +2000-03-10 Dan Harkless + + * html.c (idmatch): Implemented checking of my new --follow-tags + and --ignore-tags options. + + * init.c (commands): Added comment reminding people adding new + entries doing allocation to add corresponding freeing in cleanup(). + (commands): Added new followtags and ignoretags commands. + (cleanup): Free storage for new followtags and ignoretags. + + * main.c: Use of "comma-separated list" was random -- normalized + it. Did some alphabetization. Added comments pointing out + "Options without arguments" and "Options accepting an argument" + sections of long_options[]. Added new options --follow-tags and + -G / --ignore-tags. Added comment that Damir's --referer is + currently undocumented. Added comment that Heiko's --waitretry is + partially undocumented (mentioned in --help but not in + wget.texi). Moved improperly sorted 24, 129, and 'G' cases. + + * options.h (struct options): Added new fields follow_tags and + ignore_tags. + + * wget.h: Added "#define EQ 0" so we can say "strcmp(a, b) == EQ". + +2000-03-02 Dan Harkless + + * ftp.c (ftp_loop_internal): Heiko introduced "suggest explicit + braces to avoid ambiguous `else'" warnings. Eliminated them. + + * http.c (gethttp): Dan Berger's query string patch is totally + bogus. If you have two different URLs, gen_page.cgi?page1 and + get_page.cgi?page2, they'll both be saved as get_page.cgi and the + second will overwrite the first. Also, parameters to implicit + CGIs, like "http://www.host.com/db/?2000-03-02" cause the URLs to + be printed with trailing garbage characters, and could seg fault. + Backing out the patch, which Dan B. informed me by email was just + a kludge to download StarOffice from Sun made necessary due to + wget's unconditional escaping of certain characters (room for an + option there?). + (http_loop): Heiko introduced "suggest explicit braces to avoid + ambiguous `else'" warnings. Eliminated them. + + * main.c: Heiko's --wait / --waitretry backwards compatibility + code looks to have been totally untested -- automatic variable + 'wr' was used without being initialized, and a long int was passed + into setval()'s char* val parameter. + + * recur.c (parse_robots): Applied Edward J. Sabol + 's patch for Guan Yang's reported + problem with "User-agent:*" lines in robots.txt. + + * url.c (parseurl, str_url): Removing Dan Berger's code (see + http.c above for explanation). + +1999-08-25 Heiko Herold + + * ftp.c: Respect new option waitretry. + +2000-01-30 Damir Dzeko + + * http.c (gethttp): Send custom Referer, if required. + +1999-09-24 Charles G Waldman + + * netrc.c (parse_netrc): Allow passwords to contain spaces. + + * netrc.c (parse_netrc): New function. + +1999-09-17 Dan Berger + + * http.c (gethttp): Send it. + + * url.c (parseurl): Detect query string in HTTP URL-s. + (str_url): Print it. + +2000-03-02 HIROSE Masaaki + + * html.c (html_allow): Add and