12021-09-07 Darshit Shah <darnir@gnu.org> 2 3 * NEWS: Update NEWS items for release 4 5 * cfg.mk: Disable the indent check 6 7 * gnulib: Pull forward 8 92021-08-21 WB <3572564-wadersgeek@users.noreply.gitlab.com> 10 11 Fix #60956 (improve --page-requisites) 12 * src/html_url.c (tag_handle_link): Check for "alternate stylesheet", 13 "icon" and "manifest". 14 152021-08-07 Tim Rühsen <tim.ruehsen@gmx.de> 16 17 * src/html-url.c (tag_handle_meta): Fix integer overflow 18 192021-07-05 Tim Rühsen <tim.ruehsen@gmx.de> 20 21 * src/recur.c (download_child): Remove temporary robots.txt.tmp 22 232021-06-14 Josef Moellers <jmoellers@suse.de> 24 25 Long pathnames patch 26 272021-06-07 Tim Rühsen <tim.ruehsen@gmx.de> 28 29 * .gitlab-ci.yml: Remove scan-build deps from pages stage 30 31 * .gitlab-ci.yml: Move scan-build/ to public/ only if it exists 32 332021-06-06 Tim Rühsen <tim.ruehsen@gmx.de> 34 35 * .gitlab-ci.yml: Move scan-build results to parent directory 36 37 * .gitlab-ci.yml: Move coverage results to parent directory 38 39 * .gitlab-ci.yml: Don't allow failure of scan-build 40 41 * .gitlab-ci.yml: Pages needs Build-Tarball 42 43 * src/url.c (append_uri_pathel): Add cheap extra check to help static analyzers 44 45 * src/http.c (gethttp): Add cheap extra check to help static analyzers 46 47 * .gitlab-ci.yml: Exclude src/css_.o from scan-build 48 49 * src/main.c (main): Removed unused variable 50 512021-06-06 Tim Rühsen <tim.ruehsen@gmx.de> 52 53 Revert "Long pathnames patch" 54 This reverts commit affad27664afccdedafd94711d350f368e859be4. 55 56 Manual tests with very long path names did not work with this patch. 57 We have to wait for a patch including automated tests. 58 592021-06-06 Tim Rühsen <tim.ruehsen@gmx.de> 60 61 * .lgtm.yml: Add autoconf-archive 62 63 * .gitlab-ci.yml: Re-arrange stages 64 65 Remove .git/, .gitmodules and gnulib/ from bootstrap artefacts 66 672021-06-06 Darshit Shah <darnir@gnu.org> 68 69 Updated Gitlab CI Pipeline 70 * .gitlab-ci.yml: COmpletely overhauled CI pipeline with dependencies 71 for a faster and more robust CI. 72 732021-05-29 jmoellers <josef.moellers@suse.com> 74 75 Long pathnames patch 76 772021-05-22 Tim Rühsen <tim.ruehsen@gmx.de> 78 79 * fuzz/wget_read_hunk_fuzzer.c: Add explicit cast for C++ compilation 80 81 * fuzz/wget_ntlm_fuzzer.c: Add explicit cast for C++ compilation 82 832021-05-03 Tim Rühsen <tim.ruehsen@gmx.de> 84 85 * src/http.c (initialize_request): Send Host HTTP header first 86 This solves an issue where the server expects the Host: header 87 as first one. This seems plausible (ahem) as the Host: header is the 88 only one that is required. 89 902021-05-02 Tim Rühsen <tim.ruehsen@gmx.de> 91 92 Improve wget_options_fuzzer 93 * fuzz/fuzzer.h: Ignore -Wunused-parameter. 94 * fuzz/wget_options_fuzzer.c: Let getaddrinfo() fail in while fuzzing. 95 * fuzz/wget_options_fuzzer.in/*: Update corpora from OSS-Fuzz. 96 972021-05-02 Nekun <nekokun@firemail.cc> (tiny change) 98 99 Fix typo in VMS support code 100 * src/utils.c: Remove unpaired brace 101 1022021-04-15 Nils <nils@nilsand.re> (tiny change) 103 104 Use "nofollow" instead of "no-follow" in messages 105 * src/html-url.c (get_urls_html_fm): Remove misleading debug message. 106 * src/recur.c (retrieve_tree): Fix no-follow -> follow in DEBUGP. 107 108 The attribute in html is "nofollow" so it is more consistent to call it 109 so than to hyphenate it. 110 1112021-04-15 Nils <nils@nilsand.re> (tiny change) 112 113 Print message for no-follow attribute only if norobots respected 114 * src/html-url.c (get_urls_html_fm): Remove misleading log message. 115 * src/recur.c (retrieve_tree): Add log message into correct if block. 116 117 Commit e39be3283836b8cb7b9ee320456eefb2a2fda173 added a message that 118 said links will not be followed whenever the nofollow attribute is found 119 in a page. It didn't take into account that with -e robots=off (and 120 equivalents) links will still be followed. 121 122 This bug has been noticed multiple times: 123 * https://www.reddit.com/r/DataHoarder/comments/mprq89/wget_respects_nofollow_attribute_despite_e/ 124 * https://gist.github.com/simonw/27e810771137408fd7834ad153750c41#gistcomment-3648191 125 * https://superuser.com/questions/1494761/wget-wont-ignore-no-follow-attributes 126 127 This commits makes it so that this message is only printed when a 128 nofollow link is found and the norobots convention is respected. 129 1302021-04-15 Tim Rühsen <tim.ruehsen@gmx.de> 131 132 * configure.ac: Add AM_GNU_GETTEXT_VERSION 133 1342021-04-11 Tim Rühsen <tim.ruehsen@gmx.de> 135 136 * testenv/test/base_test.py: Rename valgrind-suppression-ssl -> valgrind-suppressions-ssl 137 138 * testenv/test/base_test.py: Add --show-leak-kinds=all valgrind argument 139 140 * tests/WgetTests.pm: Add --show-leak-kinds=all valgrind argument 141 142 Fix testenv valgrind suppression 143 * testenv/Makefile.am: Remove valgrind-suppressions from EXTRA_DIST. 144 * testenv/valgrind-suppression-ssl: Rename to testenv/valgrind-suppressions-ssl. 145 1462021-04-11 Tim Rühsen <tim.ruehsen@gmx.de> 147 148 * bootstrap.conf: Add 'rename' to gnulib modules 149 The missing module could be a reason for 150 https://savannah.gnu.org/bugs/?60346. 151 152 Reported-by: jrharris42@gmail.com 153 1542021-04-11 Tim Rühsen <tim.ruehsen@gmx.de> 155 156 * src/wget.h: Use strtoll() for str_to_wgint 157 This fixes a regression reported at https://savannah.gnu.org/bugs/?60353. 158 159 Reported-by: Michal Ruprich 160 1612021-04-11 Shamil Gumirov <shamil@gumirov.com> (tiny change) 162 163 Minor output fix to use quote_n() instead of quote() 164 * src/ftp.c (ftp_retrieve_list): change quote to quote_n 165 * src/iri.c (do_conversion): change quote to quote_n 166 * src/url.c (convert_fname): change quote to quote_n 167 168 The implementation quote() reuses the buffer it returns which 169 leads to printing the same string for each quote() call in one 170 output line. Instead, quote_n() should be used as highlighted in 171 the doc: 172 https://www.gnu.org/software/gnulib/manual/html_node/Quoting.html 173 1742021-04-05 Tim Rühsen <tim.ruehsen@gmx.de> 175 176 * src/Makefile.am: Add metalink.c and xattr.c to EXTRA_wget_SOURCES 177 178 * testenv/Makefile.am: Allow tarball build without python3 179 1802021-04-04 Tim Rühsen <tim.ruehsen@gmx.de> 181 182 Fix spelling errors 183 * NEWS: trough -> through. 184 * README.checkout: Likewise. 185 * contrib/spell-checker: Add exclusion 'parm' 186 187 Remove gettext version requirements 188 * bootstrap.conf: Remove gettext version requirements 189 * configure.ac: Likewise. 190 1912021-03-16 Darshit Shah <darnir@gnu.org> 192 193 Use a LOG_COMPILER for running fuzz tests 194 This prevents needing a special case in the fuzz tests to detect 195 valgrind usage and a new exec. Instead, we simply detect the environment 196 in a shell script and start the test with valgrind in the first place. 197 198 * fuzz/test-runner.sh: New script for running the fuzz tests 199 * fuzz/main.c (main): Remove code for re-running under valgrind 200 * fuzz/Makefile.am: Set the LOG_COMPILER to test-runner.sh and remember 201 to add it to the list of extra files for packaging 202 2032021-03-07 Tim Rühsen <tim.ruehsen@gmx.de> 204 205 * configure.ac: Add AC_PROG_CC_C99 206 2072021-03-07 Darshit Shah <darnir@gnu.org> 208 209 Bump gettext version to 0.20 210 * bootstrap.conf: Increase minimum version of gettext needed to 0.20 211 * configure.ac: Same 212 213 * bootstrap: Update script 214 215 * gnulib: Pull forward 216 2172021-03-02 Darshit Shah <darnir@gnu.org> 218 219 Fix double free in FTP Code 220 * src/ftp.c(getftp): Don't free `target`. If it is not pointing to 221 targetbuf, then it still pointing to its original location of u->dir. 222 This location will be free'd later. Doing so now causes a double free 223 and hence crashes Wget 224 * tests/Test-ftp-dir.px: New test to show double free error 225 * tests/Makefile.am: Add new test 226 2272021-01-31 Tim Rühsen <tim.ruehsen@gmx.de> 228 229 * doc/wget.texi: Replace '' with in example 230 Needed to hide from texi2pod.pl replacement of '' -> ". 231 232 Reported-by: Vincent Lefevre 233 2342021-01-23 Tim Rühsen <tim.ruehsen@gmx.de> 235 236 Use gnulib's utime.h 237 * bootstrap.conf: Remove utime-h (included by utime). 238 * configure.ac: Remove header checks for utime.h and sys/utime.h. 239 * src/utils.c: Simply #include <utime.h>. 240 241 * configure.ac: Detect unresolved AX_ macros 242 2432021-01-16 Tim Rühsen <tim.ruehsen@gmx.de> 244 245 * configure.ac: Use noyywrap for AC_PROG_LEX 246 247 Fix --quota on systems with 32bit long type 248 * src/init.c (cmd_bytes_sum): Use WGINT_MIN and WGINT_MAX in check. 249 * src/options.h (struct options): Make 'quota' of type wgint. 250 * src/retr.c: Make 'total_downloaded_bytes' of type wgint. 251 * src/utils.h: Fix comment. 252 * src/wget.h: Add WGINT_MIN, remove SUM_SIZE_INT. 253 254 * configure.ac: Remove obsolete AC_HEADER_STDC 255 256 * configure.ac: Replace ` with ' 257 258 * configure.ac: Use yywrap param for AC_PROG_LEX 259 2602021-01-09 Darshit Shah <darnir@gnu.org> 261 262 maint: post-release administrivia 263 * NEWS: Add header line for next release. 264 * .prev-version: Record previous version. 265 * cfg.mk (old_NEWS_hash): Auto-update. 266 267 * NEWS: Update NEWS items for release 268 269 * gnulib: Pull forward 270 271 * cfg.mk: Add manual_title for web docs 272 273 * contrib/make-release: Update to use maintainer-makefile 274 275 * bootstrap.conf: Add gendocs and gnu-web-doc-update modules 276 277 * configure.ac(AM_INIT_AUTOMAKE): Create lzip archives when making a distribution 278 279 Prepare for making releases 280 The maintainer makefile provides targets for making a release. They need 281 these things: 282 * cfg.mk: Set the hash of the NEWS file as it was at the beginning of 283 this release 284 * .prev-version: Create the .prev-version file 285 286 Prepare NEWS file for new release 287 * NEWS: Fix the copyright notice 288 * NEWS: Add header for new release 289 2902021-01-07 Darshit Shah <darnir@gnu.org> 291 292 Use PRId64 to correctly identify the format specifier 293 * src/utils.c: Use PRId64 to correctly identify the format specifier for 294 wgint values. This fixes a warning on 32-bit systems where wgint is a 295 long long int instead of the long int that the format specifier 296 indicated. 297 298 Reported-by: Jeffrey Walton 299 3002021-01-03 Darshit Shah <darnir@gnu.org> 301 302 * src/retr.c(rotate_backups): Simplify logic for handling filename rotation 303 3042021-01-03 Matt Whitlock <gentoo@mattwhitlock.name> 305 306 * configure.ac: Don't use Bashisms 307 3082021-01-01 Darshit Shah <darnir@gnu.org> 309 310 Run make update-copyright 311 312 * gnulib: Pull forward 313 3142020-12-31 Darshit Shah <darnir@gnu.org> 315 316 * NEWS: Finalize release 317 318 * gnulib: Update for release 319 3202020-12-30 Darshit Shah <darnir@gnu.org> 321 322 * src/main.c: Disable use-askpass on VMS 323 3242020-12-30 Steven M. Schweda <sms@antinode.info> 325 Darshit Shah <darnir@gnu.org> 326 327 Fixes for running on VMS 328 time_t on VMS is typically unsigned. (Lazy man's solution to 2038?) 329 I added "(time_t)" type casts to negative values ("-1"), and changed 330 tests to avoid complaints. 331 332 * src/hsts.c (hsts_add_entry): Explicitly cast potentially negative time 333 values to time_t to handle VMS quirks. 334 (hsts_store_entry): Same 335 (get_hsts_store_filename): Use new ajoin_dir_file function to join 336 filenames 337 (test_hsts_read_database): Same 338 * src/init.c (struct options): use-askpass is not implemented on VMS 339 (ajoin_dir_file): New Function to join filenames in a platform 340 agnostic manner 341 (wgetrc_user_file_name): Use ajoin_dir_file to join paths. Doing this 342 correctly, eliminates the need for a special case on VMS 343 * src/init.h: Add prototype for ajoin_dir_file 344 * src/log.c (check_redirect_output): Ignore on VMS 345 * src/main.c(option_data): Disable use-askpass on VMS 346 (print_help): Same 347 (get_hsts_database): Use ajoin_dir_file to join paths 348 (print_version): Add VMS specific information to Version output 349 * src/utils.c (fork_to_background): Fix signature on VMS 350 3512020-12-29 Tim Rühsen <tim.ruehsen@gmx.de> 352 353 Remove SIZEOF_WGINT as wgint is always int64_t 354 * src/http.c (test_parse_range_header): Remove use of SIZEOF_WGINT. 355 * src/utils.c (human_readable): Remove superfluous HR_NUMTYPE, 356 * (number_to_string): Remove use of SIZEOF_WGINT. 357 * src/utils.h: Remove use of SIZEOF_WGINT and HR_NUMTYPE. 358 * src/wget.h: Remove #define SIZEOF_WGINT. 359 360 src/wget.h: Cleanup code around wgint 361 3622020-12-29 Darshit Shah <darnir@gnu.org> 363 364 Remove portability handling for str[n]casecmp 365 * src/mswindows.c: Gnulib ensures we always have str{n}casecmp 366 * configure.ac: Don't need to define HAVE_STR[N]CASECMP anymore 367 3682020-12-29 Darshit Shah <darnir@gnu.org> 369 370 Remove portability handling code for wgint 371 Gnulib's stdint.h module promises a C99 compliant stdint.h file on all 372 platforms. Thus allowing us to directly use the fixed wodth integer 373 type, int64_t wihout needing to resort to all the checks being 374 performed. 375 376 * src/wget.h: Assume that int64_t is always available and use it 377 * src/mswindows.h: Remove portability code since gnulib handles it 378 * configure.ac: Remove sizeof checks for integer types that are no 379 longer used 380 3812020-12-29 Tim Rühsen <tim.ruehsen@gmx.de> 382 383 * .lgtm.yml: Call autoreconf to support Debian oldstable 384 3852020-12-28 Tim Rühsen <tim.ruehsen@gmx.de> 386 387 Fix --accept-regex/i--reject-regex for FTP 388 * src/ftp.c (ftp_retrieve_glob): Call accept_url() with the full URL 389 390 Reported-by: Frans de Boer <frans@fransdb.nl> 391 3922020-12-28 Darshit Shah <darnir@gnu.org> 393 394 * tests/valgrind-suppressions: Make suppression for libidn false positive more generic 395 396 * Makefile.am: Clean up gnulib_po/stamp-po 397 398 tests/valgrind-suppressions: Add suppressions for false positives 399 400 testenv/Test--https.py: Fix missing import 401 402 .gitlab-ci.yml: Everyone needs an autoreconf now 403 404 .gitlab-ci.yml: Even Debian Stable requires running autoreconf 405 406 Fix usage of Magic number of tests 407 testenv/test/base_test.py: Add new variable SKIP_TEST 408 testenv/Test--https-crl.py: Use SKIP_TEST instead of magic number 409 testenv/Test--https.py: Same 410 testenv/Test-hsts.py: Same 411 testenv/Test-no_proxy-env.py: Same 412 testenv/Test-pinnedpubkey-der-https.py: Same 413 testenv/Test-pinnedpubkey-der-no-check-https.py: Same 414 testenv/Test-pinnedpubkey-hash-https.py: Same 415 testenv/Test-pinnedpubkey-hash-no-check-fail-https.py: Same 416 testenv/Test-pinnedpubkey-pem-fail-https.py: Same 417 testenv/Test-pinnedpubkey-pem-https.py: Same 418 419 .gitlab-ci.yml: All modern builds need autoreconf 420 421 .po/POTFILES.in: Remove files containing no translateable strings 422 423 Fix issues reported by codespell 424 425 .gitlab-ci.yml: Need --force option to autopoint 426 427 * .gitlab-ci.yml: Don't need autoreconf everywhere. Only on Arch 428 This (partially) reverts commit 0309d13794303d82529addecfc31f0e1a8c5b97b. 429 430 configure.ac: Revert to requiring gettext 0.19 431 432 .gitlab-ci.yml: Call autoreconf to refresh gettext files 433 434 * NEWS: Update NEWS items 435 436 configure.ac: Raise minimum gettext version to 0.20 437 438 Run autoupdate on configure.ac 439 * configure.ac, m4/{wget, wget_manywarnings}.m4: Run autoupdate 440 441 .gitignore: Ignore gnulib_po directory 442 443 configure.ac: Replace obsolete macro AC_AIX with AC_USE_SYSTEM_EXTENSIONS 444 4452020-12-27 Darshit Shah <darnir@gnu.org> 446 447 bootstrap.conf: Remove unneeded text block 448 449 m4/getpagesize.m4: Don't track autogenerated file 450 4512020-12-27 Darshit Shah <darnir@gnu.org> 452 453 Remove unneeded files from gnulib 454 m4/exitfail.m4: Remove unneeded file 455 m4/wchar.m4: Same 456 m4/wctype.m4: Same 457 458 The latest versions of these files will be copied by gnulib-tool upon 459 its invokation. No need to track them around here 460 4612020-12-27 Darshit Shah <darnir@gnu.org> 462 463 Use a separate domain for translating gnulib 464 Use the --po-domain option to gnulib-tool to create a new textdomain 465 that can be used by gnulib files for translations. This way, we don't 466 have to maintain the list of all files that require translations in 467 gnulib. 468 469 * bootstrap.conf: Use --po-domain and --po-base options to create a 470 separate base for gnulib translations 471 * src/main.c(i18n_initialize): Call bindtextdomain on wget-gnulib to 472 include those translations as well 473 * Makefile.am: Add new directory gnulib_po to SUBDIRS 474 * configure.ac: Generate gnulib_po/Makefile.in 475 * lib/Makefile.am: Set AM_CPPFLAGS to empty since gnulib.mk expects it 476 to be set 477 4782020-12-27 Darshit Shah <darnir@gnu.org> 479 480 po/POTFILES.in: Update the list of files that need translation 481 482 m4/getpagesize.m4: Update from gnulib 483 484 configure.ac: Increase minimum required version to 2.64 485 486 gnulib: Pull forward 487 4882020-12-22 Darshit Shah <git@darnir.net> 489 490 main.c (main): Warn when trying to use password without username 491 4922020-12-13 Tim Rühsen <tim.ruehsen@gmx.de> 493 494 * src/http.c (http_cleanup): Reset wget_cookie_jar after freeing 495 This silences the wget_options_fuzzer which triggered #28610 on 496 OSS-Fuzz. This issue can not happen with the Wget utility. 497 The fuzzer runs main(),...,cleanup() in a loop which the Wget utility 498 never does. 499 5002020-11-08 Tim Rühsen <tim.ruehsen@gmx.de> 501 502 * src/main.c: Add description to --help output of wait options 503 5042020-07-11 Tomas Hozza <thozza@redhat.com> 505 506 testenv: Add test for handling of no_proxy environment variable 507 * testenv/Test-no_proxy-env.py: Added new test for no_proxy env 508 * testenv/Makefile.am: Added the new test to Makefile 509 510 Added new test with 5 cases, which are testing various combinations 511 of no_proxy environment variable definition and requested URLs. 512 The test is skipped if the system does not support resolution of 513 localhost subdomains to lcalhost address. 514 5152020-07-11 Tomas Hozza <thozza@redhat.com> 516 517 testenv: Allow definition of environment variables for wget execuion 518 * testenv/README: Added description for new EnvironmentVariable hook 519 * testenv/conf/environment_variable.py: Added implementation of 520 EnvironmentVariable hook 521 * testenv/test/base_test.py: Modified exec_wget() to enable use of 522 EnvironmentVariable hook 523 524 Added new test hook called EnvironmentVariables, for defining environment 525 variables when wget is executed in tests. This is handy for testing 526 environment variables, which are accepted by wget. 527 5282020-07-11 Tomas Hozza <thozza@redhat.com> 529 530 testenv: HTTPTest.begin() should return exit value 531 * testenv/test/http_test.py: Ensure that HTTPTest.begin() always returns 532 a value 533 534 Previously the HTTPTest.begin() method always returned None. However this 535 is not consistent with the begin() implementation of the parent class 536 (BaseTest). This change ensures that HTTPTest.begin() returns a value. 537 5382020-07-07 Darshit Shah <git@darnir.net> 539 540 Minor documentation clarification 541 * src/wget.texi: Clarify behaviour of --quota 542 Thanks to TheWild on IRC for pointing it out 543 5442020-06-29 Tim Rühsen <tim.ruehsen@gmx.de> 545 546 * src/ftp.c (ftp_loop_internal): Check for VERIFCERTERR to avoid SIGABRT 547 There is a bug that causes wget to exit with SIGABRT when trying to 548 receive files through FTP from a server with a certificate that failed 549 the verification. 550 551 The bug is filed in RedHat Bugzilla for Fedora: 552 https://bugzilla.redhat.com/show_bug.cgi?id=1475861 553 554 Reported-by: Artem Egorenkov <aegorenk@redhat.com> 555 5562020-06-21 Tim Rühsen <tim.ruehsen@gmx.de> 557 558 * src/host.c (lookup_host): Fix uninitialized pointer access in c-ares code 559 Reported-by: Swapnil More 560 5612020-05-22 Tim Rühsen <tim.ruehsen@gmx.de> 562 563 * src/gnutls.c (ssl_init): Small cleanup fixing output of ncerts 564 5652020-05-01 Tim Rühsen <tim.ruehsen@gmx.de> 566 567 * src/convert.c (downloaded_files_free): Only compile if DEBUG_MALLOC or TESTING is defined 568 569 * src/netrc.c (free_netrc): Only compile if DEBUG_MALLOC or TESTING is defined 570 5712020-05-01 Вячеслав Петрищев <vyachemail@gmail.com> 572 573 Fix SSL/TLS timeout issues. 574 * connect.c (fd_read, fd_peek): Let implementation take care about timeout. 575 * gnutls.c (_do_handshake, _do_reauth, wgnutls_read_timeout): Fix support for interactive timeout. 576 * gnutls.c (wgnutls_peek): Let wgnutls_read_timeout() take care about timeout. 577 * openssl.c (openssl_read_peek): Fix 0 (-1) timeout. 578 * retr.c (fd_read_body): Avoid wrong 'interactive timeout'. 579 580 Set interactive to true for bar progress. 581 * src/progress.c (bar_set_params): Set interactive to true. 582 * src/retr.c (fd_read_body): Avoid call fd_read with 0 timeout. 583 5842020-05-01 Вячеслав Петрищев <vyachemail@gmail.com> 585 586 New implementation for openssl_read, openssl_peek ssl_connect_with_timeout (openssl) 587 Add new implementation for openssl_read, openssl_peek 588 ssl_connect_with_timeout (openssl). Thats allow continue 589 read after ETIMEDOUT (if timeout < opt.read_timeout) 590 without 'Retrying', and do not create thread (under MSWin) 591 for every read. Old implementation, (with fix for 'timeout') 592 avaible for build with: -DOPENSSL_RUN_WITHTIMEOUT 593 594 Add timeout for transport_implementation {reader,peeker}; 595 596 * src/init.c (cmd_time): Add check for negative value. 597 * src/connect.h (transport_implementation {reader,peeker}): Change function prototype. 598 * src/connect.c (select_fd_nb): New function, aviod conversion to blocked under MSWin. 599 * src/gnutls.c 600 (gnutls_read): Fix: using timeout, seting ETIMEDOUT, conversion to blocked. 601 (gnutls_peek): Likewise. 602 (wgnutls_errstr): Add errmsg for ETIMEDOUT. 603 (_do_handshake) (_do_reauth): Fix conversion to blocked. 604 * src/openssl.c: 605 Add new implementation for openssl_read, openssl_peek, ssl_connect_with_timeout. 606 (init_prng): when option --random-file given warn user if RAND_load_file() fail. 607 6082020-04-18 Tim Rühsen <tim.ruehsen@gmx.de> 609 610 Add missing linefeed in output strings 611 * src/ftp.c (getftp): Add linefeed to error message. 612 * src/res.c (res_parse_from_file): Likewise. 613 * src/utils.c (fopen_stat): Likewise. 614 (open_stat): Likewise. 615 6162020-03-28 Tim Rühsen <tim.ruehsen@gmx.de> 617 618 * src/metalink.c: Include filename.h instead of dosname.h 619 620 * gnulib: Update 621 6222020-03-24 Tomas Hozza <thozza@redhat.com> 623 624 Don't print message about loading crl or ca-cert files with --no-verbose 625 * src/gnutls.c (ssl_init): Use LOG_VERBOSE verbosity for informative 626 message related to loading CRL or CA certificate file. 627 628 Before change [1], wget didn't produce any output related to loading CA 629 certificates when --no-verbose option has been used. When --no-verbose 630 option is used, only error messages and basic information should get 631 printed. Information about loading CRL or CA certificate is probably not 632 a basic information. Any error when loading the CRL or CA certificate 633 will be still printed with --no-verbose. 634 635 Some users rely on wget not printing such information and they consider 636 it a regression. 637 638 Reported as https://bugzilla.redhat.com/show_bug.cgi?id=1807267 639 640 [1] http://git.savannah.gnu.org/cgit/wget.git/commit/?id=e4a8fe84e2b813b65d91aec29298eecabe4850a5 641 6422020-03-06 Tim Rühsen <tim.ruehsen@gmx.de> 643 644 Add NTLM fuzzer 645 * configure.ac: Create WITH_NTLM conditional. 646 * fuzz/Makefile.am: Add wget_ntlm_fuzzer. 647 * fuzz/wget_ntlm_fuzzer.c: New file. 648 * fuzz/wget_ntlm_fuzzer.in/*: Initial fuzz corpora. 649 650 * src/http.c (check_auth): Fix memory leak 651 652 * src/http-ntlm.c (mkhash): Fix read buffer overflow 653 6542020-03-05 Tim Rühsen <tim.ruehsen@gmx.de> 655 656 * README.checkout: Fix gperf typo and tab indentation 657 658 * .gitlab-ci.yml: Generate online docs and coverage reports for Gitlab 659 6602020-03-05 Tim Rühsen <tim.ruehsen@gmx.de> 661 662 Add code coverage reporting 663 * configure.ac: Add AX_CODE_COVERAGE. 664 * Makefile.am: Add rules 'check-coverage' and 'fuzz-coverage'. 665 * fuzz/Makefile.am: Amend LDADD, AM_CFLAGS and AM_CPPFLAGS. 666 * src/Makefile.am: Amend LDADD, AM_CFLAGS and AM_CPPFLAGS. 667 668 This add a new configure option, --enable-code-coverage. 669 670 With this option enabled, generate test code coverage with 671 make code-coverage 672 and generate coverage for the fuzz test corpora with 673 make fuzz-coverage 674 6752020-03-05 Tim Rühsen <tim.ruehsen@gmx.de> 676 677 * src/http.c: Don't cast 3rd param to request_set_header. 678 679 * README: Fix typo 'can retrieves' -> 'can retrieve' 680 6812020-03-03 Darshit Shah <darnir@gnu.org> 682 683 * doc/wget.texi: Add maintainers and mention wget2 684 685 doc/wget.texi: Clarify usage of --level 686 6872020-03-03 Tim Rühsen <tim.ruehsen@gmx.de> 688 689 * src/http.c (gethttp): Remove unneeded free of hstat.(message|error) 690 691 * src/http.c (gethttp): Fix memleaks 692 Reported-by: Вячеслав Петрищев 693 694 * src/http.c (read_response_body): Fix memleak 695 Reported-by: Вячеслав Петрищев 696 6972020-02-29 Tim Rühsen <tim.ruehsen@gmx.de> 698 699 * contrib/spell-checker: Add lightening to exceptions 700 701 Always build ssl_cleanup 702 * src/gnutls.c (ssl_cleanup): Don't build conditionally. 703 * src/openssl.c (ssl_cleanup): Likewise 704 7052020-02-28 Tim Rühsen <tim.ruehsen@gmx.de> 706 707 * doc/wget.texi: Fix spelling error 708 Reported-by: Jim Cathey 709 7102020-02-27 Tim Rühsen <tim.ruehsen@gmx.de> 711 712 * src/convert.c (convert_cleanup): Free downloaded_css_set 713 714 * src/openssl.c (ssl_cleanup): Only compile for DEBUG_MALLOC or TESTING 715 716 * src/gnutls.c (ssl_cleanup): Only compile for DEBUG_MALLOC or TESTING 717 718 * src/netrc.c (netrc_cleanup): Only compile for DEBUG_MALLOC or TESTING 719 720 * src/log.c (log_cleanup): Only compile for DEBUG_MALLOC or TESTING 721 722 * src/host.c (host_cleanup): Only compile for DEBUG_MALLOC or TESTING 723 724 * src/spider.c (spider_cleanup): Only compile for DEBUG_MALLOC or TESTING 725 726 * src/res.c (res_cleanup): Only compile for DEBUG_MALLOC or TESTING 727 728 * src/convert.c (convert_cleanup): Only compile for DEBUG_MALLOC or TESTING 729 730 * src/html-url.c (cleanup_html_url): Only compile for DEBUG_MALLOC or TESTING 731 732 * src/http.c (http_cleanup): Free hashtable basic_authed_hosts 733 734 * src/cookies.c (cookie_jar_delete): Set psl to NULL after calling psl_free 735 736 * src/init.c (cleanup): Call ssl_cleanup and connect_cleanup 737 738 Add ssl_cleanup to free memory 739 * src/ssl.h: Add declaration for ssl_cleanup. 740 * src/openssl.c: Add ssl_cleanup stub. 741 * src/gnutls.c: Implement ssl_cleanup. 742 743 * src/http.c (http_cleanup): Call invalidate_persistent to free resources 744 745 * src/cookies.c: Free PSL in cookie_jar_delete 746 747 * src/connect.c (connect_cleanup): Only needed with DEBUG_MALLOC or TESTING 748 749 * src/http.c (http_loop): Avoid unneeded strdup 750 7512020-02-27 Вячеслав Петрищев <vyachemail@gmail.com> 752 753 * src/http.c (gethttp): Fix memleak 754 7552020-02-23 Tim Rühsen <tim.ruehsen@gmx.de> 756 757 * src/http.c: Do not reveal OS type to server via User-Agent: header 758 Following the "privacy by design" principle, which is now European law by 759 virtue of the GDPR since 2018, the client should not transmit the operating 760 system. 761 762 Fixes #57884 763 Reported-by: Bruno Haible 764 7652020-02-22 Tim Rühsen <tim.ruehsen@gmx.de> 766 767 * tests/unit-tests.c: Fix 'multiple definition of...' with gcc 10 768 769 Split unique_name into two functions with just one arg 770 * src/http.c (check_file_output): Call unique_name_passthrough. 771 * src/metalink.c (badhash_suffix): Call unique_name. 772 * src/url.c (url_file_name): Call unique_name_passthrough. 773 * src/utils.c: Split unique_name, amend description. 774 * src/utils.h: Amend unique_name, add unique_name_passthrough. 775 776 * .gitlab-ci.yml: Set tag 'linux' explicitly for each runner 777 7782020-02-22 Tim Rühsen <tim.ruehsen@gmx.de> 779 780 * src/http.c (print_response_line): Fixed comparison 781 Introduced in 68868bbb3737d26c197f39edafc5d526334426b0 (13.2.2020). 782 783 Reported-by: Gisle Vanem 784 7852020-02-21 Tim Rühsen <tim.ruehsen@gmx.de> 786 787 Add valgrind suppressions 788 * testenv/valgrind-suppression-ssl: Add gnutls suppressions 789 * tests/valgrind-suppressions: Likewise 790 * tests/valgrind-suppressions-ssl: Likewise 791 792 Add --gen-suppressions=all to valgrind options 793 * testenv/test/base_test.py: Add --gen-suppressions=all to valgrind options 794 * tests/Test-proxied-https-auth.px: Likewise 795 * tests/WgetTests.pm: Likewise 796 797 * cfg.mk: Exclude sc_prohibit_gnu_make_extensions 798 799 * src/retr.c (fd_read_body): Check timer before accessing (Coverity #600494) 800 801 * src/warc.c (warc_write_start_record): Check return values of fseek, fflush (Coverity #1419650) 802 803 * src/ftp-ls.c (eat_carets): Fix caret decoding issue (Coverity #1419653) 804 805 * src/warc.c (warc_write_block_from_file): Check for write error (Coverity #1419654) 806 807 * src/warc.c (warc_write_end_record): Check return value of fseeko (Coverity #1419657) 808 809 Add valgrind suppressions for HTTPS tests (GnuTLS false positive) 810 * testenv/valgrind-suppression-ssl: Add new rule 811 * tests/valgrind-suppressions: Likewise 812 * tests/valgrind-suppressions-ssl: Likewise 813 8142020-02-20 Tim Rühsen <tim.ruehsen@gmx.de> 815 816 * src/init.c (setoptval): Add missing comma (fix compilation) 817 818 * .gitlab-ci.yml: Add spell-checking to VPATH/Debian 819 8202020-02-20 Tim Rühsen <tim.ruehsen@gmx.de> 821 822 Fix typos found by codespell 823 */*: Fix typos 824 825 Thanks to https://fossies.org/features.html#codespell 826 827 Reported-by: Jens Schleusener 828 8292020-02-20 Tim Rühsen <tim.ruehsen@gmx.de> 830 831 * contrib/spell-checker: Add new file 832 833 * src/init.c (setoptval): Silence Coverity (Coverity #1419648) 834 835 * src/main.c (init_switches): Remove unneeded code (Coverity #1419658) 836 837 * src/ftp-ls.c (ftp_parse_vms_ls): Fix use of uninitialized stack mem (Coverity #609373) 838 8392020-02-19 Tim Rühsen <tim.ruehsen@gmx.de> 840 841 * src/retr.c (retrieve_url): Fix memory leak (Coverity #1316408) 842 843 * src/http.c (set_file_timestamp): Fix stack memory leak (Coverity #1419655) 844 845 * src/main.c (main): Initialize variable (Coverity #1419660) 846 847 * .gitlab-ci.yml: Fix linebreak 848 849 * src/http.c (metalink_from_http): Fix memleak (Coverity #1419661, #1419656) 850 851 * .gitlab-ci.yml: Add 'coverity' runner 852 853 * contrib/mk_authors: Create list of authors and translators since last version 854 855 * src/progress.c (eta_to_human_short): Silence -Wformat-overflow 856 8572020-02-14 Tim Rühsen <tim.ruehsen@gmx.de> 858 859 * .gitlab-ci.yml: Don't copy gnulib manually 860 861 * NEWS: Update 862 863 Remove alloca includes and macros 864 * bootstrap.conf: Remove gnulib module 'alloca'. 865 * src/sysdep.h: Remove include of alloca.h. 866 * src/wget.h: Likewise, 867 remove macros BOUNDED_TO_ALLOCA and STRDUP_ALLOCA. 868 869 * src/utils.h: Remove alloca_array 870 871 * src/convert.c (convert_links_in_hashtable): Remove use of alloca 872 873 * src/convert.c (local_quote_string): Remove use of alloca 874 875 * src/convert.c (replace_attr_refresh_hack): Remove use of alloca 876 877 * gnulib: Update 878 879 * bootstrap.conf: Use fnmatch-gnu instead of fnmatch 880 881 * src/convert.c (write_backup_file): Remove use of alloca 882 883 * src/utils.c (fnmatch_nocase): Remove FNM_CASEFOLD emulation, gnulib takes care of it 884 885 * src/cookies.c (cookie_header): Remove use of alloca 886 887 * src/cookies.c (cookie_header): Remove use of alloca 888 889 * src/cookies.c (cookie_handle_set_cookie): Remove use of alloca 890 891 * src/cookies.c (parse_set_cookie): Explicitly convert from double to time_t 892 893 * src/cookies.c (parse_set_cookie): Remove use of alloca 894 895 * src/warc.c (warc_uuid_str): Add second param to windows_uuid_str 896 897 * src/cookies.c (parse_set_cookie): Remove use of alloca 898 899 * src/main.c (main): Code clean, reduce allocations 900 901 * src/main.c: Modify macro IF_SSL to work with latest struct changes 902 903 * configure.ac: List 'no' for --with-ssl in help output 904 9052020-02-13 Tim Rühsen <tim.ruehsen@gmx.de> 906 907 * src/ftp.c (ftp_retrieve_dirs): Remove use of alloca 908 909 * src/ftp.c (ftp_retrieve_list): Remove use of alloca 910 911 * src/ftp.c (ftp_loop_internal): Remove use of alloca 912 913 * src/ftp.c (getftp): Remove use of alloca 914 915 * src/http.c: Include xstrndup.h unconditionally 916 917 * src/ftp-basic.c (ftp_request): Remove use of alloca 918 919 * src/html-parse.c (name_allowed): Remove use of alloca 920 921 * src/netrc.c (search_netrc): Remove use of alloca 922 923 * src/init.c (parse_line): Remove use of alloca 924 925 Remove use of alloca in setoptval 926 * src/init.c (setoptval): Remove use of alloca 927 * src/init.h: Add define MAX_LONGOPTION 928 * src/main.c (struct cmdline_option): Make 'long_name' a char array 929 930 * src/http.c (check_auth): Remove use of alloca 931 932 * src/http.c (print_response_line): Remove use of alloca 933 934 * src/http.c (request_set_user_header): Remove use of alloca 935 936 * src/http.c (metalink_from_http): Remove use of alloca 937 938 * src/http.c (basic_authentication_encode): Remove use of alloca 939 940 * src/http.c (gethttp): Remove use of alloca 941 942 * src/http.c (gethttp): Remove use of alloca 943 944 * src/http.c (set_file_timestamp): Remove use of alloca 945 946 * src/main.c (main): Remove use of alloca 947 948 * src/url.c (append_uri_pathel): Replace alloca by fixed array / sprintf 949 950 * src/url.c (append_uri_pathel): Replace alloca by fixed array / xmalloc 951 952 * src/utils.c (make_directory): Replace alloca by fixed array / xmalloc 953 954 * src/utils.c (unique_name_1): Replace alloca by xmalloc 955 956 Add buffer size param to warc_uuid_str 957 * src/http.c (gethttp): Add buffer size param to warc_uuid_str. 958 * src/warc.c: Likewise 959 * src/warc.h: Likewise 960 9612020-02-12 Tim Rühsen <tim.ruehsen@gmx.de> 962 963 * src/http-ntlm.c (ntlm_output): Remove alloca 964 965 * src/http-ntlm.c (mkhash): Replace alloca by fixed length array 966 967 * src/http-ntlm.c (ntlm_input): Replace alloca by fixed length array 968 969 * src/gnutls.c (ssl_init): Replace alloca by fixed length arrays 970 971 * src/retr.c (fd_read_body): Fix signedness warnings 972 973 * src/retr.c (rotate_backups): Replace alloca by fixed length arrays 974 975 * src/wget.h: Add inline to _unhex 976 977 * src/metalink.h: Include dirname.h, remove declaration of last_component 978 979 * configure.ac: Add -Wno-undef -Wno-float-equal to gcc's WARN_CFLAGS 980 981 * src/convert.c (convert_links): Fix previous commit 982 983 * src/convert.c (convert_links): Add \n (Fixes #57795) 984 9852020-01-25 Ander Juaristi <ajuaristi@gmx.es> 986 987 Do not overwrite restval if len is smaller 988 * src/http.c (http_loop): overwrite 'restval' only if 'len' is 989 greater than it. Else substract 'len' to 'restval'. 990 991 When retrying a request, only send a 'Range' header if the previous 992 request returned data. 993 9942020-01-24 Вячеслав Петрищев <vyachemail@gmail.com> 995 996 Fix and cleanup progress bar code 997 *src/progress.c 998 (struct dot_progress) accumulated, rows: Type changed to wgint 999 (print_row_stats): Fix missing unit name 'T' 1000 (dot_update): Add ability to reduce dot_draw runtime 1001 (bar_update): Avoid integer overflow 1002 1003 * src/progress.c: Fix MINIMUM_SCREEN_WIDTH 1004 1005 * src/progress.c (prepare_filename): Replace zero-width mbc (\xe2\x80\x8b, ...) 1006 1007 Reenabling filename scrolling code in progress bar 1008 * src/progress.c: Reenabling filename scrolling code 1009 (bar_create): Reenabling file name scrolling. 1010 (bar_create): Memory allocation, filename preparation. 1011 (bar_finish): Filename memory deallocation. 1012 (prepare_filename): New function, replaces unprintable chars. 1013 1014 Fix multibyte handling in progress bar 1015 * src/progress.c 1016 (count_cols): Fix return value if invalid multibyte sequence was encountered 1017 (bar_draw): Fix xrealoc size 1018 10192020-01-10 Tim Rühsen <tim.ruehsen@gmx.de> 1020 1021 * src/progress.c (print_row_stats): Fix two integer overflows 1022 1023 * .gitlab-ci.yml: Fix path for llvm-symbolizer 1024 1025 * fuzz/wget_progress_fuzzer.in/*: Add fuzzer corpora 1026 1027 * src/retr.c (calc_rate): Remove unwanted assertions 1028 1029 Fix buffer overflows in progress 'bar' code 1030 * src/progress.c (progress_interactive_p): Sanitize input. 1031 (progress_update): Likewise. 1032 (bar_create): Use larger BUF_LEN. 1033 (bar_create): Remove superfluous memset. 1034 (bar_create): Fix filename layout. 1035 (bar_create): Remove filename scrolling code, it caused many buffer 1036 overflows later in bar_create. 1037 (bar_create): Support TB/s download speed. 1038 1039 Add new fuzzer for the progress bar code 1040 * Makefile.am: Add wget_progress_fuzzer. 1041 * wget_progress_fuzzer.c: New file. 1042 10432020-01-10 Darshit Shah <darnir@gnu.org> 1044 1045 Update copyright year to 2020 1046 1047 * cfg.mk: Set update-copyright to use intervals 1048 10492019-12-27 Tim Rühsen <tim.ruehsen@gmx.de> 1050 1051 Fix segfault in progress bar in certain locales 1052 * src/progress.c (create_image): Protect memset from negative count 1053 1054 Reported-by: JunDong Xie 1055 10562019-12-27 Tim Rühsen <tim.ruehsen@gmx.de> (tiny change) 1057 1058 * src/progress.c (count_cols): Fix return value if USE_NLS_PROGRESS_BAR is undefined 1059 Taking patch from #54126 1060 Reported-by: Vyacheslav 1061 10622019-12-27 Tim Rühsen <tim.ruehsen@gmx.de> 1063 1064 * src/progress.c: Allow const names for set_progress_implementation. 1065 1066 * src/progress.c (dot_draw): Avoid integer overflow 1067 1068 * fuzz/README.md: Add --enable-assert to fuzzing build 1069 1070 * src/progress.c (print_row_stats): Fix UB if eta < 0 1071 1072 * src/progress.c (dot_update, dot_finish): Sanitize input 1073 1074 * src/retr.c (calc_rate): Fix division by 0 1075 1076 * src/retr.c (calc_rate): Add TB/s 1077 1078 * src/progress.c (create_image): Sanitize input param 'dl_total_time' 1079 1080 * fuzz/README.md: Update clang instructions 1081 10822019-12-26 Lauri Nurmi <lanurmi@iki.fi> (tiny change) 1083 1084 Mark note to translators properly and elaborate its contents. 1085 * src/progress.c (create_image): Likewise 1086 1087 The note was not even picked by xgettext to be included in the .pot, 1088 so barely any translators even saw the note. 1089 Also, this is one of the most cryptic messages to translate in wget, 1090 unless the translator happens to guess where the string is used, 1091 or looks at the source. 1092 10932019-12-26 Lauri Nurmi <lanurmi@iki.fi> (tiny change) 1094 1095 * src/main.c (print_help): Don't cut translatable string mid-sentence. 1096 Complicates translating. 1097 10982019-11-24 Tim Rühsen <tim.ruehsen@gmx.de> 1099 1100 * fuzz/wget_read_hunk_fuzzer.c: Use cast to fix C++ error 1101 11022019-11-21 Tim Rühsen <tim.ruehsen@gmx.de> 1103 1104 * src/Makefile.am: Add build_info.c to EXTRA_DIST 1105 1106 * .gitlab-ci.yml: Skip tests on tarball build due to missing perl 1107 1108 * tests/WgetTests.pm: Support to set the wget executable for testing 1109 1110 * .gitlab-ci.yml: Add --with-ssl=no 1111 1112 * .gitlab-ci.yml: Allow failure for Valgrind and Scan-Build CI runner 1113 1114 * src/ftp.c (delelement): Make sure free'd pointer is set to NULL 1115 1116 * configure.ac: Remove -fno-sanitize-recover=integer 1117 With this option on, several overflows from gnulib code (all 1118 harmless and on purpose) would break our tests. 1119 11202019-11-21 Tim Rühsen <tim.ruehsen@gmx.de> 1121 1122 Replace XDIGIT_TO_NUM by _unhex() with proper unsigned handling 1123 * src/wget.h: Replace XDIGIT_TO_NUM by _unhex() 1124 * src/html-parse.c (decode_entity): Use _unhex() 1125 * src/host.c (is_valid_ipv6_address): Use _unhex() 1126 * src/url.c (url_unescape_1): Use unsigned char to avoid UB 1127 * src/res.c (free_specs): Likewise 1128 1129 Code taken from Wget2. XDIGIT_TO_NUM had a signed issue, detected by 1130 scan-build static anylyzer. 1131 11322019-11-21 Tim Rühsen <tim.ruehsen@gmx.de> 1133 1134 * src/connect.c (select_fd): Check for negative fd 1135 1136 * .gitlab-ci.yml: Enable Windows executables for MinGW runner 1137 1138 * .gitlab-ci.yml: Add CI runners from Wget2 1139 11402019-11-21 Tomas Hozza <thozza@redhat.com> 1141 1142 testenv: enable running tests on different wget binary 1143 * testenv/README: Document $WGET_PATH 1144 * testenv/test/base_test.py: Use $WGET_PATH instead ../src/wget if set 1145 1146 Previously tests in testenv/ directory were run only on wget binary 1147 which was built from sources in src/ directory. However as a 1148 wget maintainer in a Linux distribution, I would like to be able to run 1149 upstream tests on the wget binary distributed with the distribution. 1150 1151 This change enables one to define WGET_PATH environment variable 1152 to a path to wget binary which should be used by tests. 1153 11542019-11-21 Tim Rühsen <tim.ruehsen@gmx.de> 1155 1156 * AUTHORS: Add Darshit Shah and Tim Rühsen as maintainers 1157 11582019-11-19 Tim Rühsen <tim.ruehsen@gmx.de> 1159 1160 * src/cookie.c: Fix cookie file header to be recognized by 'file' 1161 1162 * .mailmap: Allow mapping contributors for statistics 1163 11642019-10-03 Darshit Shah <darnir@gnu.org> 1165 1166 * configure.ac: Ignore -Wchkp which is deprecated 1167 1168 Update gnulib 1169 * gnulib: Pull submodule 1170 * bootstrap: Update file from gnulib 1171 11722019-05-30 Tim Rühsen <tim.ruehsen@gmx.de> 1173 1174 Revert "Add . to perl path for all perl tests" 1175 This reverts commit 79be99aff4717a75ec7531d8b3a4ec96341754ca. 1176 1177 /usr/bin/env 8.28 and below doesn't know -S. 1178 11792019-05-30 Darshit Shah <darnir@gnu.org> 1180 1181 Revert " Hi, Thank you again Darshit for your response. The RejectHeaderField rule rejects ANY header" 1182 I accidentally commited this patch. 1183 1184 This reverts commit 4ce2f93600827f47f7fea5e7eeb224232cef3c3d. 1185 11862019-05-30 Darshit Shah <darnir@gnu.org> 1187 1188 * .gitignore: Update gitignore file 1189 11902019-05-30 sulfastor <torresmoisesa@gmail.com> 1191 1192 Hi, Thank you again Darshit for your response. The RejectHeaderField rule rejects ANY header of the header field while RejectHeader rejects ONLY the specified full header. Since we wanted to be sure a header field is not sent to the server we wrote this rule. 1193 * doc/wget.texi: Added --disable-header documentation. 1194 * fuzz/wget_options_fuzzer.dict: Update with --disable-header inputs. 1195 * src/http.c (disabled_header): Checks for disabled headers 1196 (request_set_header): Doesn't let header to be set if disabled 1197 (gethttp): frees disabled header to let overriding 1198 * src/init.c (cmd_dis_header), (check_user_disabled_header) added new option disabled_headers. 1199 * src/main.c: added new option --disable-header, added help description 1200 * src/options.h: added new option --disable-header 1201 * src/utils.h (vec_remove_header) 1202 * src/utils.c (vec_remove_header) removes all header instances from vector 1203 * testenv/Makefile.am: Added new test files 1204 * testenv/server/http/http_server.py: Added new rule RejectHeaderField 1205 * testenv/conf/reject_header_field.py: Added new rule RejectHeaderField 1206 * testenv/README: Added help description for new rule 1207 * testenv/Test-disable-default-headers.py: Test without using --header 1208 * testenv/Test-disable-headers-after.py: Test using --header before --disable-header 1209 * testenv/Test-disable-headers-before.py: Test using --header after --disable-header 1210 12112019-05-28 Tim Rühsen <tim.ruehsen@gmx.de> 1212 1213 * src/log.c (log_vprintf_internal): Don't log twice 1214 12152019-05-25 AviSoomirtee <avi@cyberstorm.mu> (tiny change) 1216 1217 * src/openssl.c (ssl_init): post handshake auth for OpenSSL 1218 12192019-05-24 Tim Rühsen <tim.ruehsen@gmx.de> 1220 1221 * bootstrap.conf: Explicitly set source_base and test_base 1222 12232019-05-07 Tim Rühsen <tim.ruehsen@gmx.de> 1224 1225 * src/convert.c (convert_basename): Do not pass NULL to strrchr() 1226 1227 * src/url.c (append_uri_pathel): Check for possible NULL dereference 1228 1229 * fuzz/main.c: Fix paths for WIN32 1230 1231 * bootstrap.conf: Work around VPATH issue 1232 1233 * configure.ac: Update gettext version to 0.19.3 1234 1235 * bootstrap.conf: Remove rsync as prerequisite 1236 './bootstrap --skip-po' won't need wget nor rsync 1237 1238 * bootstrap.conf: Replace prerequisite xz by gzip 1239 12402019-05-03 Tim Rühsen <tim.ruehsen@gmx.de> 1241 1242 Add sanitizer flags for ./configure 1243 * bootstrap.conf: Add 'warning' gnulib module 1244 * configure.ac: Add --enable-fsanitize-* flags 1245 * tests/Makefile.am: Add compiler flags for unit testing 1246 12472019-05-02 Tim Rühsen <tim.ruehsen@gmx.de> 1248 1249 Add --enable-manywarnings from wget2 1250 * .gitignore: Exclude /lib/Makefile.am 1251 * bootstrap.conf: Use --makefile-name=gnulib.mk with gnulib-tool 1252 * configure.ac: Use wget_MANYWARNINGS() 1253 * lib/Makefile.am: Define empty noinst_LIBRARIES and MAINTAINERCLEANFILES 1254 * m4/wget_manywarnings.m4: New file from GNU Wget2 1255 * src/Makefile.am: Use WARN_CFLAGS for AM_CFLAGS 1256 12572019-04-28 Tim Rühsen <tim.ruehsen@gmx.de> 1258 1259 Add CONTRIBUTING.md 1260 * CONTRIBUTING.md: New file for contributors 1261 * README: Mention CONTRIBUTING.md 1262 12632019-04-26 Tim Rühsen <tim.ruehsen@gmx.de> 1264 1265 * fuzz/*.in/*: Update corpora from OSS-fuzz 1266 1267 * fuzz/get_ossfuzz_corpora: Remove -f from unzip, mkdir *.in/ 1268 1269 * .gitlab-ci.yml: Update Gitlab CI WORKDIR to /usr/local 1270 12712019-04-26 Eneas U de Queiroz <cote2004-github@yahoo.com> (tiny change) 1272 1273 * src/openssl.c: fix ssl_init for openssl 1.1.1 1274 ssl_init fails with openssl 1.1.1 when openssl.cnf is not found. 1275 Redundant calls to intialization functions were removed as 1276 OPENSSL_config takes care of them for openssl versions < 1.1.0. 1277 For versions > 1.1.0, OPENSSL_init_ssl is preferred. 1278 12792019-04-11 Leif Ryge <leif@synthesize.us> (tiny change) 1280 1281 * doc/wget.texi: Fix typo in man page 1282 12832019-04-11 raminfp <ramin.blackhat@gmail.com> 1284 1285 [log] miss check If logging is inhibited 1286 12872019-04-05 Tim Rühsen <tim.ruehsen@gmx.de> 1288 1289 * src/iri.c (do_conversion): Remove unneeded debug lines 1290 12912019-04-05 Darshit Shah <darnir@gnu.org> 1292 1293 * NEWS: Update NEWS for new release 1294 12952019-04-05 Tim Ruehsen <tim.ruehsen@gmx.de> 1296 1297 Fix a buffer overflow vulnerability 1298 * src/iri.c(do_conversion): Reallocate the output buffer to a larger 1299 size if it is already full 1300 13012019-04-05 Darshit Shah <darnir@gnu.org> 1302 1303 * NEWS: Update NEWS for new release 1304 13052019-04-03 Tim Rühsen <tim.ruehsen@gmx.de> 1306 1307 * src/openssl.c (ssl_init): Check for X509_V_FLAG_PARTIAL_CHAIN 1308 13092019-04-01 Darshit Shah <darnir@gnu.org> 1310 1311 * gnulib: Pull forward 1312 13132019-03-26 Tim Rühsen <tim.ruehsen@gmx.de> 1314 1315 * fuzz/main.c (test_all_from): Fix indentation 1316 13172019-03-25 Tim Rühsen <tim.ruehsen@gmx.de> 1318 1319 Fix corner case in processing server response 1320 * src/http.c (response_head_terminator): Don't access uninitialized data 1321 * fuzz/wget_read_hunk_fuzzer.c: Sync response_head_terminator() 1322 1323 Add new fuzzer wget_read_hunk_fuzzer.c 1324 * fuzz/Makefile.am: Add wget_read_hunk_fuzzer 1325 * fuzz/wget_read_hunk_fuzzer.c: New file 1326 * fuzz/wget_read_hunk_fuzzer.in/*: Fuzz corpora 1327 * src/connect.c: Add connect_cleanup() 1328 * src/connect.h: Add prototype for connect_cleanup() 1329 13302019-03-03 Tim Rühsen <tim.ruehsen@gmx.de> 1331 1332 * fuzz/wget_netrc_fuzzer.c: Fix fuzzer 1333 1334 * fuzz/wget_ftpls_fuzzer.c: Fix fuzzer 1335 13362019-02-22 Jeffrey Walton <noloader@gmail.com> 1337 1338 * src/openssl.c (ssl_init): Trust partial cert chain 1339 13402019-02-20 Tim Rühsen <tim.ruehsen@gmx.de> 1341 1342 * src/ftp-ls.c (ftp_parse_vms_ls): Use snprintf instead of strcpy/strcat 1343 13442019-02-19 Darshit Shah <darnir@gnu.org> 1345 1346 * src/html-url.c(get_urls_html_fm): Add message in verbose mode with no-follow attribute 1347 13482019-02-19 Tim Rühsen <tim.ruehsen@gmx.de> 1349 1350 Fix fuzz/ tests for OpenBSD 1351 * fuzz/wget_*_fuzzer.c: Take care when calling exit() 1352 1353 * fuzz/Makefile.am: Remove hard-coded gcc flags 1354 1355 Fix STDERR closing/restoring in fuzzers 1356 * fuzz/fuzzer.h: Add CLOSE_STDERR and RESTORE_STDERR 1357 * fuzz/wget_*_fuzzer.c: Use CLOSE_STDERR and RESTORE_STDERR 1358 1359 * configure.ac: Rearrange AM_ICONV before gl_INIT 1360 13612019-02-19 Tim Rühsen <tim.ruehsen@gmx.de> 1362 1363 Do not hard-code -ldl in fuzz/Makefile.am 1364 * configure.ac: Search for dlopen and add library to $FUZZ_LIBS 1365 * fuzz/Makefile.am: Link with $FUZZ_LIBS instead of -ldl 1366 1367 This fixes linking on BSD systems. 1368 1369 Reported-by: Nam Nguyen 1370 13712019-02-14 Tim Rühsen <tim.ruehsen@gmx.de> 1372 1373 * doc/wget.texi: Correct --logfile -> --output-file 1374 13752019-02-10 Darshit Shah <darnir@gnu.org> 1376 1377 Update gnulib 1378 1379 Update copyright statements 1380 13812019-01-23 Leon Klingele <git@leonklingele.de> (tiny change) 1382 1383 docs: --no-cache also sets the 'Cache-Control: no-cache' header 1384 * doc/wget.texi: Add Cache-Control to docs 1385 * src/wget.h: Add Cache-Control to comment of SEND_NOCACHE 1386 13872019-01-20 Tim Rühsen <tim.ruehsen@gmx.de> 1388 1389 * .gitlab-ci.yml: Add minimal build 1390 1391 * src/init.c (cleanup): Check HAVE_HSTS 1392 Reported-by: Simon Dales 1393 13942018-12-31 André Wolski <andre@dena-design.de> 1395 1396 NTLM restart authentication (trivial change) 1397 * src/http-ntlm.c (ntlm_input): Continue on NTLMSTATE_LAST, 1398 error on NTLMSTATE_TYPE3 1399 1400 The code comes from the cURL project. Thanks to Daniel Stenberg 1401 for donating the code. 1402 1403 https://lists.gnu.org/archive/html/bug-wget/2018-12/msg00030.html 1404 14052018-12-28 Tim Rühsen <tim.ruehsen@gmx.de> 1406 1407 * contrib/spell-checker: Remove trailing whitespace 1408 1409 Fix typos detected by codespell (via contrib/spell-checker) 1410 1411 * contrib/spell-checker: Add script for spell checking 1412 14132018-12-27 Tim Rühsen <tim.ruehsen@gmx.de> 1414 1415 * fuzz/Makefile.am: Fix order of libraries for linking 1416 1417 * src/wget.h: #undef _Noreturn when building with C++ 1418 1419 * src/gnutls.c (ssl_connect_wget): Fix call to gnutls_set_default_priority() 1420 14212018-12-26 Tim Rühsen <tim.ruehsen@gmx.de> 1422 1423 * NEWS: Add release changes for 1.20.1 1424 14252018-12-26 Tim Rühsen <tim.ruehsen@gmx.de> 1426 1427 Don't save user/pw with --xattr 1428 Also the Referer info is reduced to scheme+host+port. 1429 1430 * src/ftp.c (getftp): Change params of set_file_metadata() 1431 * src/http.c (gethttp): Change params of set_file_metadata() 1432 * src/xattr.c (set_file_metadata): Remove user/password from origin URL, 1433 reduce Referer value to scheme/host/port. 1434 * src/xattr.h: Change prototype of set_file_metadata() 1435 14362018-12-26 Tim Rühsen <tim.ruehsen@gmx.de> 1437 1438 Don't use extended attributes (--xattr) by default 1439 * src/init.c (defaults): Set enable_xattr to false by default 1440 * src/main.c (print_help): Reverse option logic of --xattr 1441 * doc/wget.texi: Add description for --xattr 1442 1443 Users may not be aware that the origin URL and Referer are saved 1444 including credentials, and possibly access tokens within 1445 the urls. 1446 14472018-12-13 Tim Rühsen <tim.ruehsen@gmx.de> 1448 1449 * .travis.yml: Email to wget-dev instead bug-wget mailing list 1450 14512018-11-30 Darshit Shah <darnir@gnu.org> 1452 1453 * NEWS: Prepare for new version 1454 14552018-11-13 Darshit Shah <darnir@gnu.org> 1456 1457 * contrib/make-release: Add a small checklist for pending tasks 1458 1459 Prepare NEWS for new release 1460 1461 * configure.ac: gnulib now expects autoconf >=2.63 1462 1463 * gnulib: Update library 1464 14652018-11-13 Jay Satiro <raysatiro@yahoo.com> 1466 1467 * src/init.c: Stop freeing the pointer returned by ws_mypath() 1468 .. since ws_mypath() saves the address it returns in a static pointer 1469 for reuse, to also be returned in later calls. 1470 14712018-11-13 Darshit Shah <darnir@gnu.org> 1472 1473 * src/ftp.c(ftp_retrieve_glob): Honor {accept,reject}-regex switches as well 1474 1475 * src/ftp.c (ftp_retrieve_glob): Refactor to prevent looping over listing multiple times 1476 14772018-11-11 Tim Rühsen <tim.ruehsen@gmx.de> 1478 1479 * .gitlab-ci.yml: Split into GnuTLS and OpenSSL build 1480 1481 * Makefile.am: dist clean po/stamp-po 1482 1483 Remove auto-generated files from po/ 1484 1485 Add VPATH build 1486 14872018-11-09 Tim Rühsen <tim.ruehsen@gmx.de> 1488 1489 Revert "Bail out on unexpected 416 server errors" 1490 This reverts commit 6f3b9959935ad7640bcf48a0a93848ed25ff8963. 1491 1492 The code is obviously wrong, see https://savannah.gnu.org/bugs/?54963 1493 Also, the example from the original post doesn't work any more. 1494 With other words, the broken server behavior has been fixed meanwhile. 1495 14962018-11-09 Rosen Penev <rosenp@gmail.com> (tiny change) 1497 1498 openssl: Do not use engines when OpenSSL does not support 1499 * src/openssl.c: Check for OPENSSL_NO_ENGINE before 1500 including openssl/engine.h and before calling ENGINE_load_builtin_engines() 1501 1502 Fixes compilation with no engines compiled. 1503 15042018-11-09 Tim Rühsen <tim.ruehsen@gmx.de> 1505 1506 Fix HTTPS Perl tests 1507 * tests/SSLTest.pm: Rename server cert and key file 1508 * tests/Test-https*.px: Fix and remove OpenSSL hard-coding 1509 * tests/certs/create-certs.sh: Script to generate test files 1510 * tests/certs/*-template.txt: GnuTLS template files for certs and crl 1511 * tests/certs/*.pem: Keys, certs, crls 1512 * tests/certs/README: Removed commands, link to create-certs.sh 1513 15142018-10-28 Kapus, Timotej <timotej.kapus13@imperial.ac.uk> (tiny change) 1515 1516 Replace some loops with string.h functions 1517 * src/init.c: Replace loop with strspn 1518 * src/url.c: Replace loop with strrchr 1519 15202018-10-26 Luiz Angelo Daros de Luca <luizluca@gmail.com> (tiny change) 1521 1522 * .gitmodules: Use https:// instead of git:// for gnulib 1523 git:// does not work over http proxy 1524 1525 * src/host.c (sufmatch): Fix dot-prefixed domain matching 1526 Current sufmatch does not match when domain is dot-prefixed. 1527 The example of no_proxy in man (.mit.edu) does use a dot-prefixed 1528 domain. 1529 15302018-10-26 Tim Rühsen <tim.ruehsen@gmx.de> 1531 1532 * src/convert.c (convert_links): Fix fallthrough 1533 15342018-10-22 Darshit Shah <darnir@gnu.org> 1535 1536 * bootstrap: Update script from gnulib 1537 1538 * gnulib: Update library 1539 15402018-10-19 Tim Rühsen <tim.ruehsen@gmx.de> 1541 1542 * .lgtm.yml: New file to add LGTM to Gitlab.com CI 1543 15442018-10-16 Tim Rühsen <tim.ruehsen@gmx.de> 1545 1546 * configure.ac: Fix build issue with libgpgme 1547 15482018-10-14 Tim Rühsen <tim.ruehsen@gmx.de> 1549 1550 * fuzz/*_fuzzer.in/*: Update fuzzer corpora 1551 15522018-10-08 Nikos Mavrogiannopoulos <nmav@redhat.com> 1553 1554 Enable post-handshake auth under gnutls on TLS1.3 1555 15562018-09-20 Tim Rühsen <tim.ruehsen@gmx.de> 1557 1558 * src/http.c (resp_new): Fix code to avoid false positive by clang 1559 1560 * src/convert.c (convert_links): Fix code to avoid false positive by clang 1561 15622018-09-19 Tim Rühsen <tim.ruehsen@gmx.de> 1563 1564 Add support for PCRE2 pattern matching 1565 * configure.ac: Check for libpcre2-8 1566 * src/init.c (choices): Test for HAVE_LIBPCRE2 1567 * src/main.c (main): Set regex compile and match functions 1568 * src/options.h: Test for HAVE_LIBPCRE2 1569 * src/utils.c: Include pcre2.h, add functions 1570 compile_pcre2_regex() and match_pcre2_regex() 1571 * src/utils.h: Declare compile_pcre2_regex() and match_pcre2_regex() 1572 1573 Fixes #54677 1574 Reported-by: Noël Köthe 1575 15762018-09-07 Tim Rühsen <tim.ruehsen@gmx.de> 1577 1578 Add . to perl path for all perl tests 1579 * tests/*.px: Add -I . to the shebang 1580 1581 This allows perl test to be run from tests/ directory, e.g. via 1582 ./Test--post-file.px 1583 15842018-09-07 Tomas Hozza <thozza@redhat.com> 1585 1586 Add TLS 1.3 support for GnuTLS 1587 * doc/wget.texi: Add "TLSv1_3" to --secure-protocol 1588 * src/gnutls.c (set_prio_default): Use GNUTLS_TLS1_3 where needed 1589 1590 Wget currently allows specifying "TLSv1_3" as the parameter for 1591 --secure-protocol option. However it is only implemented for OpenSSL 1592 and in case wget is compiled with GnuTLS, it causes wget to abort with: 1593 GnuTLS: unimplemented 'secure-protocol' option value 6 1594 1595 GnuTLS contains TLS 1.3 implementation since version 3.6.3 [1]. However 1596 currently it must be enabled explicitly in the application of it to be 1597 used. This will change after the draft is finalized. [2] However for 1598 the time being, I enabled it explicitly in case "TLSv1_3" is used with 1599 --secure-protocol. 1600 1601 I also fixed man page to contain "TLSv1_3" in all listings of available 1602 parameters for --secure-protocol 1603 1604 [1] https://lists.gnupg.org/pipermail/gnutls-devel/2018-July/008584.html 1605 [2] https://nikmav.blogspot.com/2018/05/gnutls-and-tls-13.html 1606 16072018-08-29 Tomas Korbar <tkorbar@redhat.com> 1608 1609 Avoid creating empty wget-log when using -O and -q in background 1610 * src/log.c (check_redirect_output): Check for quiet mode 1611 16122018-08-27 Tomas Hozza <thozza@redhat.com> 1613 1614 * src/warc.c (warc_write_cdx_record): Fix RESOURCE LEAK found by Coverity 1615 Error: RESOURCE_LEAK (CWE-772): - REAL ERROR 1616 wget-1.19.5/src/warc.c:1376: alloc_fn: Storage is returned from allocation function "url_escape". 1617 wget-1.19.5/src/url.c:284:3: alloc_fn: Storage is returned from allocation function "url_escape_1". 1618 wget-1.19.5/src/url.c:255:3: alloc_fn: Storage is returned from allocation function "xmalloc". 1619 wget-1.19.5/lib/xmalloc.c:41:11: alloc_fn: Storage is returned from allocation function "malloc". 1620 wget-1.19.5/lib/xmalloc.c:41:11: var_assign: Assigning: "p" = "malloc(n)". 1621 wget-1.19.5/lib/xmalloc.c:44:3: return_alloc: Returning allocated memory "p". 1622 wget-1.19.5/src/url.c:255:3: var_assign: Assigning: "newstr" = "xmalloc(newlen + 1)". 1623 wget-1.19.5/src/url.c:258:3: var_assign: Assigning: "p2" = "newstr". 1624 wget-1.19.5/src/url.c:275:3: return_alloc: Returning allocated memory "newstr". 1625 wget-1.19.5/src/url.c:284:3: return_alloc_fn: Directly returning storage allocated by "url_escape_1". 1626 wget-1.19.5/src/warc.c:1376: var_assign: Assigning: "redirect_location" = storage returned from "url_escape(redirect_location)". 1627 wget-1.19.5/src/warc.c:1381: noescape: Resource "redirect_location" is not freed or pointed-to in "fprintf". 1628 wget-1.19.5/src/warc.c:1387: leaked_storage: Returning without freeing "redirect_location" leaks the storage that it points to. 1629 \# 1385| fflush (warc_current_cdx_file); 1630 \# 1386| 1631 \# 1387|-> return true; 1632 \# 1388| } 1633 \# 1389| 1634 1635 url_escape() really returns a newly allocated memory and it leaks when the warc_write_cdx_record() returns. The memory returned from url_escape() is usually stored in a temporary variable in other parts of the project and then freed. I took the same approach. 1636 16372018-08-27 Tomas Hozza <thozza@redhat.com> 1638 1639 * src/warc.c (warc_write_start_record): Fix potential RESOURCE LEAK 1640 In warc_write_start_record() function, the reutrn value of dup() is 1641 directly used in gzdopen() call and not stored anywhere. However the 1642 zlib documentation says that "The duplicated descriptor should be saved 1643 to avoid a leak, since gzdopen does not close fd if it fails." [1]. 1644 This change stores the FD in a variable and closes it in case gzopen() 1645 fails. 1646 1647 [1] https://www.zlib.net/manual.html 1648 1649 Error: RESOURCE_LEAK (CWE-772): 1650 wget-1.19.5/src/warc.c:217: open_fn: Returning handle opened by "dup". 1651 wget-1.19.5/src/warc.c:217: leaked_handle: Failing to save or close handle opened by "dup(fileno(warc_current_file))" leaks it. 1652 \# 215| 1653 \# 216| /* Start a new GZIP stream. */ 1654 \# 217|-> warc_current_gzfile = gzdopen (dup (fileno (warc_current_file)), "wb9"); 1655 \# 218| warc_current_gzfile_uncompressed_size = 0; 1656 \# 219| 1657 16582018-08-27 Tomas Hozza <thozza@redhat.com> 1659 1660 * src/utils.c (open_stat): Fix RESOURCE LEAK found by Coverity 1661 Error: RESOURCE_LEAK (CWE-772): 1662 wget-1.19.5/src/utils.c:914: open_fn: Returning handle opened by "open". [Note: The source code implementation of the function has been overridden by a user model.] 1663 wget-1.19.5/src/utils.c:914: var_assign: Assigning: "fd" = handle returned from "open(fname, flags, mode)". 1664 wget-1.19.5/src/utils.c:921: noescape: Resource "fd" is not freed or pointed-to in "fstat". [Note: The source code implementation of the function has been overridden by a builtin model.] 1665 wget-1.19.5/src/utils.c:924: leaked_handle: Handle variable "fd" going out of scope leaks the handle. 1666 \# 922| { 1667 \# 923| logprintf (LOG_NOTQUIET, _("Failed to stat file %s, error: %s\n"), fname, strerror(errno)); 1668 \# 924|-> return -1; 1669 \# 925| } 1670 \# 926| #if !(defined(WINDOWS) || defined(__VMS)) 1671 1672 This seems to be a real issue, since the opened file descriptor in "fd" 1673 would leak. There is also additional check below the "fstat" call, which 1674 closes the opened "fd". 1675 16762018-08-27 Tomas Hozza <thozza@redhat.com> 1677 1678 * src/http.c (http_loop): Fix RESOURCE LEAK found by Coverity 1679 Error: RESOURCE_LEAK (CWE-772): 1680 wget-1.19.5/src/http.c:4486: alloc_fn: Storage is returned from allocation function "url_string". 1681 wget-1.19.5/src/url.c:2248:3: alloc_fn: Storage is returned from allocation function "xmalloc". 1682 wget-1.19.5/lib/xmalloc.c:41:11: alloc_fn: Storage is returned from allocation function "malloc". 1683 wget-1.19.5/lib/xmalloc.c:41:11: var_assign: Assigning: "p" = "malloc(n)". 1684 wget-1.19.5/lib/xmalloc.c:44:3: return_alloc: Returning allocated memory "p". 1685 wget-1.19.5/src/url.c:2248:3: var_assign: Assigning: "result" = "xmalloc(size)". 1686 wget-1.19.5/src/url.c:2248:3: var_assign: Assigning: "p" = "result". 1687 wget-1.19.5/src/url.c:2250:3: noescape: Resource "p" is not freed or pointed-to in function "memcpy". [Note: The source code implementation of the function has been overridden by a builtin model.] 1688 wget-1.19.5/src/url.c:2253:7: noescape: Resource "p" is not freed or pointed-to in function "memcpy". [Note: The source code implementation of the function has been overridden by a builtin model.] 1689 wget-1.19.5/src/url.c:2257:11: noescape: Resource "p" is not freed or pointed-to in function "memcpy". [Note: The source code implementation of the function has been overridden by a builtin model.] 1690 wget-1.19.5/src/url.c:2264:3: noescape: Resource "p" is not freed or pointed-to in function "memcpy". [Note: The source code implementation of the function has been overridden by a builtin model.] 1691 wget-1.19.5/src/url.c:2270:7: identity_transfer: Passing "p" as argument 1 to function "number_to_string", which returns an offset off that argument. 1692 wget-1.19.5/src/utils.c:1776:11: var_assign_parm: Assigning: "p" = "buffer". 1693 wget-1.19.5/src/utils.c:1847:3: return_var: Returning "p", which is a copy of a parameter. 1694 wget-1.19.5/src/url.c:2270:7: noescape: Resource "p" is not freed or pointed-to in function "number_to_string". 1695 wget-1.19.5/src/utils.c:1774:25: noescape: "number_to_string(char *, wgint)" does not free or save its parameter "buffer". 1696 wget-1.19.5/src/url.c:2270:7: var_assign: Assigning: "p" = "number_to_string(p, url->port)". 1697 wget-1.19.5/src/url.c:2273:3: noescape: Resource "p" is not freed or pointed-to in function "full_path_write". 1698 wget-1.19.5/src/url.c:1078:47: noescape: "full_path_write(struct url const *, char *)" does not free or save its parameter "where". 1699 wget-1.19.5/src/url.c:2287:3: return_alloc: Returning allocated memory "result". 1700 wget-1.19.5/src/http.c:4486: var_assign: Assigning: "hurl" = storage returned from "url_string(u, URL_AUTH_HIDE_PASSWD)". 1701 wget-1.19.5/src/http.c:4487: noescape: Resource "hurl" is not freed or pointed-to in "logprintf". 1702 wget-1.19.5/src/http.c:4513: leaked_storage: Variable "hurl" going out of scope leaks the storage it points to. 1703 \# 4511| { 1704 \# 4512| printwhat (count, opt.ntry); 1705 \# 4513|-> continue; 1706 \# 4514| } 1707 \# 4515| else 1708 1709 There are two conditional branches, which call continue, without freeing memory potentially allocated and pointed to by"hurl" pointer. In fase "!opt.verbose" is True and some of the appropriate conditions in the following if/else if construction, in which "continue" is called, are also true, then the memory allocated to "hurl" will leak. 1710 17112018-08-27 Tomas Hozza <thozza@redhat.com> 1712 1713 * src/http.c (check_auth): Fix RESOURCE LEAK found by Coverity 1714 Error: RESOURCE_LEAK (CWE-772): 1715 wget-1.19.5/src/http.c:2434: alloc_fn: Storage is returned from allocation function "xmalloc". 1716 wget-1.19.5/lib/xmalloc.c:41:11: alloc_fn: Storage is returned from allocation function "malloc". 1717 wget-1.19.5/lib/xmalloc.c:41:11: var_assign: Assigning: "p" = "malloc(n)". 1718 wget-1.19.5/lib/xmalloc.c:44:3: return_alloc: Returning allocated memory "p". 1719 wget-1.19.5/src/http.c:2434: var_assign: Assigning: "auth_stat" = storage returned from "xmalloc(4UL)". 1720 wget-1.19.5/src/http.c:2446: noescape: Resource "auth_stat" is not freed or pointed-to in "create_authorization_line". 1721 wget-1.19.5/src/http.c:5203:70: noescape: "create_authorization_line(char const *, char const *, char const *, char const *, char const *, _Bool *, uerr_t *)" does not free or save its parameter "auth_err". 1722 wget-1.19.5/src/http.c:2476: leaked_storage: Variable "auth_stat" going out of scope leaks the storage it points to. 1723 \# 2474| /* Creating the Authorization header went wrong */ 1724 \# 2475| } 1725 \# 2476|-> } 1726 \# 2477| else 1727 \# 2478| { 1728 1729 Error: RESOURCE_LEAK (CWE-772): 1730 wget-1.19.5/src/http.c:2431: alloc_fn: Storage is returned from allocation function "url_full_path". 1731 wget-1.19.5/src/url.c:1105:19: alloc_fn: Storage is returned from allocation function "xmalloc". 1732 wget-1.19.5/lib/xmalloc.c:41:11: alloc_fn: Storage is returned from allocation function "malloc". 1733 wget-1.19.5/lib/xmalloc.c:41:11: var_assign: Assigning: "p" = "malloc(n)". 1734 wget-1.19.5/lib/xmalloc.c:44:3: return_alloc: Returning allocated memory "p". 1735 wget-1.19.5/src/url.c:1105:19: var_assign: Assigning: "full_path" = "xmalloc(length + 1)". 1736 wget-1.19.5/src/url.c:1107:3: noescape: Resource "full_path" is not freed or pointed-to in function "full_path_write". 1737 wget-1.19.5/src/url.c:1078:47: noescape: "full_path_write(struct url const *, char *)" does not free or save its parameter "where". 1738 wget-1.19.5/src/url.c:1110:3: return_alloc: Returning allocated memory "full_path". 1739 wget-1.19.5/src/http.c:2431: var_assign: Assigning: "pth" = storage returned from "url_full_path(u)". 1740 wget-1.19.5/src/http.c:2446: noescape: Resource "pth" is not freed or pointed-to in "create_authorization_line". 1741 wget-1.19.5/src/http.c:5203:40: noescape: "create_authorization_line(char const *, char const *, char const *, char const *, char const *, _Bool *, uerr_t *)" does not free or save its parameter "path". 1742 wget-1.19.5/src/http.c:2476: leaked_storage: Variable "pth" going out of scope leaks the storage it points to. 1743 \# 2474| /* Creating the Authorization header went wrong */ 1744 \# 2475| } 1745 \# 2476|-> } 1746 \# 2477| else 1747 \# 2478| { 1748 1749 Both "pth" and "auth_stat" are allocated in "check_auth()" function. These are used for creating the HTTP Authorization Request header via "create_authorization_line()" function. In case the creation went OK (auth_err == RETROK), then the memory previously allocated to "pth" and "auth_stat" is freed. However if the creation failed, then the memory is never freed and it leaks. 1750 17512018-08-27 Tomas Hozza <thozza@redhat.com> 1752 1753 * src/ftp.c (getftp): Fix RESOURCE LEAK found by Coverity 1754 Error: RESOURCE_LEAK (CWE-772): 1755 wget-1.19.5/src/ftp.c:1493: alloc_fn: Storage is returned from allocation function "fopen". 1756 wget-1.19.5/src/ftp.c:1493: var_assign: Assigning: "fp" = storage returned from "fopen(con->target, "wb")". 1757 wget-1.19.5/src/ftp.c:1811: leaked_storage: Variable "fp" going out of scope leaks the storage it points to. 1758 \# 1809| if (fp && !output_stream) 1759 \# 1810| fclose (fp); 1760 \# 1811|-> return err; 1761 \# 1812| } 1762 \# 1813| 1763 1764 It can happen, that "if (!output_stream || con->cmd & DO_LIST)" on line #1398 can be true, even though "output_stream != NULL". In this case a new file is opened to "fp". Later it may happen in the FTPS branch, that some error will occure and code will jump to label "exit_error". In "exit_error", the "fp" is closed only if "output_stream == NULL". However this may not be true as described earlier and "fp" leaks. 1765 1766 On line #1588, there is the following conditional free of "fp": 1767 1768 /* Close the local file. */ 1769 if (!output_stream || con->cmd & DO_LIST) 1770 fclose (fp); 1771 1772 Therefore the conditional at the end of the function after "exit_error" label should be modified to: 1773 1774 if (fp && (!output_stream || con->cmd & DO_LIST)) 1775 fclose (fp); 1776 1777 This will ensure that "fp" does not leak in any case it sould be opened. 1778 17792018-08-11 Tomas Hozza <thozza@redhat.com> 1780 1781 Don't limit the test suite HTTPS server to TLSv1 1782 In Fedora, we are implementing crypto policies, in order to enhance the 1783 security of user systems. This is done on the system level by global 1784 configuration. It may happen that due to the active policy, only 1785 TLSv1.2 or higher will be available in crypto libraries. While wget as 1786 a client will by default determine the minimal TLS version supported by 1787 both client and server, the HTTPS server implementation in testenv/ 1788 hardcodes use of TLSv1. As a result all HTTPS related tests fail in 1789 case a more hardened crypto policy is set on the Fedora system. 1790 1791 This change removes the explicit TLS version setting and leaves the 1792 determination of the minimal supported TLS version on the server and 1793 client. 1794 1795 More information about Fedora change can be found here: 1796 https://fedoraproject.org/wiki/Changes/StrongCryptoSettings 1797 17982018-06-13 Tim Rühsen <tim.ruehsen@gmx.de> 1799 1800 * src/gnutls.c (ssl_check_certificate): Fix grammar of error msg 1801 Reported-by: Nicholas Sielicki 1802 1803 * fuzz/Makefile.am: Remove libtool LTLIB... from LDADD 1804 1805 * src/http.c (http_loop): Fix --retry-on-host-error 1806 18072018-06-13 ethus3h <kolubat@gmail.com> (tiny change) 1808 1809 Add new option --retry-on-host-error 1810 * doc/wget.texi: Add docs for --retry-on-host-error 1811 * src/http.c (http_loop): Add code for HOSTERR 1812 * src/init.c: Add option --retry-on-host-error 1813 * src/main.c: Likewise 1814 * src/options.h: Add options.retry_on_host_error 1815 18162018-05-29 Tim Rühsen <tim.ruehsen@gmx.de> 1817 1818 Save original data to WARC file 1819 * src/retr.c (write_data): Cleanup, 1820 (fd_read_body): Write to WARC before uncompressing 1821 1822 Fixes: #53968 1823 18242018-05-10 Tim Rühsen <tim.ruehsen@gmx.de> 1825 1826 * fuzz/get_ossfuzz_corpora: Speed up corpora download 1827 18282018-05-09 Tim Rühsen <tim.ruehsen@gmx.de> 1829 1830 * src/main.c (print_version): Silence UBSAN message 1831 1832 * src/utils.ci (file_exists_p): Fix stat(NULL,...) 1833 1834 * src/hsts.c (open_hsts_test_store): Fix unlink(NULL) 1835 1836 * src/hash.c: Silence UBSAN for hash functions 1837 1838 * fuzz/*_fuzzer.in: Update corpora from OSS-Fuzz 1839 1840 * fuzz/get_ossfuzz_corpora: Fix path 1841 18422018-05-08 Tim Rühsen <tim.ruehsen@gmx.de> 1843 1844 * src/hsts.h: Fix header guard 1845 1846 * src/version.h: Add header guard 1847 1848 * src/host.c (wait_ares): Remove void assignment 1849 Reported-by: Josef Moellers 1850 18512018-05-06 Tim Rühsen <tim.ruehsen@gmx.de> 1852 1853 Update NEWS file for new release 1854 18552018-05-06 Tim Rühsen <tim.ruehsen@gmx.de> 1856 1857 Fix cookie injection (CVE-2018-0494) 1858 * src/http.c (resp_new): Replace \r\n by space in continuation lines 1859 1860 Fixes #53763 1861 "Malicious website can write arbitrary cookie entries to cookie jar" 1862 1863 HTTP header parsing left the \r\n from continuation line intact. 1864 The Set-Cookie code didn't check and could be tricked to write 1865 \r\n into the cookie jar, allowing a server to generate cookies at will. 1866 18672018-05-06 Tim Rühsen <tim.ruehsen@gmx.de> 1868 1869 * tests/Test-https-weboftrust.px: Skip test, needs cert regen 1870 1871 Fix make syntax-check 1872 * cfg.mk: Add fuzzer reproducers to exception list 1873 * po/POTFILES.in: Add src/spider.c 1874 1875 Fix HTTPS tests 1876 * tests/Test-https-badcerts.px: Fix test return value 1877 * tests/Test-https-crl.px: Likewise 1878 * README: How to create certs with GnuTLS's certtool 1879 * tests/certs/revokedcrl.pem: Recreated revocation 1880 * tests/certs/server.crt: Recreated server cert with no expiry 1881 * tests/certs/test-ca-cert.pem: Recreated CA cert with no expiry 1882 1883 * src/init.c: Bring new --ciphers into right order in options array 1884 18852018-05-05 Ander Juaristi <a@juaristi.eus> 1886 1887 * doc/wget.texi: Add description for --ciphers 1888 18892018-05-05 Ander Juarist <a@juaristi.eus> 1890 1891 OpenSSL: Better seeding of PRNG 1892 * src/openssl.c (init_prng): keep gathering entropy even though we 1893 already have enough 1894 (ssl_connect_with_timeout_callback): reseed PRNG again just before 1895 the handshake 1896 1897 Reported-by: Jeffrey Walton <noloader@gmail.com> 1898 18992018-05-05 Ander Juaristi <a@juaristi.eus> 1900 1901 Enhance SSL/TLS security 1902 This commit hardens SSL/TLS a bit more in the following ways: 1903 1904 * Explicitly exclude NULL authentication and the 'MEDIUM' cipher list 1905 category. Ciphers in the 'HIGH' level are only considered - this 1906 includes all symmetric ciphers with key lengths larger than 128 bits, 1907 and some ('modern') 128-bit ciphers, such as AES in GCM mode. 1908 * Allow RSA key exchange by default, but exclude it when 1909 Perfect Forward Secrecy is desired (with --secure-protocol=PFS). 1910 * Introduce new option --ciphers to set the cipher list that the SSL/TLS 1911 engine will favor. This string is fed directly to the underlying TLS 1912 library (GnuTLS or OpenSSL) without further processing, and hence its 1913 format and syntax are directly dependent on the specific library. 1914 1915 Reported-by: Jeffrey Walton <noloader@gmail.com> 1916 19172018-04-28 Tim Rühsen <tim.ruehsen@gmx.de> 1918 1919 * src/netrc.c (parse_netrc_fp): Fix two memleaks 1920 1921 Add new fuzzer for the .netrc parser 1922 * fuzz/wget_netrc_fuzzer.c: New fuzzer 1923 * fuzz/wget_netrc_fuzzer.dict: Fuzzer dictionary 1924 * fuzz/wget_netrc_fuzzer.in: Initial corpora 1925 * src/ftp.c (getftp): Amend call to search_netrc() 1926 * src/http.c (initialize_request): Likewise 1927 * src/netrc.c: Cleanup, prepare code for fuzzing 1928 * src/netrc.h: Cleanup 1929 19302018-04-27 Tim Rühsen <tim.ruehsen@gmx.de> 1931 1932 * src/utils.c (match_tail): Fix unsigned integer overflow 1933 1934 Add new fuzzer for the Set-Cookie parser 1935 * fuzz/Makefile.am: Add wget_cookie_fuzzer 1936 * fuzz/wget_cookie_fuzzer.c: New fuzzer 1937 * fuzz/wget_cookie_fuzzer.dict: Fuzzers dictionary 1938 * fuzz/wget_cookie_fuzzer.in: Initial corpora 1939 19402018-04-26 Tim Rühsen <tim.ruehsen@gmx.de> 1941 1942 Fix buffer overflow in CSS parser 1943 * src/css-url.c (get_uri_string): Check input length 1944 * fuzz/wget_css_fuzzer.repro/buffer-overflow-6600180399865856: 1945 Add reproducer corpus 1946 1947 Fixes OSS-Fuzz issue #8033. 1948 This is a long standing bug affecting all versions <= 1.19.4. 1949 19502018-04-26 Tim Rühsen <tim.ruehsen@gmx.de> 1951 1952 Fix buffer overflow in CSS parser 1953 * src/css-url.c (get_urls_css): Check input string length 1954 * fuzz/wget_css_fuzzer.repro/negative-size-param-5724866467594240: 1955 Add reproducer corpus 1956 1957 Fixes OSS-Fuzz issue #8032. 1958 This is a long standing bug affecting all versions <= 1.19.4. 1959 19602018-04-26 Tim Rühsen <tim.ruehsen@gmx.de> 1961 1962 Exclude fuzz corpora from tarball 1963 * fuzz/Makefile.am: Do not include corpora in tarball 1964 * fuzz/main.c: SKIP if corpora directory isn't found (make check) 1965 1966 The fuzz corpora are thousands of files, not needed for a standard build 1967 from a distribution tarball. The reproducers of former issues are being 1968 included for regression testing. 1969 19702018-04-26 Tim Rühsen <tim.ruehsen@gmx.de> 1971 1972 * tests/Makefile.am: Add -I/src to AM_CPPFLAGS 1973 19742018-04-26 Tim Rühsen <tim.ruehsen@gmx.de> 1975 1976 Add CSS slowness reproducer (fixed) 1977 * fuzz/wget_css_fuzzer.repro/slowness-6275836549267456: New file 1978 1979 This file created an extreme CPU usage with the old CSS parser. 1980 19812018-04-26 Tim Rühsen <tim.ruehsen@gmx.de> 1982 1983 Update CSS grammar from 1.x to 2.2 1984 * src/css-tokens.h: Add enums and fixate values 1985 * src/css.l: Include config.h, 1986 ignore several compiler warnings, 1987 update the grammar to CSS 2.2 1988 1989 Fixes OSS-Fuzz issue #8010 (slowness issue). 1990 This is a long standing bug affecting all versions <= 1.19.4. 1991 1992 Some crafted CSS input was extremely slow / CPU wasting, so it could 1993 be used as a DOS attack against website scanning. 1994 1995 The code/grammar changes were backported from Wget2.x. 1996 19972018-04-25 Tim Rühsen <tim.ruehsen@gmx.de> 1998 1999 * src/res.c (add_path): Fix memleak (parsing robots.txt) 2000 Fixes OSS-Fuzz issue #8005. 2001 This is a long standing bug affecting all versions <= 1.19.4. 2002 2003 * src/ftp-ls.c (ftp_parse_winnt_ls): Fix integer overflow 2004 Fixes OSS-Fuzz issue #7999. 2005 This is a long standing bug affecting all versions <= 1.19.4. 2006 20072018-04-24 Tim Rühsen <tim.ruehsen@gmx.de> 2008 2009 Add new fuzzer for the URL parser 2010 * fuzz/Makefile.am: Add wget_url_fuzzer 2011 * fuzz/wget_url_fuzzer.c: New fuzzer 2012 * fuzz/wget_url_fuzzer.in: Initial corpora 2013 2014 Add new fuzzer for robots.txt parsing 2015 * fuzz/Makefile.am: Add wget_robots_fuzzer 2016 * fuzz/wget_robots_fuzzer.c: New fuzzer 2017 * fuzz/wget_robots_fuzzer.in: Initial corpora 2018 2019 * fuzz/README.md: Add CFLAGS for undefined sanitizer 2020 2021 * src/ftp-ls.c (ftp_parse_winnt_ls): Fix integer overflow 2022 2023 * src/ftp-ls.c (ftp_parse_vms_ls): Fix integer overflow by left shift 2024 2025 * src/ftp-ls.c (ftp_parse_unix_ls): Fix integer overflow in date parsing 2026 20272018-04-22 Tim Rühsen <tim.ruehsen@gmx.de> 2028 2029 * src/ftp-ls.c (ftp_parse_winnt_ls): Fix heap-buffer-overflow 2030 Fixes OSS-Fuzz issue #7931. 2031 This is a long standing bug affecting all versions <= 1.19.4. 2032 2033 * src/ftp-ls.c (ftp_parse_winnt_ls): Fix heap-buffer-overflow 2034 Fixes OSS-Fuzz issue #7930. 2035 This is a long standing bug affecting all versions <= 1.19.4. 2036 2037 * fuzz/wget_ftpls_fuzzer.in: Update corpora 2038 20392018-04-21 Tim Rühsen <tim.ruehsen@gmx.de> 2040 2041 * src/ftp-ls.c (eat_carets): Fix heap-buffer-overflow 2042 2043 * src/ftp-ls.c (ftp_parse_winnt_ls): Fix memleak 2044 2045 * src/ftp-ls.c (ftp_parse_vms_ls): Fix heap-buffer-overflow 2046 2047 * src/ftp-ls.c (ftp_parse_vms_ls): Fix heap-buffer-overflow 2048 2049 * src/ftp-ls.c (ftp_parse_vms_ls): Fix memleak 2050 2051 Add new fuzzer for the FTP listing parsers 2052 * fuzz/Makefile.am: Add wget_ftpls_fuzzer 2053 * fuzz/wget_ftpls_fuzzer.c: New fuzzer 2054 * fuzz/wget_ftpls_fuzzer.dict: Fuzzer dictionary 2055 * fuzz/wget_ftpls_fuzzer.in/starter: Starting corpus 2056 * src/ftp-ls.c: Parsing function take FILE * as argument, 2057 new function ftp_parse_ls_fp() 2058 * src/ftp.c: Remove static from freefileinfo() 2059 * src/ftp.h: Add ftp_parse_ls_fp() and freefileinfo() 2060 2061 * fuzz/run-clang.sh: Remove -detect_leaks=0 from fuzzer command line 2062 2063 * src/main.c (main): Fix memleak for fuzzing/testing 2064 2065 * src/init.c: Fix fuzzing in case ~/.wgetrc doesn't exist 2066 20672018-04-20 Tim Rühsen <tim.ruehsen@gmx.de> 2068 2069 Fix fuzzer build for C++ 2070 * fuzz/wget_css_fuzzer.c: Include wget.h outside 'extern "C"', 2071 undef fopen_wgetrc directly after wget.h 2072 * fuzz/wget_html_fuzzer.c: Likewise 2073 2074 * fuzz/Makefile.am: Add -I/lib to oss-fuzz builds 2075 2076 Add new HTML parser fuzzer 2077 * fuzz/Makefile.am: Add wget_html_fuzzer 2078 * fuzz/wget_html_fuzzer.c: New fuzzer 2079 * fuzz/wget_html_fuzzer.dict: HTML dictionary for fuzzing 2080 * fuzz/wget_html_fuzzer.in: Initial corpora 2081 * src/html-url.c: Add new function get_urls_html_fm() 2082 * src/html-url.h: Add ne function get_urls_html_fm() 2083 * src/wget.h: Fix define for fopen_wgetrc() 2084 2085 * fuzz/wget_css_fuzzer.c: Fix build 2086 2087 * fuzz/wget_css_fuzzer.in/*: Update fuzzer corpora 2088 2089 * src/css-url.c (get_uri_string): Fix buffer overflow (read) 2090 2091 * src/iri.h: Fix C++ compile error 2092 20932018-04-19 Tim Rühsen <tim.ruehsen@gmx.de> 2094 2095 * src/http.c: Download and scan CSS files in spider mode 2096 2097 * src/css-url.c (get_urls_css): Call yylex_destroy() to reset CSS scanner 2098 2099 Add new fuzzer wget_css_fuzzer.c 2100 * fuzz/Makefile.am: Add wget_css_fuzzer.c 2101 * fuzz/wget_css_fuzzer.c: New fuzzer 2102 21032018-04-18 Tim Rühsen <tim.ruehsen@gmx.de> 2104 2105 * src/html-url.h: Include needed header files 2106 2107 * wget_options_fuzzer.in/*: Update fuzzer corpora 2108 2109 * fuzz/README.md: Add CXXFLAGS and more configure options 2110 2111 Fix oss-fuzz issue with exit() 2112 * src/wget.h: Define exit() as exit_wget() 2113 * fuzz/wget_options_fuzzer.c: Implement exit_wget() and cleanup 2114 21152018-04-17 Tim Rühsen <tim.ruehsen@gmx.de> 2116 2117 * fuzz/wget_options_fuzzer.c: Declare fopen_* as C functions 2118 2119 Fix fopen/stdin issues with fuzzing 2120 * fuzz/wget_options_fuzzer.c: Add fopen_wget() and fopen_wgetrc() 2121 * src/utils.c: Use fopen_wgetrc() for config files, 2122 don't read from stdin when fuzzing 2123 * src/wget.h: Define fopen as fopen_wget when fuzzing, 2124 define fopen_wgetrc as fopen when not fuzzing 2125 2126 * configure.ac: AC_DEFINE FUZZING if --enable-fuzzing was given 2127 2128 * fuzz/wget_options_fuzzer.c: Write fuzzer crash reports 2129 2130 * src/log.c: Don't check_redirect_output() when fuzzing 2131 2132 * src/main.c (promt_for_password): Avoid getpass() when fuzzing 2133 2134 Fix double fclose() with -d while fuzzing 2135 * src/ftp.c (ftp_loop_internal): Set warc_tmp to NULL after ffclose() 2136 * src/init.c (cleanup): Set output_stream to NULL after fclose() 2137 * src/log.c (log_close): Set global stream vars to NULL after closing 2138 * src/recur.c (retrieve_tree): Set rejectedlog to NULL after closing 2139 * src/warc.c (warc_close): Set stream vars to NULL after closing 2140 2141 * src/main.c (main): Don't background if TESTING 2142 2143 * src/init.c (initialize): Return error, don't exit() 2144 21452018-04-16 Tim Rühsen <tim.ruehsen@gmx.de> 2146 2147 * src/init.c (cmd_use_askpass): Return false on error 2148 2149 * src/utils.c (compile_posix_regex): Hard-code string to regcomp 2150 regcomp() may be too cpu + memory intensive for fuzzing. 2151 See https://sourceware.org/glibc/wiki/Security%20Exceptions 2152 2153 Fix 2 more memleaks 2154 * src/init.c (initialize): Use global var for wgetrc filename 2155 * src/iri.c (find_locale): Return strdup'ed locale string 2156 * src/options.h (struct options): Add wgetrcfile 2157 2158 * src/init.c (cleanup): Set output_stream to NULL after closing 2159 2160 Fix homedir memory leaks 2161 * src/hsts.c: Use opt.homedir 2162 * src/init.c: Likewise 2163 * src/main.c: Likewise 2164 * src/netrc.c: Likewise 2165 * src/options.h (struct options): Add homedir 2166 2167 * src/main.c (main): Free opt.encoding_remote properly 2168 2169 * src/host.c (wait_ares): Free ptimer 2170 2171 * src/init.c (cleanup): Free regex objects properly 2172 2173 * src/init.c (cleanup): Never call cleanup() twice 2174 2175 * src/init.c (cmd_bytes_sum): Fix integer over- and underflow 2176 2177 * src/main.c (save_hsts): Free hsts_store after closing 2178 2179 Use strtol() instead of selfmade function 2180 * src/init.c (cmd_number): Use strtol() instead of selfmade function 2181 * bootstrap.conf: Add strtol gnulib module 2182 2183 * src/hsts.c (hsts_hash_func): Allow integer overflow 2184 2185 * init.c (cmd_spec_mirror): Fix uninitialzed stack variable 2186 2187 * src/init.c (cleanup): Free more variables 2188 2189 * wget_options_fuzzer.in: Add corpora directory 2190 2191 * fuzz/wget_options_fuzzer.c: Suppress error messages from wget 2192 2193 * src/utils.c (fopen_stat): Early return to allow fuzzing/fmemopen 2194 2195 * src/init.c (initialize): Free mem before exit() 2196 2197 Add OSS-Fuzz infrastruture 2198 * Makefile.am: Add fuzz/ to SUBDIRS 2199 * cfg.mk: Fix 'make syntax-check' 2200 * configure.ac: Add --enable-fuzzing 2201 * fuzz/Makefile.am: New file 2202 * fuzz/README.md: New file 2203 * fuzz/fuzzer.h: New file 2204 * fuzz/get_all_corpora: New file 2205 * fuzz/get_ossfuzz_corpora: New file 2206 * fuzz/glob_crash.c: New file 2207 * fuzz/main.c: New file 2208 * fuzz/run-afl.sh: New file 2209 * fuzz/run-clang.sh: New file 2210 * fuzz/view-coverage.sh: New file 2211 * fuzz/wget_options_fuzzer.c: New file 2212 * fuzz/wget_options_fuzzer.dict: New file 2213 * src/init.c (cleanup): Free more resources 2214 * src/main.c (init_switches): Initialize only once, 2215 (print_usage): Don't print if TESTING is defined 2216 * src/utils.h: Include wget.h 2217 22182018-04-05 Tim Rühsen <tim.ruehsen@gmx.de> 2219 2220 Move unit-test code to tests/ 2221 * src/Makefile.am: Remove test.c and test.h 2222 * src/test.c: Rename to tests/unit-tests.c 2223 * src/test.h: Rename to tests/unit-tests.h 2224 * tests/Makefile.am: Add unit-tests.c and unit-tests.h 2225 * src/hsts.c: Amend #include 2226 * src/http.c: Likewise 2227 * src/init.c: Likewise 2228 * src/metalink.c: Likewise 2229 * src/res.c: Likewise 2230 * src/url.c: Likewise 2231 * src/utils.c: Likewise 2232 2233 * src/main.c: Rename main() -> main_wget() for unit tests 2234 22352018-03-14 Tim Rühsen <tim.ruehsen@gmx.de> 2236 2237 Fix some issues found by 'infer' 2238 22392018-03-08 Tim Rühsen <tim.ruehsen@gmx.de> 2240 2241 * src/openssl.c: Fix build for OpenSSL 1.1.0 without TLS1_3_VERSION 2242 2243 Add docs for --secure-protocol=TLSv1_3 2244 * doc/wget.texi: Likewise 2245 22462018-03-08 Loganaden Velvindron <logan@hackers.mu> (tiny change) 2247 2248 Add TLS1.3 support for OpenSSL build 2249 * src/init.c: Add 'tlsv1_3 for --secure-protocol 2250 * src/openssl.c (ssl_init): Enable TLS1.3 if possible 2251 * src/options.h: Add secure_protocol_tlsv1_3 2252 * doc/wget.texi: Add description of TLSv1_3 2253 22542018-03-07 Tim Rühsen <tim.ruehsen@gmx.de> 2255 2256 * src/main.c: Add help text for --retry-on-http-error 2257 Reported-by: Giovanni Tirloni 2258 22592018-03-01 Tim Rühsen <tim.ruehsen@gmx.de> 2260 2261 * src/url.c (convert_fname): Fix invalid free on iconv_open() failure 2262 Reported-by: Volkmar Klatt 2263 22642018-02-21 Tim Rühsen <tim.ruehsen@gmx.de> 2265 2266 * src/mswindows.c: Fix prototype of fork_to_background() 2267 Reported-by: Gisle Vanem 2268 22692018-02-09 Tim Rühsen <tim.ruehsen@gmx.de> 2270 2271 Fix warning to not print binary IP address 2272 * tests/Test-https-badcerts.px: Likewise 2273 * tests/Test-https-clientcert.px: Likewise 2274 * tests/Test-https-crl.px: Likewise 2275 * tests/Test-https-pfs.px: Likewise 2276 * tests/Test-https-selfsigned.px: Likewise 2277 * tests/Test-https-tlsv1.px: Likewise 2278 * tests/Test-https-tlsv1x.px: Likewise 2279 * tests/Test-https-weboftrust.px: Likewise 2280 2281 Use gnulib's utime() 2282 * bootstrap.conf: Add modules utime and utime-h 2283 * src/utils.c (touch): Remove own code for gnulib's utime() 2284 22852018-02-09 Tim Rühsen <tim.ruehsen@gmx.de> 2286 2287 Fix logging in background mode 2288 * ../src/main.c: Re-init logfile if changed for background mode 2289 * ../src/utils.c: fork_to_background() returns whether logfile changed 2290 * ../src/utils.h: Set return type bool for fork_to_background() 2291 2292 Fixes: #53020 2293 Reported-by: Noël Köthe 2294 22952018-02-09 Tim Rühsen <tim.ruehsen@gmx.de> 2296 2297 * src/http.c: Fix two typos in comments 2298 22992018-01-31 Tim Rühsen <tim.ruehsen@gmx.de> 2300 2301 * testenv/conf/expected_files.py: Ignore pubring.gpg 2302 Reported-by: Arkadiusz Miśkiewicz 2303 2304 * bootstrap.conf: Replace gnulib module gettext by gettext-h 2305 23062018-01-22 Tim Rühsen <tim.ruehsen@gmx.de> 2307 2308 Mention list and bugtracker for --help and in man page 2309 * doc/wget.texi: Mention list and bugtracker in man page 2310 * src/main.c: Mention list and bugtracker for --help 2311 23122018-01-21 Darshit Shah <darnir@gnu.org> 2313 2314 * contrib/make-release: Add another release script 2315 2316 Update NEWS file for new release 2317 2318 Fix typo in documentation 2319 23202018-01-21 Darshit Shah <darnir@gnu.org> 2321 2322 Switch off compression by default 2323 Gzip compression has a number of bugs which need to be ironed out before 2324 we can support it by default. Some of these stem from a misunderstanding 2325 of the HTTP spec, but a lot of them are also due to many web servers not 2326 being compliant with RFC 7231. 2327 2328 With this commit, I am marking GZip compression support as experimental 2329 in GNU Wget pending further investigation and the addition of tests. 2330 2331 * src/init.c (defaults): Switch of compression support by default 2332 * docs/wget.texi: State that compression is experimental 2333 23342018-01-21 Darshit Shah <darnir@gnu.org> 2335 2336 Pull gnulib module forward 2337 2338 Revert "* src/init.c (defaults): Set compression_none as the default compression" 2339 This reverts commit 8283ac08467016283277578b96533febb8ce1adb. 2340 2341 * src/init.c (defaults): Set compression_none as the default compression 2342 23432018-01-20 Reiji <gey3dr@gmail.com> 2344 2345 * src/http.c (gethttp): Fix bug that prevented all files from being decompressed 2346 23472018-01-19 Tim Rühsen <tim.ruehsen@gmx.de> 2348 2349 * src/host.c (sufmatch): Fix to domain matching 2350 23512018-01-17 Gisle Vanem <gvanem@yahoo.no> 2352 2353 * src/netrc.c: Fix Standalone compilation of netrc file 2354 23552018-01-14 Darshit Shah <darnir@gnu.org> 2356 2357 * NEWS: Update NEWS file for new release 2358 2359 * bootstrap: Use the faster gnulib-tool.py script if possible 2360 2361 Sync the bootstrap script from gnulib 2362 2363 Update Copyright years 2364 2365 Replace HTTP urls with HTTPS where valid 2366 2367 Update gnulib 2368 2369 * src/netrc.c: Search for the correct netrc file on Windows 2370 23712018-01-10 Tim Rühsen <tim.ruehsen@gmx.de> 2372 2373 * src/http.c: Exclude *.gz and *.tgz from decompression 2374 23752017-12-31 Tim Rühsen <tim.ruehsen@gmx.de> 2376 2377 * src/utils.c (wg_pin_peer_pubkey): Fix format warning 2378 23792017-12-31 Peter Wu <peter@lekensteyn.nl> 2380 2381 Avoid redirecting output to file when tcgetpgrp fails 2382 * src/log.c (check_redirect_output): tcgetpgrp can return -1 (ENOTTY), 2383 be sure to check whether a valid controlling terminal exists before 2384 redirecting. 2385 2386 Fixes: #51181 2387 23882017-12-11 Darshit Shah <darnir@gnu.org> 2389 2390 Add new test for 416 responses 2391 * testenv/server/http/http_server.py: If there are multiple requests in 2392 which the requested range is unsatisfiable, then send a body in the in 2393 the 2nd response onwards 2394 * testenv/Test-416.py: New test to check how Wget handles 416 responses 2395 23962017-12-08 Darshit Shah <darnir@gnu.org> 2397 2398 Don't assume a 416 response has no body 2399 * http.c(gethttp): In case of a 416 response, try to drain the socket of 2400 any bytes before reusing the connection 2401 2402 Reported-By: Iru Cai <mytbk920423@gmail.com> 2403 24042017-11-26 Tim Rühsen <tim.ruehsen@gmx.de> 2405 2406 Support building with OpenSSL 1.1 w/o deprecated features 2407 * src/openssl.c (ssl_init): Fix code for the subject's issue 2408 2409 Reported-by: Matthew Thode 2410 24112017-11-25 Tim Rühsen <tim.ruehsen@gmx.de> 2412 2413 Avoid link conversion after 304 Not Modified 2414 * src/http.c (gethttp): Handle 304 before setting document content type 2415 2416 Fixes: #52404 2417 Reported-by: Ben Fuchs 2418 24192017-11-16 YX Hao <lifenjoiner@163.com> 2420 2421 Fix printing mutibyte chars as unprintable chars on Windows 2422 * src/log.c (get_warc_log_fp): Fix return value to stderr 2423 * src/main.c (main): Init logging as soon as possible, 2424 fix locale/charset on Windows 2425 24262017-11-16 Tim Rühsen <tim.ruehsen@gmx.de> 2427 2428 * tests/Test-https-weboftrust.px: Fix/add sslport 2429 24302017-11-15 YX Hao <lifenjoiner@163.com> 2431 2432 Convert remote path to local encoding 2433 * src/url.c (url_file_name): Convert remote path to local encoding 2434 24352017-11-10 Tim Rühsen <tim.ruehsen@gmx.de> 2436 2437 Do not use must-revalidate in Cache-Control header 2438 As the bug report states, 'must-revalidate' is a request directive. 2439 2440 Fixes #52379 2441 24422017-11-06 Darshit Shah <darnir@gnu.org> 2443 2444 Fix Segfault due to derefencing null ptr 2445 * src/http.c(gethttp): When Encoding is gzip, ensure that the 2446 Content-Type Header was actually seen. Without this, the "type" variable 2447 is null causing a Segfault. 2448 2449 Reported-By: Noël Köthe <noel@debian.org> 2450 24512017-11-03 Tim Rühsen <tim.ruehsen@gmx.de> 2452 2453 * src/http.c: Fix H_REDIRECTED 2454 2455 * src/http.c: Add support for HTTP status code 308 2456 24572017-10-30 Tim Rühsen <tim.ruehsen@gmx.de> 2458 2459 Fix uninitialized value messages in tests 2460 * tests/Test-https-*.px: Use correct variable in error message 2461 2462 Reported-by: Jeffrey Walton 2463 24642017-10-30 Tim Rühsen <tim.ruehsen@gmx.de> 2465 2466 Ignore dirmngr.conf, gpg.conf in test directories 2467 * testenv/conf/expected_files.py: Ignore dirmngr.conf, gpg.conf 2468 2469 Libgpgme creates certain files if $HOME doesn't contain the .gnupg directory. 2470 These files disturb some metalink tests if we don't ignore them. 2471 2472 Reported-by: Arkadiusz Miśkiewicz <arekm@maven.pl> 2473 24742017-10-27 Tim Rühsen <tim.ruehsen@gmx.de> 2475 2476 * contrib/release: Cleanup, use lzip instead of xz 2477 24782017-10-26 Tim Rühsen <tim.ruehsen@gmx.de> 2479 2480 Fix heap overflow in HTTP protocol handling (CVE-2017-13090) 2481 * src/retr.c (fd_read_body): Stop processing on negative chunk size 2482 2483 Reported-by: Antti Levomäki, Christian Jalio, Joonas Pihlaja from Forcepoint 2484 Reported-by: Juhani Eronen from Finnish National Cyber Security Centre 2485 24862017-10-26 Tim Rühsen <tim.ruehsen@gmx.de> 2487 2488 Fix stack overflow in HTTP protocol handling (CVE-2017-13089) 2489 * src/http.c (skip_short_body): Return error on negative chunk size 2490 2491 Reported-by: Antti Levomäki, Christian Jalio, Joonas Pihlaja from Forcepoint 2492 Reported-by: Juhani Eronen from Finnish National Cyber Security Centre 2493 24942017-10-26 Tim Rühsen <tim.ruehsen@gmx.de> 2495 2496 Update for release 1.19.2 2497 * NEWS: Add news for 1.19.2 2498 * doc/wget.texi: Fix 1.20 to 1.19.2 2499 25002017-10-25 YX Hao <lifenjoiner@163.com> 2501 2502 Avoid unnecessary UTF-8 encoded fallback (trivial change) 2503 * src/retr.c (retrieve_url): Check for changed URL on redirect 2504 25052017-09-27 Tim Rühsen <tim.ruehsen@gmx.de> 2506 2507 Add GNU extensions to .netrc parsing 2508 src/netrc.c (parse_netrc): Add 'port' and 'force' extensions 2509 2510 Reported-by: September 20Tim Landscheidt 2511 25122017-09-18 Josef Moellers <jmoellers@suse.de> 2513 2514 Bail out on unexpected 416 server errors 2515 * src/http.c (gethttp): Stop on 416 if file is incomplete 2516 25172017-08-04 Tim Schlueter <schlueter.tim@linux.com> 2518 2519 Add gzip Content-Encoding decompression 2520 * src/http.c (struct http_stat): Add remote_encoding field. 2521 (read_response_body): Enable gzip decompression. 2522 (initialize_request): Send gzip Accept-Encoding header. 2523 (gethttp): Decompress files with gzip Content-Encoding. 2524 * src/retr.c: include zlib.h. 2525 (zalloc): New function. 2526 (zfree): New function. 2527 (fd_read_body): Decompress gzip data. 2528 * src/retr.h (fd_read_body enum): Add rb_compressed_gzip flag. 2529 2530 Add --compression option 2531 * doc/wget.texi: Add --compression documentation. 2532 * src/init.c (cmd_spec_compression): New function. 2533 (commands[]): Add opt.compression. 2534 (defaults): Set default opt.compression value. 2535 * src/main.c (option_data[]): Add struct for --compression. 2536 (print_help, help[]): Add description for --compression. 2537 (main): Add incompatibility checks for --compression. 2538 * src/options.h (struct options): Add compression enum and field. 2539 2540 Adjust Extension based on Content-Encoding 2541 * doc/wget.texi (--adjust-extension, adjust_extension): Updated documentation. 2542 * src/http.c (encoding_t): New enum. 2543 (struct http_stat): Add local_encoding field. 2544 (gethttp): --adjust-extension based on Content-Encoding. 2545 25462017-07-31 Darshit Shah <darnir@gnu.org> 2547 2548 Document gperf as a requirement 2549 25502017-07-28 Tim Rühsen <tim.ruehsen@gmx.de> 2551 2552 * src/url.c (url_scheme): Use ASCII version of strncasecmp 2553 25542017-07-28 Tim Rühsen <tim.ruehsen@gmx.de> 2555 2556 Fix misuse of strncasecmp 2557 * src/http.c (set_content_type): Use c_strcasecmp instead of strncasecmp 2558 2559 See issue bug #51576 2560 25612017-07-09 Tim Rühsen <tim.ruehsen@gmx.de> 2562 2563 Fix python test suite for GnuTLS 3.5.12+ 2564 * testenv/Test-*.py: Replace 127.0.0.1 by localhost 2565 * testenv/certs/server-template.cfg: Likewise 2566 * testenv/certs/server-cert.pem: Regenerate 2567 * testenv/certs/server-crl.pem: Likewise 2568 * testenv/test/base_test.py: Hardcode 'localhost' as server domain 2569 2570 Reported-by: Ludovic Courtès <ludo@gnu.org> 2571 25722017-06-13 Tim Rühsen <tim.ruehsen@gmx.de> 2573 2574 Check for 304 response before applying --adjust-extension 2575 * src/http.c (gethttp): Move 304 code before --adjust-extension code 2576 2577 This fixes applying --adjust-extension in combination with 304 2578 HTTP responses. It could lead to .html extensions to arbitrary 2579 files. 2580 2581 Reported-by: anfractuosity 2582 25832017-06-13 Tim Rühsen <tim.ruehsen@gmx.de> 2584 2585 Fix buffer overflow in Public Key Pinning 2586 * src/utils.c (wget_base64_decode): Add param for destination size, 2587 (wg_pubkey_pem_to_der): Amend call to wget_base64_decode(), 2588 (wg_pin_peer_pubkey): Likewise and fix code style. 2589 * src/utils.h: Add param to wget_base64_decode() 2590 * src/http-ntlm.c (ntlm_input): Amend call to wget_base64_decode() 2591 * src/http.c (skip_content_type): Likewise 2592 2593 Fixes #51227 2594 25952017-06-02 Tim Rühsen <tim.ruehsen@gmx.de> 2596 2597 * doc/wget.texi: Mention --no-config 2598 25992017-05-16 Tim Rühsen <tim.ruehsen@gmx.de> 2600 2601 * testenv/Test-recursive-basic.py: Check crawled files 2602 2603 Fix two Metalink tests if $HOME is changed 2604 * conf/expected_files.py (gen_local_fs_snapshot): Skip processing 2605 of 'pubring.kbx' 2606 26072017-05-15 Tomas Hozza <thozza@redhat.com> 2608 2609 Add command line option to disable use of .netrc 2610 Although internally code uses option for (not) reading .netrc for 2611 credentials, it was not possible to turn this behavior off on command 2612 line. Note that it was possible to turn it off using wgetrc. 2613 2614 Idea for this change came from Bruce Jerrick (bmj001@gmail.com). 2615 Reference: https://bugzilla.redhat.com/show_bug.cgi?id=1425097 2616 26172017-05-15 Tomas Hozza <thozza@redhat.com> 2618 2619 Fixed getting of credentials from .netrc 2620 There seemed to be a copy&paste error in http.c code, which decides 2621 whether to get credentials from .netrc. In ftp.c "user" and "pass" 2622 variables are char*, while in http.c, these are char**. For this reason 2623 they should be dereferenced when determining if password and user login 2624 is set to some value. 2625 2626 Also since both variables are dereferenced on lines above the changed 2627 code, it does not really make sense to check if they are NULL. 2628 2629 This patch is based on fix from Bruce Jerrick <bmj001@gmail.com>. 2630 Fedora bug: https://bugzilla.redhat.com/show_bug.cgi?id=1425097 2631 26322017-05-15 Tomas Hozza <thozza@redhat.com> 2633 2634 Added tests for HTTP authentication using credentials from .netrc 2635 Getting credentials from .netrc has been broken from time to time, thus 2636 adding a test coverage to prevent regressions. 2637 2638 Also added setting of "HOME" environment variable when executing wget, 2639 to make sure LocalFiles like .netrc, which are created just for the 2640 test, are actually used. 2641 26422017-05-15 Tim Rühsen <tim.ruehsen@gmx.de> 2643 2644 Fix Test-https-badcerts.px 2645 * util/createcerts.sh: Set date of invalid cert to +20 years 2646 * tests/certs/invalid.crt: Re-generated 2647 * tests/certs/invalid.key: Re-generated 2648 26492017-05-14 Tim Rühsen <tim.ruehsen@gmx.de> 2650 2651 * util/createcerts.sh: Fix double equal (syntax-check) 2652 2653 Fix Test-https-badcerts.px to work with GnuTLS 2654 * tests/Test-https-badcerts.px: Remove OpenSSL requirement 2655 * tests/certs/expired.crt: Re-created with valid dates 2656 * tests/certs/expired.key: Likewise 2657 * tests/certs/invalid.crt: Likewise 2658 * tests/certs/invalid.key: Likewise 2659 26602017-05-14 Vijo Cherian <codervijo@gmail.com> 2661 2662 New shell script to create the certs and keys required for TLS tests 2663 * util/createcerts.sh: New file 2664 26652017-05-11 Tim Rühsen <tim.ruehsen@gmx.de> 2666 2667 Fix HTTPS testing for stricter OpenSSL 2668 * testenv/certs/README: Amend cert creation extensions 2669 * testenv/certs/ca-cert.pem: Created without OCSP signing purpose 2670 2671 Having the OCSP signing purpose set made newer versions of OpenSSL 2672 fail due to stricter checking. Test version of OpenSSL was 1.1.0e. 2673 26742017-05-11 Tim Rühsen <tim.ruehsen@gmx.de> 2675 2676 * src/iri.c (idn_encode): Better IDNA 2003 compatibility 2677 26782017-05-10 Tim Rühsen <tim.ruehsen@gmx.de> 2679 2680 * .gitlab-ci.yml: Also test OpenSSL build 2681 2682 * .gitlab-ci.yml: Remove installation of texlive 2683 26842017-05-10 Tim Rühsen <tim.ruehsen@gmx.de> 2685 2686 Add certs/wotca.pem to avoid temp. file creation 2687 * tests/certs/wotca.pem: New file 2688 * tests/Test-https-weboftrust.px: Remove creation of wotca.pem 2689 2690 This change let Test-https-weboftrust.px survive VPATH builds. 2691 26922017-05-10 Tim Rühsen <tim.ruehsen@gmx.de> 2693 2694 * cfg.mk: Exclude ^tests/certs/.* from syntax-check 2695 2696 * po/POTFILES.in: Remove spider.c (syntax-check) 2697 2698 * tests/Test-https-selfsigned.px: Add newline at EOF (syntax-check) 2699 27002017-05-10 Vijo Cherian <codervijo@gmail.com> 2701 2702 Removed all uses of temp files. Added needed files to GIT 2703 2704 Made CRL related files in the repo, instead of trying to generate them 2705 27062017-05-09 Tim Rühsen <tim.ruehsen@gmx.de> 2707 2708 Cleanup on exit in Test-https-*.px 2709 * tests/Test-https-*.px: Cleanup on exit 2710 2711 Auto-generate interca.conf and rootca.conf 2712 * configure.ac: Add interca.conf.in and rootca.conf.in to AC_CONFIG_FILES 2713 * tests/certs/interca.conf: Removed 2714 * tests/certs/rootca.conf: Removed 2715 * tests/certs/interca.conf.in: New file 2716 * tests/certs/rootca.conf.in: New file 2717 2718 Fix path and VPATH issues of new https/TLS tests 2719 * tests/SSLTest.pm: Use $srcdir in read-only files, 2720 (_setup_server): Remove unneeded path fixation code 2721 * tests/Test-https-*.px: Use $srcdir for read-only files, 2722 use $cdir for writable files 2723 * tests/certs/interca.conf: Adjust paths 2724 * tests/certs/rootca.conf: Adjust paths 2725 2726 Check for test server name resolution in tests 2727 * tests/Test-https-*.px: Skip if test server name resolution fails 2728 2729 * tests/Makefile.am: Enable Test-https-badcerts again 2730 2731 Fix WgetFeature.pm to allow multiple required features 2732 * tests/WgetFeature.cfg: Remove file 2733 * tests/WgetFeature.pm: Extend to multiple features, cleanup 2734 2735 * .gitlab-ci.yml: Add wgettestingserver to /etc/hosts 2736 2737 * tests/SSLServer.pm: Check for IO::Socket::SSL 2738 2739 * tests/Test-https-*: Change server port to <= 32767 2740 2741 Move https test server ports from >32767 to <= 32767 2742 * Test-https-badcerts.px: Change port 2743 * Test-https-crl.px: Likewise 2744 * Test-https-weboftrust.px: Likewise 2745 2746 * tests/Makefile.am: Add SSLTest.pm and SSLServer.pm to EXTRA_DIST 2747 2748 * tests//Makefile.am: Disable Test-https-badcerts.px 2749 2750 Add Gitlab CI (Debian) 2751 * .gitlab-ci.yml: New file 2752 27532017-05-06 Tim Rühsen <tim.ruehsen@gmx.de> 2754 2755 * .travis.yml: Use trusty for libidn2-dev 2756 27572017-05-04 Tim Rühsen <tim.ruehsen@gmx.de> 2758 2759 * tests/certs/test-ca-key.pem: Add newline at EOF 2760 2761 Add static HOSTSALIAS file 2762 * tests/certs/wgethosts: New file 2763 * tests/Test-https-*.px: Remove creation of wgethosts file 2764 27652017-05-04 Vijo Cherian <codervijo@gmail.com> 2766 2767 Added new tests for SSL 2768 * tests/Test-https-badcerts.px : New file 2769 * tests/Test-https-clientcert.px : New file 2770 * tests/Test-https-crl.px : New file 2771 * tests/Test-https-weboftrust.px : New file 2772 * tests/certs/interca.conf : New file 2773 * tests/certs/rootca.conf : New file 2774 * tests/certs/test-ca-key.pem : New file 2775 2776 Added all new SSL / HTTPS tests to make check 2777 Added Test for SSL Web of Trust, accept only if CA chain of trust is intact. 2778 Added a test script for client certificate 2779 Added Test for crlfile option of wget 2780 Added test to make sure that wget doesn't accept expired or invalid certs 2781 2782 Some clean up : 1, Removed cause of warnings from perl & other cosmetic changes 2783 2, Fix make -j 4 check such that it passes all tests 2784 27852017-05-04 Tomas Hozza <thozza@redhat.com> 2786 2787 Mention TLSv1_1 and TLSv1_2 as secure-protocol values in help 2788 * src/main.c: The --secure-protocol option accepts also values TLSv1_1 2789 and TLSv1_2, as mentioned in the man page. However the help message 2790 doesn't mention these two values. This patch adds TLSv1_1 and TLSv1_2 as 2791 possible values to the help message. 2792 27932017-05-03 Tim Rühsen <tim.ruehsen@gmx.de> 2794 2795 * src/http.c (gethttp): Support Wayback Machine's X-Archive-Orig-last-modified 2796 27972017-04-28 Vijo Cherian <codervijo@gmail.com> 2798 2799 Added new tests for SSL 2800 * tests/Test-https-badcerts.px : New file 2801 * tests/Test-https-clientcert.px : New file 2802 * tests/Test-https-crl.px : New file 2803 * tests/Test-https-weboftrust.px : New file 2804 * tests/certs/interca.conf : New file 2805 * tests/certs/rootca.conf : New file 2806 * tests/certs/test-ca-key.pem : New file 2807 2808 Added all new SSL / HTTPS tests to make check 2809 Added Test for SSL Web of Trust, accept only if CA chain of trust is intact. 2810 Added a test script for client certificate 2811 Added Test for crlfile option of wget 2812 Added test to make sure that wget doesn't accept expired or invalid certs 2813 2814 Some clean up : Removed cause of warnings from perl & other cosmetic changes 2815 28162017-04-19 Vijo Cherian <codervijo@gmail.com> 2817 2818 Added new tests for SSL 2819 * tests/SSLServer.pm: New file 2820 * tests/SSLTest.pm: New file 2821 * tests/Test-https-pfs.px: New file 2822 * tests/Test-https-selfsigned.px: New file 2823 * tests/Test-https-tlsv1.px: New file 2824 * tests/Test-https-tlsv1x.px: New file 2825 * tests/certs/server.crt: New file 2826 * tests/certs/server.key: New file 2827 * tests/certs/test-ca-cert.pem: New file 2828 2829 Added 4 new test scripts all for SSL. 2830 Added base pm for SSL testing. 2831 Added SSL tests for TLSv1, TLSv1_1 and PFS. 2832 Added test for self signed cert : check that it fails without 2833 --no-check-certificate and passes with that flag. 2834 28352017-04-18 Tim Rühsen <tim.ruehsen@gmx.de> 2836 2837 * src/utils.c: Remove non-portable __builtin_unreachable() 2838 28392017-04-18 Tim Rühsen <tim.ruehsen@gmx.de> 2840 2841 Skip iconv() usage if HAVE_ICONV is not defined 2842 This helps on broken iconv implementations, e.g. Solaris. 2843 2844 Reported-by: Mojca Miklavec 2845 28462017-04-18 Tim Rühsen <tim.ruehsen@gmx.de> 2847 2848 Mention 'bash' for executing ./bootstrap 2849 Reported-by: Mojca Miklavec 2850 28512017-04-18 Tim Rühsen <tim.ruehsen@gmx.de> 2852 2853 * bootstrap.conf: Make 'sed' options more portable 2854 'sed -i' works differently on FreeBSD. 2855 2856 Reported-by: Mojca Miklavec 2857 28582017-04-16 Tim Rühsen <tim.ruehsen@gmx.de> 2859 2860 Fix charset transcoding issue for non-reversible codepoints 2861 * src/url.c: Check iconv() against 0, not -1 2862 2863 On some libiconv implementations, unknown codepoints become 2864 encoded as ?, e.g. when converting a non-ascii codepoint to ASCII. 2865 This results in ambigious file names which also fails our tests. 2866 28672017-04-16 Tim Rühsen <tim.ruehsen@gmx.de> 2868 2869 * src/iri.c: Fix WIN32 idn2_free, forgotten code 2870 28712017-04-14 Darshit Shah <darnir@gnu.org> 2872 2873 * src/init.c: Set flstats correctly when using WGETRC env var 2874 28752017-04-08 Tim Rühsen <tim.ruehsen@gmx.de> 2876 2877 Fix use of idn2_free() 2878 * src/connect.c (connect_to_ip): Use xfree() instead of idn2_free() 2879 * src/host.c (lookup_host): Use xfree() instead of idn2_free() 2880 * src/iri.h: Do not include idn2.h 2881 * src/url.c (url_free): Use xfree() instead of idn2_free() 2882 * src/url.h (struct url): Remove 'idn_allocated' from struct 2883 2884 Reported-by: Gisle Vanem 2885 28862017-04-05 Anton Yuzhaninov <citrin+github@citrin.ru> 2887 2888 Fix perl warnings in tests 2889 * tests/FTPServer.pm: Escape '{' in RE to fix warnings 2890 * tests/FTPTest.pm: Likewise 2891 * tests/HTTPServer.pm: Likewise 2892 * tests/HTTPTest.pm: Likewise 2893 * tests/Test-proxied-https-auth-keepalive.px: Likewise 2894 * tests/Test-proxied-https-auth.px: Likewise 2895 Escape '{' in RE to fix warnings: 2896 Unescaped left brace in regex is deprecated, passed through in regex; 2897 marked by <-- HERE in m/{{ <-- HERE port}}/ 2898 28992017-04-01 klemens <ka7@github.com> 2900 2901 Fix typos in comments 2902 29032017-03-31 Tim Rühsen <tim.ruehsen@gmx.de> 2904 2905 * src/metalink.c (retrieve_from_metalink): Fix len in memset() 2906 29072017-03-24 Tim Rühsen <tim.ruehsen@gmx.de> 2908 2909 Add gnulib module group-member 2910 29112017-03-24 Vijo Cherian <codervijo@gmail.com> 2912 2913 Safeguards against TOCTTOU 2914 * src/utils.h: Add struct file_stat_s declaration, 2915 change prototypes of file_exists_p(), 2916 add prototypes for fopen_stat() and open_stat(). 2917 * src/utils.c: Extend file_exists_p(), 2918 new function fopen_stat() and open_stat(), 2919 add new param for file_exists_p(). 2920 * src/init.h: Add param file_stats_t to run_wgetrc(). 2921 * src/ftp.c: Amend calls to extended functions. 2922 * src/hsts.c: Likewise. 2923 * src/http.c: Likewise. 2924 * src/init.c: Likewise. 2925 * src/main.c: Likewise. 2926 * src/metalink.c: Likewise. 2927 * src/retr.c: Likewise. 2928 * src/url.c: Likewise. 2929 2930 Added fopen_stat() and open_stat() that checks to makes sure the file didn't 2931 change underneath us. 2932 Return error from file_exists_p(). 2933 Added a way to return error from this file without major surgery to the 2934 callers. 2935 2936 Fixes: #20369 2937 29382017-03-24 Tim Rühsen <tim.ruehsen@gmx.de> 2939 2940 Update gnulib 2941 29422017-03-22 Christof Horschitz <christof@nimbusec.com> 2943 2944 * src/warc.c (warc_write_cdx_record): Escape URLs 2945 29462017-03-20 Mike Frysinger <vapier@gentoo.org> 2947 2948 Include libunistring headers only when used 2949 * src/iri.c: Check for libidn2 < 0.14 to include libunistring headers 2950 2951 The unistring functions are used only when an older version of libidn2 2952 is used, so don't include its headers either w/newer libdin2 versions. 2953 29542017-03-18 Tim Rühsen <tim.ruehsen@gmx.de> 2955 2956 Fix links to www.robotstxt.org 2957 * NEWS: Fix links 2958 * doc/wget.texi: Likewise 2959 * src/res.c: Likewise 2960 2961 Reported-by: Noël Köthe 2962 29632017-03-13 Tim Rühsen <tim.ruehsen@gmx.de> 2964 2965 * tests/WgetTests.pm: Add -d to Wget test options 2966 29672017-03-08 Tim Rühsen <tim.ruehsen@gmx.de> 2968 2969 Include <arpa/inet.h> for Windows 2970 Reported-by: Gisle Vanem 2971 29722017-03-08 Tim Rühsen <tim.ruehsen@gmx.de> 2973 2974 Fix updating HSTS entries 2975 * src/hsts.c (hsts_store_entry): Always update 'created' field 2976 2977 Fixes: #50490 2978 Reported-by: Deian Stefan, Atyansh Jaiswal, Jonathan Luck 2979 29802017-03-06 Tim Rühsen <tim.ruehsen@gmx.de> 2981 2982 Fix CRLF injection in Wget host part 2983 * src/url.c (url_parse): Reject control characters in host part of URL 2984 2985 Reported-by: Orange Tsai 2986 29872017-03-04 Benjamin Esham <benjamin@esham.io> 2988 2989 * src/warc.c: Use warc_write_header_uri for all WARC-Target-URI fields 2990 The WARC spec requires that all URIs be enclosed in angle brackets. This 2991 was being done in most cases, but not for "WARC-Target-URI" fields in 2992 WARC blocks of type "response", "resource", "revisit", and "metadata". 2993 29942017-02-16 Tim Rühsen <tim.ruehsen@gmx.de> 2995 2996 Fix 504 status handling 2997 * src/http.c (gethttp): Move 504 handling to correct place. 2998 (http_loop): Fix memeory leak. 2999 * testenv/server/http/http_server.py: Add Content-Length header on non-2xx 3000 status codes with a body 3001 3002 Reported-by: Adam Sampson 3003 30042017-02-16 YX Hao <lifenjoiner@163.com> 3005 3006 * src/url.c (url_file_name): Do not charset convert local directory 3007 In a non-ASCII environment, the local path may contain non-ASCII 3008 characters. The server responded file name must be converted before 3009 it is concatenated to the local path. Conversion after concatenation 3010 may result in 'iconv' errors. 3011 30122017-02-15 Tim Rühsen <tim.ruehsen@gmx.de> 3013 3014 * configure.ac: Remove manually resetting of LIBICONV variable 3015 Fixes: #48193 3016 Reported-by: ilovezfs 3017 Reported-by: Charles 3018 3019 * bootstrap.conf: Call gperf to create lib/unicase/special-casing-table.h 3020 3021 * bootstrap.conf: Fix latest gnulib to work with gperf < 3.1 3022 30232017-02-14 Darshit Shah <darnir@gnu.org> 3024 3025 Pull GNULib to latest. 3026 * gnulib: Pull to latest commit. This fixes an issue with Gperf 3.1 3027 30282017-02-12 Tim Rühsen <tim.ruehsen@gmx.de> 3029 3030 * src/main.c: Remove double 'verbose' option 3031 Fixes: #50290 3032 30332017-02-11 Tim Rühsen <tim.ruehsen@gmx.de> 3034 3035 * NEWS: update 3036 3037 isrc/http.c (check_retry_on_http_error): Fix gcc warning 3038 30392017-02-11 Tom Szilagyi <tomszilagyi@gmail.com> 3040 3041 Add support for --retry-on-http-error 3042 * doc/wget.text: Add documentation 3043 * src/http.c: Add function check_retry_on_http_error () 3044 * src/init.c: Add opt.retry_on_http_error 3045 * src/main.c: Add struct for retry-on-http-error to option_data[] 3046 * src/options.h: Add retry_on_http_error to struct options 3047 30482017-02-11 Tim Rühsen <tim.ruehsen@gmx.de> 3049 3050 Revert "Add support for --retry-on-http-error" 3051 This reverts commit 977276374d1be7f171f5da8633368025c88b9eee. 3052 30532017-02-10 Tim Rühsen <tim.ruehsen@gmx.de> 3054 3055 Change libtool library deps to non-libtool deps 3056 Reported-by: Yousong Zhou 3057 Fixes: #50260 3058 30592017-02-09 Tom Szilagyi <tomszilagyi@gmail.com> 3060 3061 Add support for --retry-on-http-error 3062 * doc/wget.texi: Add description for --retry-on-http-error 3063 * src/http.c (gethttp): 3064 Consider given HTTP response codes as non-fatal, transient errors. 3065 Supply a comma-separated list of 3-digit HTTP response codes as 3066 argument. Useful to work around special circumstances where retries 3067 are required, but the server responds with an error code normally not 3068 retried by Wget. Such errors might be 503 (Service Unavailable) and 3069 429 (Too Many Requests). Retries enabled by this option are performed 3070 subject to the normal retry timing and retry count limitations of 3071 Wget. 3072 3073 Using this option is intended to support special use cases only and is 3074 generally not recommended, as it can force retries even in cases where 3075 the server is actually trying to decrease its load. Please use it 3076 wisely and only if you know what you are doing. 3077 3078 Example use and a starting point for manual testing: 3079 wget --retry-on-http-error=429,503 http://httpbin.org/status/503 3080 30812017-02-09 Tim Rühsen <tim.ruehsen@gmx.de> 3082 3083 * tests/WgetTests.pm: Add --no-config to wget invocation 3084 Without --no-config, wgetrc commands may disturb the tests. 3085 3086 Reported-by: Dagobert Michelsen 3087 30882017-02-06 Tim Rühsen <tim.ruehsen@gmx.de> 3089 3090 * tests/WgetTests.pm (_verify_download): Fix failure message 3091 Reported-by: Zhiming Wang 3092 3093 * src/http.c (initialize_request): Fix regression in .netrc auth 3094 Reported-by: Axel Reinhold 3095 3096 * src/iri.c (idn_encode): Fix memory leak 3097 30982017-02-06 Tim Rühsen <tim.ruehsen@gmx.de> 3099 3100 Remove skipping libunistring with --disable-iri 3101 * configure.ac: Remove checking for IRI=no 3102 3103 On certain systems, gnulib falls back to libunistring 3104 for mbtowc() and wcwidth() (used in src/progress.c). 3105 3106 Reported-by: Zhiming Wang 3107 31082017-02-04 Tim Rühsen <tim.ruehsen@gmx.de> 3109 3110 * bootstrap.conf: Add gnulib module wcwidth 3111 3112 Fix include/define clash with gnulib's unlink module 3113 * src/options.h: Rename options.unlink to options.unlink_requested 3114 * src/init.c: Replace options unlink member by unlink_requested 3115 * src/http.c: Likewise 3116 * src/ftp.c: Likewise 3117 3118 * bootstrap.conf: Specify unicode modules more exact 3119 3120 * src/xattr.h: Fix #define fsetxattr for MacOS and FreeBSD 3121 Reported-by: Zhiming Wang 3122 31232017-02-03 Tim Rühsen <tim.ruehsen@gmx.de> 3124 3125 * contrib/release: New release helper script 3126 3127 * cfg.mk: Fix syntax-check 3128 3129 * doc/announcement_1.19.txt: Add new file 3130 3131 * src/utils.c: Move macro FMT_MAX_LENGTH into scope 3132 3133 * src/utils.c: Fix -Wformat= warnings 3134 3135 * src/gnutls.c: Fix -Wformat= warnings 3136 3137 * src/iri.c: Remove unused macro IDNA_FLAGS 3138 3139 * src/iri.c: Remove use of __func__ macros 3140 3141 * src/http.c: Fix -Wformat= warnings 3142 3143 * src/progress.c: Remove unused macro move_to_end 3144 3145 * src/html-parse.c: Remove unused macro SKIP_NON_WS 3146 3147 * src/hsts.c: Remove unused macro CHECK_EXPLICIT_PORT 3148 3149 * src/hsts.c: Fix -Wformat= warnings 3150 3151 * src/hash.c: Explicitly convert float to int 3152 3153 * src/ftp-ls.c: Fix -Wformat= warnings 3154 3155 * src/ftp.c (ftp_retrieve_list): Add default to switch 3156 3157 * src/css-url.h: Remove redundant declaration 3158 3159 * src/ftp.c: Fix -Wformat= warning 3160 3161 * src/http.c (test_parse_range_header): Fix constants 3162 31632017-02-02 Dale R. Worley <worley@ariadne.com> 3164 3165 Improve documentation of --trust-server-names. 3166 31672017-02-02 Tim Rühsen <tim.ruehsen@gmx.de> 3168 3169 * src/url.c (mkalldirs): Add newline to log message 3170 3171 * src/cookies.c (check_domain_match): Add newline to DEBUG lines 3172 31732017-01-17 Tim Rühsen <tim.ruehsen@gmx.de> 3174 3175 * NEWS: update 3176 3177 * README.checkout: Link HTTPS where possible, update flex homepage 3178 3179 * README.checkout: Fix libidn to libidn2 3180 31812017-01-13 Tim Rühsen <tim.ruehsen@gmx.de> 3182 3183 * src/iri.c: Use TR46 non-transitional for toASCII conversion 3184 3185 * src/main.c: Fix _Noreturn compiler warnings 3186 3187 * src/utils.c: Fix _Noreturn compiler warning 3188 3189 * src/init.c (setval_internal): Fix sign compare warning 3190 31912017-01-13 Tim Rühsen <tim.ruehsen@gmx.de> 3192 3193 Replace home-grown portability code by gnulib modules 3194 * bootstrap.conf: Add intprops, inttypes, limits-h, signal-h, 3195 stat, sys_types 3196 * src/ftp.c: Replace 'struct_stat' by 'struct stat' 3197 * src/hsts.c: Likewise 3198 * src/http.c: Likewise 3199 * src/main.c: Likewise 3200 * src/netrc.c: Likewise 3201 * src/retr.c: Likewise 3202 * src/url.c: Likewise 3203 * src/utils.c: Likewise 3204 * src/sysdep.h: Remove old portability code 3205 3206 Further portability issues should be addressed by gnulib. 3207 32082017-01-13 Tim Rühsen <tim.ruehsen@gmx.de> 3209 3210 Replace WGET_* m4 macros by gnulib modules 3211 * bootstrap.conf: Add hostent, inet_ntop, nanosleep, utimens 3212 * configure.ac: Remove WGET_STRUCT_UTIMBUF, WGET_FNMATCH, 3213 WGET_NANOSLEEP, WGET_POSIX_CLOCK, WGET_NSL_SOCKET 3214 * m4/wget.m4: Likewise 3215 * src/Makefile.am: Add $(LIB_NANOSLEEP) $(LIB_POSIX_SPAWN) to LDADD 3216 * tests/Makefile.am: Likewise 3217 * src/host.c (print_address): Use inet_ntop also for IPV4 3218 32192017-01-13 Tim Rühsen <tim.ruehsen@gmx.de> 3220 3221 Remove libidn vulnerability work-around 3222 * src/iri.c (_utf8_is_valid): Removed 3223 3224 Since we are using libidn2 for IDNs, we no longer need 3225 this work-around. 3226 32272017-01-13 Tim Rühsen <tim.ruehsen@gmx.de> 3228 3229 * src/iri.c (idn_encode): Use TR46 transitional if available 3230 3231 * gnulibx: Update 3232 32332017-01-07 Tim Rühsen <tim.ruehsen@gmx.de> 3234 3235 Fix previous commit 2427ca4ac090dc6cc0c527f4ac4fc5a4bd468eb1 3236 32372017-01-06 vijeth-aradhya <vijthaaa@gmail.com> 3238 3239 Fix http.c and ftp.c passwd logic error 3240 * src/ftp.c (getftp): Fix password/user selection 3241 * src/http.c (initialize_request): Likewise 3242 3243 Before, netrc password won over interactive 3244 --ask-password but now --ask-password wins 3245 after change of program logic 3246 3247 Fixes Issue #48811 3248 32492016-12-31 Giuseppe Scrivano <gscrivan@redhat.com> 3250 3251 * src/main.c (main): Add missing \n in error message 3252 32532016-12-28 Giuseppe Scrivano <gscrivan@redhat.com> 3254 3255 Check that fd_set has not fds bigger than FD_SETSIZE 3256 * src/connect.c: check that the fd is not bigger than FD_SETSIZE 3257 before using FD_SET. An fd_set cannot hold fds bigger than 3258 FD_SETSIZE, causing out-of-bounds write to a buffer on the stack. 3259 3260 Reported by: Jann Horn <jannh@google.com> 3261 32622016-12-20 Nikos Mavrogiannopoulos <nmav@gnutls.org> 3263 3264 Avoid calling the gnutls priority functions multiple times 3265 * src/gnutls.c (ssl_connect_wget): Call gnutls_set_default_priority() 3266 for --secure-protocol=auto (default). 3267 3268 The patch fixes a behavior that may have unintended side-effects in 3269 certain gnutls versions. Instead use the default priorities when no 3270 options are given. 3271 32722016-12-19 Tim Rühsen <tim.ruehsen@gmx.de> 3273 3274 Print debug message when skipping certain recursive downloads 3275 * src/recur.c (retrieve_tree): Print debug message instead silently 3276 skipping recursive downloads. 3277 32782016-12-14 Rahul Bedarkar <rahul.bedarkar@imgtec.com> 3279 3280 Rename base64_{encode,decode} (trivial patch) 3281 * src/http-ntlm.c: Rename base64_{encode,decode} 3282 * src/http.c: Likewise 3283 * src/utils.c: Likewise 3284 * src/utils.h: Likewise 3285 3286 When statically linking with gnutls, we get definition clash error for 3287 base64_encode which is also defined by gnutls. 3288 3289 To prevent definition clash, rename base64_{encode,decode} 3290 32912016-12-11 Tim Rühsen <tim.ruehsen@gmx.de> 3292 3293 Add support for psl_latest() 3294 * configure.ac: Add check for psl_latest(), 3295 remove --with-psl-file 3296 * src/cookies.c (check_domain_match): Use psl_latest() if available 3297 32982016-11-09 Piotr Wajda <pwajda@gmail.net.pl> 3299 3300 Respect -o parameter again 3301 * log.c: don't choose log output dynamically when opt.lfilename is set 3302 3303 Regression introduced by dd5c549f6af8e1143e1a6ef66725eea4bcd9ad50 3304 Reported-by: Dale R. Worley 3305 33062016-11-07 Tim Rühsen <tim.ruehsen@gmx.de> 3307 3308 Move Wget from IDN2003 (libidn) to IDN2008 (libidn2) 3309 * .travis.yml: Install libidn2-dev instead libidn11-dev. 3310 * bootstrap.conf: Add modules libunistring-optional, unistr/base, 3311 unicase/tolower. 3312 * configure.ac: Check for libidn2. 3313 * src/Makefile.am: Add $(LTLIBUNISTRING) to LDADD. 3314 * tests/Makefile.am: Set LDADD similar to LDADD in src/Makefile.am 3315 * src/connect.c: Use libidn2 code instead of libidn. 3316 * src/host.c: Likewise. 3317 * src/iri.c: Likewise. 3318 * src/iri.h: Likewise. 3319 * src/options.h: Likewise. 3320 * src/url.c: Likewise. 3321 * src/url.h: Likewise. 3322 * src/log.c: Fix C99 comment. 3323 3324 IDN2003 should not be used any more due to security concerns. 3325 We use libunistring (resp. the unicode code from gnulib) for 3326 lowercasing UTF-8 before we give data to libidn2. 3327 TR#46 is missing, no support in libidn2 nor in libunistring. 3328 33292016-11-03 Tim Rühsen <tim.ruehsen@gmx.de> 3330 3331 Use -O0 in contrib scripts 3332 * contrib/check-hard: Use -O0 instead of -O2 to speed up script. 3333 * contrib/travis-ci: Likewise. 3334 3335 Update gnulib 3336 33372016-10-22 Tim Rühsen <tim.ruehsen@gmx.de> 3338 3339 * src/metalink.c: Fix typo 'suceeded' -> 'succeeded' 3340 Reported-by: Göran Uddeborg <goeran@uddeborg.se>, 3341 Anders Jonsson <anders.jonsson@norsjovallen.se> 3342 33432016-10-21 losgrandes <pwajda@gmail.net.pl> 3344 3345 Fixes #45790: wget prints it's progress even when background 3346 * src/log.c: Use tcgetpgrp(STDIN_FILENO) != getpgrp() to determine when to print to STD* or logfile. 3347 Deprecate log_request_redirect_output function. 3348 Use different file handles for STD* and logfile, to easily switch between them when changing fg/bg. 3349 * src/log.h: Make redirect_output function externally linked. 3350 * src/main.c: Don't use deprecated log_request_redirect_output function. Use redirect_output instead. 3351 * src/mswindows.c: Don't use deprecated log_request_redirect_output function. Use redirect_output instead. 3352 3353 Fixes #46584: wget --spider always returns zero exit status 3354 * src/ftp.c: Return error as exit value if even one file doesn't exist 3355 33562016-10-12 Tim Rühsen <tim.ruehsen@gmx.de> 3357 3358 * src/http.c (gethttp): Accept 206 for request w/o Range header 3359 Fixes: #49319 3360 33612016-10-07 Tim Rühsen <tim.ruehsen@gmx.de> 3362 3363 * tests/Makefile.am: Let WGETRC work on *nix and Windows 3364 3365 Properly include iconv.h 3366 * src/iri.c: Check HAVE_ICONV to include iconv.h 3367 * src/url.c: Same 3368 3369 * bootstrap.conf: Add pipe-posix for pipe() 3370 33712016-10-07 Tim Rühsen <tim.ruehsen@gmx.de> 3372 3373 Amend redirection behavior 3374 * src/recur.c (descend_redirect): Ignore WG_RR_LIST and WG_RR_REGEX 3375 for redirections. 3376 * testenv/Makefile.am: Add Test-recursive-redirect.py 3377 * testenv/Test-recursive-redirect.py: New test 3378 3379 Test-recursive-redirect.py written by Dale R. Worley. 3380 3381 Reported-by: "Dale R. Worley" <worley@ariadne.com> 3382 33832016-09-30 Matthew White <mehw.is.me@inventati.org> 3384 3385 New: Metalink/XML v3 python class, update tests to use this class 3386 * testenv/misc/metalinkv3_xml.py: New Metalink/XML v3 python class 3387 * testenv/Test-metalink-xml-abspath-trust.py: Update test to use the 3388 new Metalink/XML v3 python class 3389 * testenv/Test-metalink-xml-abspath.py: Update test to use the new 3390 Metalink/XML v3 python class 3391 * testenv/Test-metalink-xml-absprefix-trust.py: Update test to use the 3392 new Metalink/XML v3 python class 3393 * testenv/Test-metalink-xml-absprefix.py: Update test to use the new 3394 Metalink/XML v3 python class 3395 * testenv/Test-metalink-xml-continue.py: Update test to use the new 3396 Metalink/XML v3 python class 3397 * testenv/Test-metalink-xml-emptyprefix-trust.py: Update test to use 3398 the new Metalink/XML v3 python class 3399 * testenv/Test-metalink-xml-homepath-trust.py: Update test to use the 3400 new Metalink/XML v3 python class 3401 * testenv/Test-metalink-xml-homepath.py: Update test to use the new 3402 Metalink/XML v3 python class 3403 * testenv/Test-metalink-xml-homeprefix-trust.py: Update test to use 3404 the new Metalink/XML v3 python class 3405 * testenv/Test-metalink-xml-homeprefix.py: Update test to use the new 3406 Metalink/XML v3 python class 3407 * testenv/Test-metalink-xml-nohash.py: Update test to use the new 3408 Metalink/XML v3 python class 3409 * testenv/Test-metalink-xml-nourls.py: Update test to use the new 3410 Metalink/XML v3 python class 3411 * testenv/Test-metalink-xml-prefix-trust.py: Update test to use the 3412 new Metalink/XML v3 python class 3413 * testenv/Test-metalink-xml-prefix.py: Update test to use the new 3414 Metalink/XML v3 python class 3415 * testenv/Test-metalink-xml-relpath-trust.py: Update test to use the 3416 new Metalink/XML v3 python class 3417 * testenv/Test-metalink-xml-relpath.py: Update test to use the new 3418 Metalink/XML v3 python class 3419 * testenv/Test-metalink-xml-relprefix-trust.py: Update test to use the 3420 new Metalink/XML v3 python class 3421 * testenv/Test-metalink-xml-relprefix.py: Update test to use the new 3422 Metalink/XML v3 python class 3423 * testenv/Test-metalink-xml-size.py: Update test to use the new 3424 Metalink/XML v3 python class 3425 * testenv/Test-metalink-xml-trust.py: Update test to use the new 3426 Metalink/XML v3 python class 3427 * testenv/Test-metalink-xml.py: Update test to use the new 3428 Metalink/XML v3 python class 3429 34302016-09-30 Matthew White <mehw.is.me@inventati.org> 3431 3432 New: --metalink-over-http Content-Type/Disposition Metalink/XML processing 3433 * src/http.c (metalink_from_http): Process the Content-Type header. 3434 Add an application/metalink4+xml URL as metalink metaurl. If the 3435 option opt.content_disposition is true, the Content-Disposition's 3436 filename is the metaurl's name 3437 * doc/wget.texi: Update --content-disposition and --metalink-over-http 3438 * doc/metalink-standard.txt: Update doc. Content-Type/Disposition 3439 processing through --metalink-over-http. Update download naming 3440 system about --trust-server-names and --content-disposition 3441 * testenv/Makefile.am: Add new files 3442 * testenv/Test-metalink-http-xml-type.py: New file. Metalink/HTTP 3443 Content-Type/Disposition header automated Metalink/XML tests 3444 * testenv/Test-metalink-http-xml-type-trust.py: New file. Metalink/HTTP 3445 Content-Type/Disposition header with --trust-server-names automated 3446 Metalink/XML tests 3447 * testenv/Test-metalink-http-xml-type-content.py: New file. Metalink/HTTP 3448 Content-Type/Disposition header with --content-disposition automated 3449 Metalink/XML tests 3450 * testenv/Test-metalink-http-xml-type-trust-content.py: New file. 3451 Metalink/HTTP Content-Type/Disposition header with --trust-server-names 3452 and --content-disposition automated Metalink/XML tests 3453 3454 Process the Content-Type header, identify an application/metalink4+xml 3455 file. The Content-Disposition could provide an alternate name through 3456 the "filename" field for the metalink xml file. Respectively, the cli 3457 options --metalink-over-http and --content-disposition are required. 3458 3459 When Metalink/XML auto-processing, to use the Content-Disposition's 3460 filename, the cli option --trust-server-names is also required. 3461 34622016-09-30 Matthew White <mehw.is.me@inventati.org> 3463 3464 Bugfix: Set NULL variable due to --content-disposition to Metalink origin 3465 * src/http.c (http_loop): Prevent SIGSEGV when hstat.local_file is 3466 NULL, opt.content_disposition has a role in leaving the value unset 3467 * src/http.c (gethttp): If hs->local_file is NULL (aka http_loop()'s 3468 hstat.local_file), set it to the value of hs->metalink->origin 3469 3470 New: --trust-server-names saves Metalink/HTTP xml files using the "name" field 3471 * src/metalink.c (retrieve_from_metalink): If opt.trustservernames is 3472 true, use the basename of the metaurl's name to save the xml file 3473 * doc/metalink-standard.txt: Update doc. With --trust-server-names any 3474 Metalink/HTTP Link application/metalink4+xml file is saved using the 3475 basename of the "name" field, if any. Update Metalink/HTTP examples 3476 * testenv/Makefile.am: Add new file 3477 * testenv/Test-metalink-http-xml-trust-name.py: New file. Metalink/HTTP 3478 automated Metalink/XML, save xml files using the "name" field tests 3479 34802016-09-30 Matthew White <mehw.is.me@inventati.org> 3481 3482 Bugfix: Detect when a metalink:file doesn't have any hash 3483 * src/metalink.c (retrieve_from_metalink): Reject any metalink:file 3484 without hashes. Prompt the error and switch to the next file 3485 * testenv/Makefile.am: Add new file 3486 * testenv/Test-metalink-xml-nohash.py: New file. Metalink/XML with no 3487 hashes tests 3488 3489 Prevent SIGSEGV. 3490 34912016-09-30 Matthew White <mehw.is.me@inventati.org> 3492 3493 Bugfix: Detect malformed base64 Metalink/HTTP Digest header 3494 * src/http.c (metalink_from_http): Fix hash_bin_len type. Use ssize_t 3495 instead than size_t. Reject -1 as base64_decode() return value 3496 * testenv/Makefile.am: Add new file 3497 * testenv/Test-metalink-http-baddigest.py: New file. Metalink/HTTP 3498 malformed base64 Digest header tests 3499 3500 On malformed base64 input, ssize_t base64_decode() returns -1. Such 3501 value is too big for a size_t variable, and used as xmalloc() value 3502 will exaust all the memory. 3503 35042016-09-30 Matthew White <mehw.is.me@inventati.org> 3505 3506 New option --metalink-index to process Metalink application/metalink4+xml 3507 * NEWS: Mention the effect of --metalink-index over Metalink 3508 * src/init.c: Add new option metalinkindex (opt.metalink_index), 3509 initialize to -1 3510 * src/main.c: Add new option metalink-index (--metalink-index=NUMBER) 3511 * src/options.h: Add new option metalink_index (int) 3512 * src/metalink.h: Add declaration of functions fetch_metalink_file(), 3513 replace_metalink_basename() 3514 * src/metalink.c: Add functions fetch_metalink_file() simple file 3515 fetch, replace_metalink_basename() replace file basename 3516 * src/metalink.c (retrieve_from_metalink): New. Process Metalink 3517 application/metalink4+xml of opt.metalink_index ordinal number 3518 * doc/wget.texi: Add new option metalink-index (--metalink-index) 3519 documentation 3520 * doc/metalink-standard.txt: Updated doc. Add documentation about 3521 Metalink application/metalink4+xml metaurls download naming system 3522 * doc/metalink-standard.txt: Update Metalink/XML and HTTP examples 3523 * testenv/Makefile.am: Add new files 3524 * testenv/Test-metalink-http-xml.py: New file. Metalink/HTTP automated 3525 Metalink/XML "application/metalink4+xml" --metalink-index tests 3526 * testenv/Test-metalink-http-xml-trust.py: New file. Metalink/HTTP 3527 automated Metalink/XML "application/metalink4+xml" --metalink-index 3528 retrieval with --trust-server-names tests 3529 3530 WARNING: Do not use lib/dirname.c (dir_name) to get the directory 3531 name, it may append a dot '.' character to the directory name. 3532 35332016-09-30 Matthew White <mehw.is.me@inventati.org> 3534 3535 Bugfix: Prevent sorting when there are less than two elements 3536 * src/utils.c (stable_sort): Add condition nmemb > 1, sort only when 3537 there is more than one element 3538 3539 Prevent SIGSEGV. 3540 35412016-09-30 Matthew White <mehw.is.me@inventati.org> 3542 3543 New: Parse Metalink/HTTP header for application/metalink4+xml 3544 * src/http.c (metalink_from_http): Parse Metalink/HTTP header for 3545 metaurls application/metalink4+xml media types 3546 * src/metalink.h: Add function declaration metalink_meta_cmp() 3547 * src/metalink.c: Add function metalink_meta_cmp() compare metalink 3548 metaurls priorities 3549 3550 Add Metalink/HTTP application/metalink4+xml media types as metaurls to 3551 the metalink variable that will be used to download the files. 3552 35532016-09-30 Matthew White <mehw.is.me@inventati.org> 3554 3555 New test: Metalink shall not concatenate '/' to an empty directory prefix 3556 * testenv/Makefile.am: Add new file 3557 * testenv/Test-metalink-xml-emptyprefix-trust.py: New file. 3558 Metalink/XML empty directory prefix (--directory-prefix '') tests 3559 3560 Detect a '/' character wrongfully concatenated to an empty directory 3561 prefix '' (not NULL), resulting in an absolute path as '/dir/file', 3562 instead than 'dir/file'. 3563 35642016-09-30 Matthew White <mehw.is.me@inventati.org> 3565 3566 Bugfix: Remove surrounding quotes from Metalink/HTTP key's value 3567 * src/metalink.h: Add declaration of function dequote_metalink_string() 3568 * src/metalink.c: Add function dequote_metalink_string() remove 3569 surrounding quotes from string, \' or \" 3570 * src/metalink.c (find_key_value, find_key_values): Call dequote_metalink_string() 3571 to remove the surrounding quotes from the parsed value 3572 * src/metalink.c (test_find_key_value, test_find_key_values): Add 3573 quoted key's values for unit-tests 3574 * testenv/Makefile.am: Add new file 3575 * testenv/Test-metalink-http-quoted.py: New file. Metalink/HTTP quoted 3576 values tests 3577 3578 Some Metalink/HTTP keys, like "type" [2], may have a quoted value [1]: 3579 Link: <http://example.com/example.ext.meta4>; rel=describedby; 3580 type="application/metalink4+xml" 3581 3582 Wget was expecting a dequoted value from the Metalink module. This 3583 patch addresses this problem. 3584 3585 References: 3586 [1] Metalink/HTTP: Mirrors and Hashes 3587 1.1. Example Metalink Server Response 3588 https://tools.ietf.org/html/rfc6249#section-1.1 3589 3590 [2] Additional Link Relations 3591 6. "type" 3592 https://tools.ietf.org/html/rfc6903#section-6 3593 35942016-09-30 Matthew White <mehw.is.me@inventati.org> 3595 3596 Bugfix: Process Metalink/XML url strings containing white spaces and CRLF 3597 * src/metalink.h: Add declaration of function clean_metalink_string() 3598 * src/metalink.c: Add directive #include "xmemdup0.h" 3599 * src/metalink.c: Add function clean_metalink_string() remove leading 3600 and trailing white spaces and CRLF from string 3601 * src/metalink.c (retrieve_from_metalink): Remove leading and trailing 3602 white spaces and CRLF from url resource mres->url 3603 * testenv/Makefile.am: Add new file 3604 * testenv/Test-metalink-xml-urlbreak.py: New test. Metalink/XML white 3605 spaces and CRLF in url resources tests 3606 3607 White spaces and CRLF are not automatically removed by libmetalink 3608 from url strings. The Wget's Metalink module was unable to process 3609 such url strings. This patch implements the processing of such url 3610 strings cleaning off leading and trailing white spaces and CRLF. 3611 3612 If a parsed Metalink/XML url string contains strings separated by 3613 CRLF, only the first of the series is accepted. 3614 36152016-09-30 Matthew White <mehw.is.me@inventati.org> 3616 3617 New test: Detect when there are no good Metalink url resources 3618 * testenv/Makefile.am: Add new file 3619 * testenv/Test-metalink-xml-nourls.py: New file. Metalink/XML unknown 3620 urls tests 3621 3622 Test if when there are no good Metalink url resources there is any 3623 segmentation fault. 3624 36252016-09-30 Matthew White <mehw.is.me@inventati.org> 3626 3627 New: Metalink file size mismatch returns error code METALINK_SIZE_ERROR 3628 * src/wget.h (uerr_t): Add error code METALINK_SIZE_ERROR to enum 3629 * src/metalink.c (retrieve_from_metalink): Use boolean variable 3630 size_ok, when false set retr_err to METALINK_SIZE_ERROR 3631 * testenv/Makefile.am: Add new file 3632 * testenv/Test-metalink-xml-size.py: New file. Metalink/XML file size 3633 tests (<size></size>) 3634 3635 Before this patch, no appropriate error code was returned to inform a 3636 file size mismatch. 3637 3638 This patch introduces the error code METALINK_SIZE_ERROR to inform a 3639 file size mismatch. 3640 36412016-09-30 Matthew White <mehw.is.me@inventati.org> 3642 3643 New: Metalink/XML and Metalink/HTTP file naming safety rules 3644 * NEWS: Mention the effect of --trust-server-names over Metalink 3645 * src/metalink.h: Add declaration of function append_suffix_number() 3646 * src/metalink.c: Add function append_suffix_number() append number to 3647 string 3648 * src/metalink.c (retrieve_from_metalink): Safer Metalink/XML and 3649 Metalink/HTTP download naming system, opt.trustservernames based 3650 * doc/metalink-standard.txt: Update doc. Explain new Metalink/XML and 3651 Metalin/HTTP download naming system and --trust-server-names role 3652 * testenv/Makefile.am: Add new files 3653 * testenv/Test-metalink-xml-continue.py: Update test. Metalink/XML 3654 continue/keep existing files (HTTP 416) with --continue tests 3655 * testenv/Test-metalink-xml.py: Update test. Metalink/XML naming tests 3656 * testenv/Test-metalink-xml-trust.py: New file. Metalink/XML naming 3657 tests with --trust-server-names 3658 * testenv/Test-metalink-xml-abspath.py: Update test. Metalink/XML 3659 absolute path tests 3660 * testenv/Test-metalink-xml-abspath-trust.py: New file. Metalink/XML 3661 absolute path tests with --trust-server-names 3662 * testenv/Test-metalink-xml-relpath.py: Update test. Metalink/XML 3663 relative path tests 3664 * testenv/Test-metalink-xml-relpath-trust.py: New file. Metalink/XML 3665 relative path tests with --trust-server-names 3666 * testenv/Test-metalink-xml-homepath.py: Update test. Metalink/XML 3667 home path and ~ (tilde) tests 3668 * testenv/Test-metalink-xml-homepath-trust.py: New file. Metalink/XML 3669 home path and ~ (tilde) tests with --trust-server-names 3670 * testenv/Test-metalink-xml-prefix.py: New file. Metalink/XML naming 3671 tests with --directory-prefix 3672 * testenv/Test-metalink-xml-prefix-trust.py: New file. Metalink/XML 3673 naming tests with --directory-prefix and --trust-server-names 3674 * testenv/Test-metalink-xml-absprefix.py: New file. Metalink/XML 3675 absolute --directory-prefix tests 3676 * testenv/Test-metalink-xml-absprefix-trust.py: New file. Metalink/XML 3677 absolute --directory-prefix tests with --trust-server-names 3678 * testenv/Test-metalink-xml-relprefix.py: New file. Metalink/XML 3679 relative --directory-prefix tests 3680 * testenv/Test-metalink-xml-relprefix-trust.py: New file. Metalink/XML 3681 relative --directory-prefix tests with --trust-server-names 3682 * testenv/Test-metalink-xml-homeprefix.py: New file. Metalink/XML home 3683 --directory-prefix tests 3684 * testenv/Test-metalink-xml-homeprefix-trust.py: New file. Metalink/XML 3685 home --directory-prefix tests with --trust-server-names 3686 3687 The option --trust-server-names allows to use the file names parsed 3688 from a Metalink/XML file. Without --trust-server-names, the safety 3689 mechanism provides secure and predictable file names. 3690 36912016-09-30 Matthew White <mehw.is.me@inventati.org> 3692 3693 New document: Metalink/XML and Metalink/HTTP standard reference 3694 * doc/metalink-standard.txt: New doc. Implemented and recommended 3695 Metalink/XML and Metalink/HTTP standard features 3696 36972016-09-30 Matthew White <mehw.is.me@inventati.org> 3698 3699 Enforce Metalink file name verification, strip directory if necessary 3700 * NEWS: Mention the use of a safe Metalink destination path 3701 * src/metalink.h: Add declaration of functions get_metalink_basename(), 3702 last_component(), metalink_check_safe_path() 3703 * src/metalink.c: Add directive #include "dosname.h" 3704 * src/metalink.c: Add function get_metalink_basename() to return the 3705 basename of a file name, strip w32's drive letter prefixes 3706 * src/metalink.c (retrieve_from_metalink): Enforce Metalink file name 3707 verification, if the file name is unsafe try its basename 3708 * doc/metalink.txt: Update document. Explain --directory-prefix 3709 3710 The function get_metalink_basename() uses FILE_SYSTEM_PREFIX_LEN to 3711 catch any 'C:D:file' (w32 environment), then it removes each drive 3712 letter prefix, i.e. 'C:' and 'D:'. 3713 3714 Unsafe file names contain an absolute, relative, or home path. Safe 3715 paths can be verified by libmetalink's metalink_check_safe_path(). 3716 37172016-09-27 Matthew White <mehw.is.me@inventati.org> 3718 3719 Implement Metalink/XML --directory-prefix option in Metalink module 3720 * NEWS: Mention the effect of --directory-prefix over Metalink 3721 * src/metalink.c (retrieve_from_metalink): Add opt.dir_prefix as 3722 prefix to the metalink:file name mfile->name 3723 * doc/metalink.txt: Update document. Explain --directory-prefix 3724 3725 When --directory-prefix=<prefix> is used, set the top of the retrieval 3726 tree to prefix. The default is . (the current directory). Metalink/XML 3727 and Metalink/HTTP files will be downloaded under prefix. 3728 37292016-09-27 Matthew White <mehw.is.me@inventati.org> 3730 3731 Change mfile->name to filename in Metalink module's messages 3732 * src/metalink.c (retrieve_from_metalink): Change mfile->name to 3733 filename when referring to the downloaded file 3734 3735 The file name could have been changed by unique_create() (or by any 3736 other mean) before downloading. Use the name of the downloaded file 3737 (filename) when printing output which refer to it. 3738 37392016-09-27 Matthew White <mehw.is.me@inventati.org> 3740 3741 Add file size computation in Metalink module 3742 * NEWS: Mention Metalink's file size verification 3743 * src/metalink.c (retrieve_from_metalink): Add file size computation 3744 * doc/metalink.txt: Update document. Remove resolved bugs 3745 3746 Reject downloaded files when they do not agree with their Metalink/XML 3747 metalink:size: https://tools.ietf.org/html/rfc5854#section-4.2.14 3748 3749 At the moment of writing, Metalink/HTTP headers do not provide a file 3750 size field. This information could be obtained from the Content-Length 3751 header field: https://tools.ietf.org/html/rfc6249#section-7 3752 37532016-09-27 Matthew White <mehw.is.me@inventati.org> 3754 3755 Update Metalink/XML tests and add a new test for home paths 3756 * testenv/Test-metalink-xml-relpath.py: Update test 3757 * testenv/Test-metalink-xml-homepath.py: New file. Reject home paths 3758 * testenv/Makefile.am: Add new file 3759 3760 When --input-metalink=<file> is used, each metalink:file name is 3761 verified by libmetalink's metalink_check_safe_path(). By design, 3762 absolute, relative and home paths are rejected. 3763 3764 At the moment of writing, when --metalink-over-http is used, absolute, 3765 relative, and home paths aren't a concern. The destination file name 3766 is a combination of URL's file name and cli's "Directory Options" 3767 handled by src/url.c (url_file_name). 3768 37692016-09-27 Matthew White <mehw.is.me@inventati.org> 3770 3771 Bugfix: Keep the download progress when alternating metalink:url 3772 * NEWS: Mention the effects of --continue over Metalink 3773 * src/metalink.c (retrieve_from_metalink): On download error, resume 3774 output_stream with the next mres->url. Keep fully downloaded files 3775 started with --continue, otherwise rename/remove the file 3776 * testenv/Makefile.am: Add new file 3777 * testenv/Test-metalink-xml-continue.py: New file. Metalink/XML 3778 continue/keep existing files (HTTP 416) with --continue tests 3779 3780 Before this patch, with --continue, existing and/or fully retrieved 3781 files which fail the sanity tests were renamed (--keep-badhash), or 3782 removed. 3783 3784 This patch ensures that --continue doesn't rename/remove existing 3785 and/or fully retrieved files (HTTP 416) which fail the sanity tests. 3786 37872016-09-27 Matthew White <mehw.is.me@inventati.org> 3788 3789 Bugfix: Fix NULL filename and output_stream in Metalink module 3790 * NEWS: Mention the Metalink "path/file" name format handling 3791 * src/metalink.c (retrieve_from_metalink): Fix NULL filename, set 3792 filename to the right "path/file" value 3793 * src/metalink.c (retrieve_from_metalink): Fix NULL output_stream, set 3794 output_stream to filename when it is created by retrieve_url() 3795 * src/metalink.c (retrieve_from_metalink): Add RFC5854 comments about 3796 proper metalink:file "path/file" name format handling 3797 * doc/metalink.txt: Update document. Remove resolved bugs 3798 3799 If unique_create() cannot create/open the destination file, filename 3800 and output_stream remain NULL. If fopen() is used instead, filename 3801 always remains NULL. Both functions cannot create "path/file" trees. 3802 3803 Setting filename to the right value is sufficient to prevent SIGSEGV 3804 generating from testing a NULL value. This also allows retrieve_url() 3805 to create a "path/file" tree through opt.output_document. 3806 3807 Reading NULL as output_stream, when it shall not be, leads to wrong 3808 results. For instance, a non-NULL output_stream tells when a stream 3809 was interrupted, reading NULL instead means to assume the contrary. 3810 3811 This patch conforms to the RFC5854 specification: 3812 The Metalink Download Description Format 3813 4.1.2.1. The "name" Attribute 3814 https://tools.ietf.org/html/rfc5854#section-4.1.2.1 3815 38162016-09-19 Matthew White <mehw.is.me@inventati.org> 3817 3818 Add metalink description 3819 * doc/metalink.txt 3820 3821 Evaluation of "Directory Options" on the command line interacting with 3822 the option '--input-metalink=file': 3823 3824 $ wget --input-metalink=file <directory options> 3825 38262016-09-19 Matthew White <mehw.is.me@inventati.org> 3827 3828 Use python .replace instead than re.sub in Metalink tests 3829 * testenv/Test-metalink-http.py: Use python .replace 3830 * testenv/Test-metalink-xml.py: Use python .replace 3831 * testenv/Test-metalink-xml-abspath.py: Use python .replace 3832 * testenv/Test-metalink-xml-relpath.py: Use python .replace 3833 3834 Use python .replace instead than re.sub, remove 'import re'. 3835 38362016-09-19 Matthew White <mehw.is.me@inventati.org> 3837 3838 Fix: Change Metalink/XML v3 file name into test.metalink 3839 * testenv/Test-metalink-xml-abspath.py: Change Metalink/XML v3 file 3840 name from test.meta4 into test.metalink 3841 * testenv/Test-metalink-xml-relpath.py: Change Metalink/XML v3 file 3842 name from test.meta4 into test.metalink 3843 * testenv/Test-metalink-xml.py: Change Metalink/XML v3 file name from 3844 test.meta4 into test.metalink 3845 38462016-09-13 Tim Rühsen <tim.ruehsen@gmx.de> 3847 3848 Add two Metalink/XML tests 3849 * testenv/Test-metalink-xml-abspath.py: Reject absolute paths 3850 * testenv/Test-metalink-xml-relpath.py: Reject relative paths 3851 * testenv/Makefile.am: Add both new files to metalink tests 3852 38532016-09-09 Tim Rühsen <tim.ruehsen@gmx.de> 3854 3855 Fix crash on 'srcset' inline URIs 3856 * src/html-url.c (tag_handle_img): Check append_url() for NULL 3857 return value before dereference. 3858 3859 Crashed reproducable with parsing srcset="data:..." inline data. 3860 Reported-by: Coverity 3861 38622016-09-09 Tim Rühsen <tim.ruehsen@gmx.de> 3863 3864 * src/hsts.c (hsts_store_open): NULL check param for fclose(). 3865 Reported-by: Coverity 3866 3867 * src/ftp-ls.c (ftp_parse_winnt_ls): Fix memset params 3868 3869 * src/utils.c (stable_sort): Use xmalloc instead of malloc 3870 38712016-09-08 Tim Rühsen <tim.ruehsen@gmx.de> 3872 3873 * src/ftp-ls.c (ftp_parse_winnt_ls): Initialize struct fileinfo cur 3874 Reported-by: Coverity 3875 3876 Add const to url param of some functions 3877 * src/http.c: Add const to first param of initialize_request(), 3878 initialize_proxy_configuration(), establish_connection(), 3879 check_file_output(), check_auth(), gethttp(), http_loop(). 3880 * src/http.h: Add const to first param of http_loop(). 3881 3882 * Makefile.am: Remove trailing empty line 3883 3884 * src/recur.c (retrieve_tree): Fix possible NULL dereference 3885 Reported-by: Coverity 3886 3887 * src/http.c (initialize_request): Fix check for user 3888 Reported-by: Coverity 3889 3890 * src/retr.c (retrieve_url): NULL check mynewloc 3891 Reported-by: Coverity 3892 3893 * src/utils.c (stable_sort): Reduce tmp allocation size 3894 Reported-by: Coverity 3895 3896 * Makefile.am: Add target 'check-valgrind' 3897 3898 Fix some issues detected by Coverity 3899 * src/connect.c (connect_to_ip): Check return value of setsockopt. 3900 * src/ftp.c (ftp_retrieve_list): Check return value of chmod. 3901 * src/http.c (digest_authentication_encode): Cleanup code. 3902 * src/init.c (setval_internal): Explicitely check comind range. 3903 * src/main.c (main): Explicitely check optarg. 3904 * src/retr.c (retr_rate): Use snprintf instead sprintf, 3905 (retrieve_from_file): More verbose error message, 3906 (rotate_backups): Use snprintf instead sprintf, check return 3907 value of rename(). 3908 * src/url.c (mkalldirs): Check return value of unlink(). 3909 * src/utils.c (strdupdelim): Explicitely check beg and end for NULL, 3910 (merge_vecs): Fix sizeof argument to char *, 3911 (stable_sort): Use malloc instead of alloca. 3912 3913 Code cleanup for --use-askpass 3914 * bootstrap.conf: Add xmemdup0 and strpbrk. 3915 * src/init.c (cmd_use_askpass): Add 'const' to char *, 3916 remove check for file existence. 3917 * src/main.c (run_use_askpass): C89 compat init of argv, 3918 added \n to error messages, 3919 fixed stripping of \n and \r from input, 3920 make run_use_askpass and use_askpass static. 3921 39222016-09-07 Tim Rühsen <tim.ruehsen@gmx.de> 3923 3924 * src/http.c (check_file_output): Replace asprintf by aprint 3925 39262016-09-04 Tim Rühsen <tim.ruehsen@gmx.de> 3927 3928 * testenv/README: Remove obsolete references to TEST_NAME 3929 39302016-09-03 Liam R. Howlett <Liam.Howlett@WindRiver.com> 3931 3932 Add --use-askpass=COMMAND support 3933 * doc/wget.texi: Add --use-askpass to documentation. 3934 * src/init.c: Add cmd_use_askpasss to set opt.use_askpass based on 3935 argument, WGET_ASKPASS, and SSH_ASKPASS environment variables. 3936 opt.wget-askpass is freed in cleanup () 3937 * src/main.c: Update options & add spawn process of opt.use_askpass 3938 command. 3939 * src/options.h: Addition of string use_askpass. 3940 * src/url.c: Function scheme_leading_string to access the leading 3941 string of a parsed url. 3942 * src/url.h: Prototype for scheme_leading_string for returning the 3943 leading string. 3944 * bootstrap.conf: Add posix_spawn to gnulib_modules 3945 3946 This adds the --use-askpass option which is disabled by default. 3947 3948 --use-askpass=COMMAND will request the username and password for a given 3949 URL by executing the external program COMMAND. If COMMAND is left 3950 blank, then the external program in the environment variable 3951 WGET_ASKPASS will be used. If WGET_ASKPASS is not set then the 3952 environment variable SSH_ASKPASS is used. If there is no value set, an 3953 error is returned. If an error occurs requesting the username or 3954 password, wget will exit. 3955 39562016-09-02 Dale R. Worley <worley@ariadne.com> 3957 3958 Add tests for recursion and redirection. 3959 * testenv/Test-recursive-basic.py: New file. Test basic recursion 3960 * testenv/Test-recursive-include.py: New File. Recursion test with 3961 include directories 3962 * testenv/Test-redirect.py: New File. Basic redirection tests 3963 * testenv/Makefile.am: Add new tests to makefile 3964 3965 Sort test names into order. 3966 * testenv/Makefile.am: Sort all the python tests in alphabetical 3967 order 3968 3969 Corrections and amplifications to test documentation 3970 * testenv/README: Update documentation to meet current project 3971 status 3972 * testenv/Test-Proto.py: Same 3973 39742016-08-24 Giuseppe Scrivano <gscrivan@redhat.com> 3975 3976 Append .tmp to temporary files 3977 * src/http.c (struct http_stat): Add `temporary` flag. 3978 (check_file_output): Append .tmp to temporary files. 3979 (open_output_stream): Refactor condition to use hs->temporary instead. 3980 3981 Reported-by: "Misra, Deapesh" <dmisra@verisign.com> 3982 Discovered by: Dawid Golunski (http://legalhackers.com) 3983 39842016-08-24 Tim Rühsen <tim.ruehsen@gmx.de> 3985 3986 Limit file mode to u=rw on temp. downloaded files 3987 * bootstrap.conf: Add gnulib modules fopen, open. 3988 * src/http.c (open_output_stream): Limit file mode to u=rw 3989 on temporary downloaded files. 3990 3991 Reported-by: "Misra, Deapesh" <dmisra@verisign.com> 3992 Discovered by: Dawid Golunski (http://legalhackers.com) 3993 39942016-08-21 Giuseppe Scrivano <gscrivan@redhat.com> 3995 3996 Fix some make syntax-check issues 3997 cfg.mk: Skip .der files. 3998 testenv/certs/server-template.cfg: Remove empty final line. 3999 testenv/certs/ca-template.cfg: Likewise. 4000 40012016-08-17 Tim Rühsen <tim.ruehsen@gmx.de> 4002 4003 * src/css-url.c (get_urls_css): Fix memory leak 4004 4005 * src/html-url.c (get_urls_html): Fix memory leak 4006 40072016-08-17 Tim Rühsen <tim.ruehsen@gmx.de> 4008 4009 Improve PSL cookie checking 4010 * configure.ac: Add --with-psl-file to set a PSL file 4011 * src/cookies.c (check_domain_match): Load PSL_FILE with 4012 fallback to built-in data. 4013 4014 This change allows package maintainers to make Wget use the latest 4015 PSL (DAFSA or plain text), without updating libpsl itself. 4016 4017 E.g. Debian now comes with a DAFSA binary within the 'publicsuffix' 4018 package which allows very fast loading (no parsing or processing needed). 4019 40202016-08-10 Tobias Stoeckmann <tobias@stoeckmann.org> 4021 4022 Fix stack overflow with way too many cookies 4023 * src/cookies.c (cookie_header): Use heap instead of stack. 4024 * src/http.c (request_send): Likewise. 4025 4026 If wget has to handle an insanely large amount of cookies (~700,000 on 4027 32 bit systems or ~530,000 on 64 bit systems), the stack is not large 4028 enough to hold these pointers, leading to undefined behaviour according 4029 to POSIX; expect a segmentation fault in real life. ;) 4030 40312016-08-09 Tobias Stoeckmann <tobias@stoeckmann.org> 4032 4033 Fix signal race condition 4034 The signal handler for SIGALRM calls longjmp, but the handler is 4035 installed before the jump target has been initialized. If another 4036 process sends SIGALRM right between handler installation and target 4037 initialization, the jump leads to undefined behavior. 4038 4039 This can easily be fixed by moving the signal handler installation 4040 into the "SETJMP == 0" conditional block, which means that the target 4041 has just been initialized. 4042 4043 * src/utils.c: call signal after SETJMP. 4044 40452016-08-05 Jeffery To <jeffery.to@gmail.com> 4046 4047 Remove hyphens from command names 4048 * src/init.c: Remove hyphens from command names 4049 * src/main.c: Likewise 4050 4051 Options with hyphens (or underscores) in their command name cannot be 4052 set in a wgetrc file. 4053 40542016-08-04 Tim Rühsen <tim.ruehsen@gmx.de> 4055 4056 * src/metalink.c (badhash_suffix): Fix quoting 4057 40582016-08-04 Matthew White <mehw.is.me@inventati.org> 4059 4060 Add new option --keep-badhash to keep Metalink's files with a bad hash 4061 * src/init.c: Add keepbadhash 4062 * src/main.c: Add keep-badhash 4063 * src/options.h: Add keep_badhash 4064 * doc/wget.texi: Add docs for --keep-badhash 4065 * src/metalink.h: Add prototypes badhash_suffix(), badhash_or_remove() 4066 * src/metalink.c: New functions badhash_suffix(), badhash_or_remove(). 4067 (retrieve_from_metalink): Call badhash_or_remove() on download error 4068 4069 With --keep-badhash, append .badhash to Metalink's files with checksum 4070 mismatch. (retrieve_from_metalink): unique_create() may append another 4071 suffix to avoid overwriting existing files. 4072 4073 Without --keep-badhash, remove downloaded files with checksum mismatch 4074 (this conforms to the old behaviour). 4075 40762016-08-03 Tim Rühsen <tim.ruehsen@gmx.de> 4077 4078 * src/metalink.c: Remove C++ style comments 4079 40802016-08-03 Matthew White <mehw.is.me@inventati.org> 4081 4082 Add gnulib modules 'link', 'unlink' and 'symlink' 4083 * bootstrap.conf: Add 'link', 'unlink' and 'symlink' 4084 40852016-08-03 Matthew White <mehw.is.me@inventati.org> 4086 4087 New: --continue continues partially downloaded Metalink's files 4088 * src/metalink.c (retrieve_from_metalink): Continue file download if 4089 opt.always_rest is true 4090 4091 Without --continue, download as a new file with an unique name (this 4092 conforms to the old behaviour). 4093 40942016-08-03 Matthew White <mehw.is.me@inventati.org> 4095 4096 Add support for Metalink's md2, and md4 hashes 4097 * bootstrap.conf: Add crypto/md2, and crypto/md4 4098 * src/metalink.c (retrieve_from_metalink): Add md2, and md4 support 4099 4100 This patch adds support for the deprecated (insecure) md2, and md4 4101 Message-Digest algorithms to the Metalink module. 4102 41032016-08-03 Matthew White <mehw.is.me@inventati.org> 4104 4105 Add support for Metalink's md5, sha1, sha224, sha384, and sha512 hashes 4106 * bootstrap.conf: Add crypto/sha512 4107 * src/metalink.c (retrieve_from_metalink): Add md5, sha1, sha224, 4108 sha384, and sha512 support 4109 4110 Metalink's checksum verification was limited to sha256. This patch 4111 adds support for md5, sha1, sha224, sha384, and sha512. 4112 41132016-07-27 Sean Burford <sburford@google.com> 4114 4115 Style fixes and DEBUG on setxattr failure. 4116 * src/ftp.c: Fix style. 4117 * src/http.c: Likewise. 4118 * src/xattr.h: Likewise. 4119 * src/xattr.c: Likewise, 4120 (write_xattr_metadata): Print debug msg on error. 4121 41222016-07-22 Sean Burford <sburford@google.com> 4123 4124 Keep fetched URLs in POSIX extended attributes 4125 * configure.ac: Check for xattr availability 4126 * src/Makefile.am: Add xattr.c 4127 * src/ftp.c: Include xattr.h. 4128 (getftp): Set attributes if enabled. 4129 * src/http.c: Include xattr.h. 4130 (gethttp): Add parameter 'original_url', 4131 set attributes if enabled. 4132 (http_loop): Add 'original_url' to call of gethttp(). 4133 * src/init.c: Add new option --xattr. 4134 * src/main.c: Add new option --xattr, add description to help text. 4135 * src/options.h: Add new config member 'enable_xattr'. 4136 * src/xatrr.c: New file. 4137 * src/xattr.h: New file. 4138 4139 These attributes provide a lightweight method of later determining 4140 where a file was downloaded from. 4141 4142 This patch changes: 4143 * autoconf detects whether extended attributes are available and 4144 enables the code if they are. 4145 * The new flags --xattr and --no-xattr control whether xattr is enabled. 4146 * The new command "xattr = (on|off)" can be used in ~/.wgetrc or /etc/wgetrc 4147 * The original and redirected URLs are recorded as shown below. 4148 * This works for both single fetches and recursive mode. 4149 4150 The attributes that are set are: 4151 user.xdg.origin.url: The URL that the content was fetched from. 4152 user.xdg.referrer.url: The URL that was originally requested. 4153 4154 Here is an example, where http://archive.org redirects to https://archive.org: 4155 $ wget --xattr http://archive.org 4156 ... 4157 $ getfattr -d index.html 4158 user.xdg.origin.url="https://archive.org/" 4159 user.xdg.referrer.url="http://archive.org/" 4160 4161 These attributes were chosen based on those stored by Google Chrome 4162 https://bugs.chromium.org/p/chromium/issues/detail?id=45903 4163 and curl https://github.com/curl/curl/blob/master/src/tool_xattr.c 4164 41652016-07-02 Noël Köthe <noel@debian.org> 4166 4167 Fix typos 4168 * ChangeLog-2014-12-10: invokation -> invocation 4169 * doc/wget.texi: invokation -> invocation 4170 * src/main.c: seperated -> separated 4171 * src/options.h: seperated -> separated 4172 * testenv/README: invokation -> invocation 4173 * testenv/conf/wget_commands.py: invokation -> invocation 4174 41752016-06-30 Tim Rühsen <tim.ruehsen@gmx.de> 4176 4177 Fix creating docs when make uses 'sh -e' 4178 * doc/Makefile.am: Save fallback for pod2man --utf8 4179 4180 Reported-by: Jérémie Courrèges-Anglas <jca@wxcvbn.org> 4181 41822016-06-30 Tim Rühsen <tim.ruehsen@gmx.de> 4183 4184 Fix compilation for OpenSSL 1.1.0 4185 * src/openssl.c (ssl_init): Use SSL_is_init_finished() instead of 4186 SSL_state(), conditionally skip SSLeay function calls 4187 4188 The python test suite makes SSL_peek() hang, consuming 100% CPU time. 4189 This does not happen on real world TLS connections, though, but needs 4190 investigations. 4191 41922016-06-29 Tim Rühsen <tim.ruehsen@gmx.de> 4193 4194 Add script to generate test certs non-interactive 4195 * Test-pinnedpubkey-hash-https.py: Read hashed pubkey from file 4196 * Test-pinnedpubkey-hash-no-check-fail-https.py: Use invalid hash 4197 * certs/make_ca.sh: New script to generate test certs non-interactive 4198 * certs/ca-template.cfg: New file (template for CA cert) 4199 * certs/server-template.cfg: New file (template for server cert) 4200 * certs/server-pubkey-sha256.base64: New file (pubkey sha256 hash) 4201 42022016-06-27 Ander Juaristi <ajuaristi@gmx.es> 4203 4204 Bypass world-writable checks on Windows 4205 * src/hsts.c (hsts_file_access_valid): we should check for "world-writable" 4206 files only on Unix-based systems. It's difficult to mimic the same behavior 4207 on Windows, so it's better to just not do it. 4208 4209 Reported-by: Gisle Vanem <gvanem@yahoo.no> 4210 Reported-by: Eli Zaretskii <eliz@gnu.org> 4211 42122016-06-14 Tim Rühsen <tim.ruehsen@gmx.de> 4213 4214 Update gnulib and bootstrap 4215 * gnulib: Sync gnulib submodule with upstream 4216 * bootstrap: Update to latest version from gnulib/build-aux/ 4217 42182016-06-12 Tim Rühsen <tim.ruehsen@gmx.de> 4219 4220 Use ICONV_CONST to avoid type warning for iconv() 4221 * src/iri.c (do_conversion): Cast 2. param of iconv() to 4222 'ICONV_CONST char **' 4223 * src/url.c (convert_fname): Likewise 4224 4225 Remove check for HAVE_ICONV in src/url.c 4226 * src/url.c: Remove check for HAVE_ICONV 4227 4228 Add gnulib module 'langinfo' 4229 * bootstrap.conf: Add 'langinfo' 4230 4231 Include gnulib fcntl.h instead of sys/fcntl.h 4232 * src/gnutls.c: Include gnulib fcntl.h 4233 4234 Add libraries to LDADD for wget 4235 * src/Makefile.am: Add $(GETADDRINFO_LIB) $(HOSTENT_LIB) $(INET_NTOP_LIB) 4236 $(LIBSOCKET) $(LIB_CLOCK_GETTIME) $(LIB_CRYPTO) $(LIB_SELECT) 4237 $(LTLIBICONV) $(LTLIBINTL) $(LTLIBTHREAD) $(SERVENT_LIB) to LDADD 4238 42392016-06-10 Tim Rühsen <tim.ruehsen@gmx.de> 4240 4241 Explicitely mention Python3 in README.checkout 4242 * README.checkout: Python test suite needs Python3 4243 42442016-06-09 Giuseppe Scrivano <gscrivan@redhat.com> 4245 4246 NEWS: update 4247 42482016-06-09 Giuseppe Scrivano <gscrivan@redhat.com> 4249 4250 ftp: understand --trust-server-names on a HTTP->FTP redirect 4251 If not --trust-server-names is used, FTP will also get the destination 4252 file name from the original url specified by the user instead of the 4253 redirected url. Closes CVE-2016-4971. 4254 4255 * src/ftp.c (ftp_get_listing): Add argument original_url. 4256 (getftp): Likewise. 4257 (ftp_loop_internal): Likewise. Use original_url to generate the 4258 file name if --trust-server-names is not provided. 4259 (ftp_retrieve_glob): Likewise. 4260 (ftp_loop): Likewise. 4261 42622016-06-07 Tim Rühsen <tim.ruehsen@gmx.de> 4263 4264 Fix warnings for --disable-iri configure flag 4265 * src/iri.h: Fix #define for parse_charset 4266 * src/html-url.c: Surround some IRI code parts by #ifdef ENABLE_IRI 4267 * src/http.c: Likewise 4268 * src/iri.h: Likewise 4269 * src/recur.c: Likewise 4270 * src/retr.c: Likewise 4271 4272 Fix warning about redefinition of MAP_FAILED 4273 * src/sysdep.h: Removed definition of MAP_FAILED 4274 * src/utils.c: Check and define MAP_FAILED after including sys/mmap.h 4275 42762016-06-03 Tim Rühsen <tim.ruehsen@gmx.de> 4277 4278 Add new Test for missing scheme behavior 4279 * testenv/Makefile.am: Add Test-missing-scheme-retval.py 4280 * testenv: New file Test-missing-scheme-retval.py 4281 4282 Idea and Perl implementation by Zdenek Dohnal <zdohnal@redhat.com> 4283 42842016-05-27 Tim Rühsen <tim.ruehsen@gmx.de> 4285 4286 Fallback to pod2man without utf-8 on error 4287 * doc/Makefile.am: Fallback to pod2man without utf-8 on error 4288 42892016-05-26 Ander Juaristi <ajuaristi@gmx.es> 4290 4291 Correct HSTS debug message 4292 * src/main.c (save_hsts): save the in-memory HSTS database to a file 4293 only if something changed. 4294 * src/hsts.c (struct hsts_store): new field 'changed'. 4295 (hsts_match): update field 'changed' accordingly. 4296 (hsts_store_entry): update field 'changed' accordingly. 4297 (hsts_store_has_changed): new function. 4298 * src/hsts.h (hsts_store_has_changed): new function. 4299 4300 Check the HSTS file is not world-writable 4301 * hsts.c (hsts_file_access_valid): check that the file is a regular 4302 file, and that it's not world-writable. 4303 (hsts_store_open): if the HSTS database file does not meet the 4304 above requirements, disable HSTS at all. 4305 43062016-05-24 Tim Rühsen <tim.ruehsen@gmx.de> 4307 4308 Improve description of Perl libraries needed for test suite 4309 * README.checkout: Improve text about Perl libraries 4310 43112016-05-23 Tim Rühsen <tim.ruehsen@gmx.de> 4312 4313 Remove special handling for Emacs in progress bar code 4314 * src/progress.c: Remove special 'emacs' code 4315 4316 Fixes #47989 4317 43182016-04-25 Jernej Simončič <jernej|s-wget@eternallybored.org> 4319 4320 Fix xsleep() for Windows (trivial change) 4321 * src/mswindows.c (xsleep): Fix check for number of seconds 4322 43232016-04-17 Sergio Gelato <sergio.gelato@astro.su.se> 4324 4325 More accurate log message from do_conversion() 4326 * src/iri.c (do_conversion): More accurate log message 4327 43282016-04-17 Tim Rühsen <tim.ruehsen@gmx.de> 4329 4330 Include sys/select.h if HAVE_LIBCARES 4331 * src/hosts.c: Include sys/select.h if HAVE_LIBCARES 4332 4333 Reported-by: Gisle Vanem <gvanem@yahoo.no> 4334 43352016-04-17 Gisle Vanem <gvanem@yahoo.no> 4336 4337 Fix Windows gnulib/c-ares incompatibility of select() 4338 * src/host.c: Undef 'select' on Windows 4339 43402016-04-15 Tim Rühsen <tim.ruehsen@gmx.de> 4341 4342 Set X flags for python tests 4343 * testenv/*.py: Set eXecute flags 4344 4345 Regression from commit 926e42d4678689195a0bbed210c6d027db7cc390 4346 43472016-04-11 Ander Juaristi <ajuaristi@gmx.es> 4348 4349 Strictly comply with RFC 6797 4350 * src/hsts.c (hsts_store_entry): strictly comply with RFC 6797. 4351 4352 RFC 6797 states in section 8.1 that the UA's cached information should 4353 only be updated if: 4354 4355 "either or both of the max-age and includeSubDomains header field 4356 value tokens are conveying information different than that already 4357 maintained by the UA." 4358 43592016-04-11 Ander Juaristi <ajuaristi@gmx.es> 4360 4361 Correct HSTS database file description 4362 * src/hsts.c (hsts_store_dump): s/[:port]/<port>/ 4363 43642016-04-11 moparisthebest <admin@moparisthebest.com> 4365 4366 Implement tests for new pinnedpubkey option 4367 * testenv/Makefile.am: Add new tests 4368 * testenv/Test-pinnedpubkey-der-https.py: New test 4369 * testenv/Test-pinnedpubkey-der-no-check-https.py: New Test 4370 * testenv/Test-pinnedpubkey-hash-https.py: New test 4371 * testenv/Test-pinnedpubkey-hash-no-check-fail-https.py: New test 4372 * testenv/Test-pinnedpubkey-pem-fail-https.py: New test 4373 * testenv/Test-pinnedpubkey-pem-https.py: New test 4374 * testenv/certs/README: How to generate public keys with openssl tool 4375 * testenv/certs/server-pubkey.der: New key file (DER format) 4376 * testenv/certs/server-pubkey.pem: New key file (PEM format) 4377 4378 Implement --pinnedpubkey option to pin public keys 4379 * doc/wget.texi: Add description for --pinnedpubkey 4380 * src/gnutls.c: New function pkp_pin_peer_pubkey(), 4381 (ssl_check_certificate): Check pinned cert via pkp_pin_peer_pubkey() 4382 * src/init.c: Add option --pinnedpubkey 4383 * src/main.c: Add option --pinnedpubkey 4384 * src/openssl.c: New function pkp_pin_peer_pubkey(), 4385 (ssl_check_certificate): Check pinned cert via pkp_pin_peer_pubkey() 4386 * src/options.h: Add new option variable 'pinnedpubkey' 4387 * src/utils.c: New functions wg_pubkey_pem_to_der(), wg_pin_peer_pubkey() 4388 * src/utils.h: Add prototype for wg_pin_peer_pubkey() 4389 43902016-04-11 Tim Rühsen <tim.ruehsen@gmx.de> 4391 4392 Use test file name for temp working directory name 4393 * testenv/test/base_test.py (__init__): Use test file name for name, 4394 remove 'name' parameter 4395 * testenv/test/http_test.py (__init__): Remove 'name' parameter 4396 * testenv/*.py: Remove TEST_NAME 4397 4398 Using a fixed string (TEST_NAME) to build the working directory 4399 for testing caused random failures (or successes) when tests 4400 share the same TEST_NAME value. Not easy to find without digging 4401 into the python test suite code. 4402 We now use the test file name, which is unique within the test 4403 environment. 4404 44052016-04-11 Tim Rühsen <tim.ruehsen@gmx.de> 4406 4407 Fix testenv/Test--rejected-log.py 4408 * testenv/Test--rejected-log.py: Add missing tabs in expected output 4409 4410 Fail python tests when post_hook errors 4411 * testenv/test/base_test.py (__exit__): Return self.tests_passed 4412 (__test_cleanup): Set self.tests_passed to False on exception 4413 44142016-03-29 Darshit Shah <darnir@gmail.com> 4415 4416 Print the fingerprint instead of the raw pointer in debugging message 4417 * src/metalink.c (retrieve_from_metalink): Fix debug message to print the 4418 fingerprint instead of a pointer. 4419 4420 * Do not delete the ChangeLog file since it is required by the Makefile 4421 and breaks compilation 4422 44232016-03-29 Darshit Shah <darnir@gmail.com> 4424 4425 Revert "Print the fingerprint instead of the raw pointer in debugging message" 4426 This reverts commit b916595168b6eb0f8868a67a9d214d5e0022871f. 4427 44282016-03-28 Tim Rühsen <tim.ruehsen@gmx.de> 4429 4430 Fixed URLs and references in wget.texi 4431 * wget.texi: Replace server.com by example.com, 4432 replace ftp://wuarchive.wustl.edu by https://example.com, 4433 use HTTPS instead of HTTP where possible, 4434 fix list archive reference, 4435 remove reference to wget-notify@addictivecode.org, 4436 change bugtracker URL to bugtracker on Savannah, 4437 replace yoyodyne.com by example.com, 4438 fix URL to VMS port 4439 44402016-03-25 Giuseppe Scrivano <gscrivan@redhat.com> 4441 4442 * metalink.c (retrieve_from_metalink): Fix typo 4443 4444 Print the fingerprint instead of the raw pointer in debugging message 4445 * src/metalink.c (retrieve_from_metalink): Fix debug message to print the 4446 fingerprint instead of a pointer. 4447 44482016-03-23 Tim Rühsen <tim.ruehsen@gmx.de> 4449 4450 Add options --bind-dns-address and --dns-servers 4451 * README.checkout: Add description for libares 4452 * configure.ac: Add check for libares 4453 * doc/wget.texi: Add docs for the new options 4454 * src/build_info.c.in: Add +/-cares for --version output 4455 * src/host.c: 4456 (merge_address_lists): New static function 4457 (address_list_from_hostent): New static function 4458 (wait_ares): New static function 4459 (callback): New static function 4460 (lookup_host): Add libares resolver code 4461 * src/init.c: Add new options, 4462 (cleanup): Add cleanup code 4463 * src/main.c: Add global libares channel variable 4464 (cmdline_option option_data): Add new options 4465 (print_help): Add short descriptions 4466 (main): Add libares init code 4467 * src/options.h (struct options): Add option members 4468 4469 The new options allow to specify alternative DNS servers and 4470 an alternate packet route for the resolver packets. 4471 Wget has to built with libares, enabled at configure time by 4472 ./configure --with-cares. 4473 44742016-03-16 Tim Rühsen <tim.ruehsen@gmx.de> 4475 4476 Fix SNI server names with trailing dot(s) 4477 * src/gnutls.c (ssl_connect_wget, ssl_check_certificate): Fix SNI server name 4478 * src/openssl.c (ssl_connect_wget, ssl_check_certificate): Fix SNI server name 4479 4480 Fixes #47408 4481 44822016-03-10 Tim Rühsen <tim.ruehsen@gmx.de> 4483 4484 Fix links to original Robots Exclusion Standard 4485 * doc/wget.texi: Fix links 4486 44872016-03-05 Darshit Shah <darnir@gmail.com> 4488 4489 Fix assertion in Progress bar 4490 * src/progress.c (create_image): Fix off-by-one error in assert() 4491 statement for progress bar width. 4492 Reported-By: Gisle Vanem <gvanem@yahoo.no> 4493 44942016-03-03 Giuseppe Scrivano <gscrivan@redhat.com> 4495 4496 src/url.c: fix make syntax-check 4497 44982016-03-03 Maks Orlovich <morlovich@google.com> 4499 4500 Parse <img srcset> attributes, they have image URLs. 4501 * src/convert.h: Add link_noquote_html_p to permit rewriting URLs deep 4502 inside attributes without adding extraneous quoting 4503 * src/convert.c (convert_links): Honor link_noquote_html_p 4504 * src/html_url.c (tag_handle_img): New function. Add srcset parsing. 4505 45062016-03-01 Darshit Shah <darnir@gmail.com> 4507 4508 Sanitize value sent to memset to prevent SEGFAULT 4509 45102016-03-01 Darshit Shah <darnir@reniac.com> 4511 4512 Update documentation about bahviour of -c 4513 * docs/wget.texi: -c will restart download from scratch if server 4514 does not support RANGE. 4515 4516 Reported-By: David Chavez 4517 http://stackoverflow.com/questions/30147332/unexpected-behavior-of-wget 4518 45192016-02-27 Tim Rühsen <tim.ruehsen@gmx.de> 4520 4521 Fix writing WARC-Target-URI value 4522 src/warc.c: Add function warc_write_header_uri(), 4523 Use it for creating WARC-Target-URI 4524 4525 Fixes #47281 4526 45272016-02-13 Darshit Shah <darnir@gmail.com> 4528 4529 Remove pointer to unused Mailing List 4530 * MAILING-LISTS: Remove pointer to old, unused mailing list for bug 4531 reports 4532 45332016-02-11 Tim Rühsen <tim.ruehsen@gmx.de> 4534 4535 Retain value of errno in logprintf(), logputs() even better 4536 * src/log.c (logprintf,logputs): Save&Restore value of errno 4537 4538 Reported-by: Gisle Vanem <gvanem@yahoo.no> 4539 45402016-02-10 Tim Rühsen <tim.ruehsen@gmx.de> 4541 4542 Retain value of errno in logprintf() 4543 * src/log.c (logprintf): Save&Restore value of errno 4544 4545 Reported-by: Gisle Vanem <gvanem@yahoo.no> 4546 45472016-02-01 Tim Rühsen <tim.ruehsen@gmx.de> 4548 4549 Set AM_SILENT_RULES to yes by default 4550 * configure.ac: Set AM_SILENT_RULES to yes by default 4551 45522016-02-01 Ander Juaristi <ajuaristi@gmx.es> 4553 4554 Enforce 'RejectHeader' rule in tests 4555 * server/http/http_server.py (_Handler.RejectHeader): enforce 4556 'RejectHeader' rule. 4557 45582015-12-20 Tim Rühsen <tim.ruehsen@gmx.de> 4559 4560 Fix Test-iri-forced-remote 4561 * tests/Test-iri-forced-remote.px: Fix encodings 4562 45632015-12-18 Eli Zaretskii <eliz@gnu.org> 4564 4565 Support non-ASCII URLs 4566 * src/url.c [HAVE_ICONV]: Include iconv.h and langinfo.h. 4567 (convert_fname): New function. 4568 [HAVE_ICONV]: Convert file name from remote encoding to local 4569 encoding. 4570 (url_file_name): Call convert_fname. 4571 (filechr_table): Don't consider bytes in 128..159 as control 4572 characters. 4573 4574 * tests/Test-ftp-iri.px: Fix the expected file name to match the 4575 new file-name recoding. State the remote encoding explicitly on 4576 the Wget command line. 4577 4578 * NEWS: Mention the URI recoding when built with libiconv. 4579 45802015-12-18 Giuseppe Scrivano <gscrivan@redhat.com> 4581 4582 * NEWS: Prepare new development cycle 4583 45842015-12-17 Tim Rühsen <tim.ruehsen@gmx.de> 4585 4586 Cleanup code 4587 * src/iri.c (do_conversion): Code cleanup 4588 45892015-12-17 Eli Zaretskii <eliz@gnu.org> 4590 4591 Set URI encoding when redirected 4592 * src/retr.c (retrieve_url): Set URI on redirection 4593 45942015-12-17 Tim Rühsen <tim.ruehsen@gmx.de> 4595 4596 Remove requesting X/Open 5, POSIX 1995 4597 * src/sysdep.h: Remove #define _XOPEN_SOURCE 500 4598 45992015-12-16 Eli Zaretskii <eliz@gnu.org> 4600 4601 Avoid hanging on MS-Windows when invoked with --connect-timeout 4602 * src/connect.c (connect_to_ip) [WIN32]: Don't call fd_close if 4603 the connection timed out, to avoid hanging. 4604 46052015-12-15 Tim Rühsen <tim.ruehsen@gmx.de> 4606 4607 Fix iconv conversion 4608 * src/iri.c: Kick out the last converted character from iconv() 4609 4610 Thanks to Eli Zaretskii <eliz@gnu.org> for suggesting the fix. 4611 Reported-by: "Andries E. Brouwer" <Andries.Brouwer@cwi.nl> 4612 46132015-12-14 Tim Rühsen <tim.ruehsen@gmx.de> 4614 4615 Let Test-k survive on CygWin and Windows 4616 * tests/Test-k.px: Use --restrict-file-names for CygWin/Windows 4617 filename requirements. 4618 46192015-12-13 Ander Juaristi <ajuaristi@gmx.es> 4620 4621 Fix leak in HSTS code 4622 * src/hsts.c (hsts_store_open): close fp if open. 4623 4624 Remove unused variable in ftp code 4625 * src/ftp.c (getftp): fix compiler warning for unused variable. 4626 46272015-12-11 Giuseppe Scrivano <gscrivan@redhat.com> 4628 4629 Tag release 1.17.1 4630 * NEWS: Update. 4631 * gnulib: sync from upstream. 4632 46332015-12-11 Tim Rühsen <tim.ruehsen@gmx.de> 4634 4635 Remove ABOUT-NLS from git 4636 * ABOUT-NLS: Remove from repository, it will be autogenerated. 4637 * .gitignore: Add ABOUT-NLS and build-aux/ar-lib 4638 46392015-12-11 Jernej Simončič <jernej|s-wget@eternallybored.org> 4640 4641 * src/metalink.c: Specify 'rb' as mode to open file 4642 46432015-12-10 Ángel González <keisial@gmail.com> 4644 4645 * doc/wget.texi: add hint for self-signed certificates 4646 46472015-12-10 Ander Juaristi <ajuaristi@gmx.es> 4648 4649 Fix Coverity issues 4650 * src/ftp.c (getftp): on error, close the file and attempt to remove it 4651 before exiting. 4652 * src/hsts.c (hsts_store_open): update modification time in the end. 4653 46542015-12-10 Darshit Shah <darnir@gmail.com> 4655 4656 Faster Travis Builds 4657 * contrib/travis-ci: Test under different languages only when all the 4658 features are enabled. This covers the maximum number of strings. For the 4659 other option permutations, test only in the default C locale 4660 4661 Fix remaining bugs in progress bar implementation 4662 * src/progress.c (create_image): Ensure that the entire screen width is 4663 drawn everytime to prevent any artefacts from leaking through. 4664 46652015-12-09 Darshit Shah <darnir@gmail.com> 4666 4667 Add bug-wget to list of travis recipients 4668 * .travis.yml: Add bug-wget to list of Travis Report Recipients 4669 4670 Eliminate more compiler warnings 4671 * src/options.h (CHECK_CERT_MODES): Remove C99 style comma after last 4672 value 4673 * src/progress.c (create_image): Do not mix statements and declarations 4674 * src/init.c (cmd_boolean_internal): Mark unused parameters 4675 4676 Re-enable test on multibyte locale in Travis 4677 * .travis.yml: Use Russian locale instead of Japanese since it seems to 4678 be more complete 4679 * contrib/travis-ci: Re-enable testing on a Russian locale 4680 4681 Fix progress bar assertion with multibyte locales 4682 * src/progress.c (bar_create): Define size of progress buffer explicitly 4683 (create_image): Clean up progress bar image creation. Use memset 4684 instead of for loops to create arrays of the same byte. 4685 46862015-12-06 Darshit Shah <darnir@gmail.com> 4687 4688 Introduce Travis Integration 4689 * .travis.yml: Configuration file for Travis-CI 4690 * contrib/travis-ci: Script to run on travis. Similar to check-hard but modified 4691 for travis. 4692 * tests/valgrind-suppressions{-ssl}: Add extra suppressions to prevent a 4693 Valgrind False Positive errors in an old version 4694 4695 Since Travis currently supports only public repositories on GitHub, the support 4696 for automated testing through Travis will be done using my Clone of Wget on 4697 GitHub at: https://github.com/darnir/wget.git 4698 Any commits pushed to this repository will trigger a build on Travis. 4699 47002015-12-04 Tim Rühsen <tim.ruehsen@gmx.de> 4701 4702 SKIP SSL/TLS tests if configured without it 4703 * testenv/Makefile.am: Set SSL_TESTS env variable 4704 * testenv/Test--https-crl.py, testenv/Test--https.py, 4705 testenv/Test-hsts.py: Return 77 (SKIP) if SSL/TLS is not configured 4706 47072015-12-03 Tim Rühsen <tim.ruehsen@gmx.de> 4708 4709 Add Test-hsts.py to SSL_TESTS 4710 * testenv/Makefile.am: Add Test-hsts.py to SSL_TESTS 4711 47122015-12-03 Ygal Blum <ygal.blum@technicolor.com> 4713 4714 Fix compilation when without-ssl is selected 4715 47162015-12-03 Darshit Shah <darnir@gmail.com> 4717 4718 Include Metalink and GPG information in version 4719 * src/build_info.c.in: Include the presence of Metalink and GPGME features in 4720 the output for wget --version 4721 47222015-12-03 Giuseppe Scrivano <gscrivan@redhat.com> 4723 4724 Add --check-certificate=quiet 4725 * doc/wget.texi: Add documentation for --check-certificate=quiet. 4726 * src/options.h (enum CHECK_CERT_MODES): New enum. 4727 * src/init.c (cmd_check_cert): New static function. 4728 (cmd_boolean_internal): Likewise. 4729 * src/gnutls.c (ssl_check_certificate): Handle CHECK_CERT_QUIET. 4730 * src/openssl.c (ssl_check_certificate): Handle CHECK_CERT_QUIET. 4731 47322015-11-24 Tim Rühsen <tim.ruehsen@gmx.de> 4733 4734 Fix regression in HTTP authentication 4735 * src/http.c (initialize_request): Fix wrong params to search_netrc() 4736 4737 Regression introduced in commit 29850e77 4738 Reported-by: Axel Reinhold <axel@freakout.de> 4739 47402015-11-23 Tim Rühsen <tim.ruehsen@gmx.de> 4741 4742 Fix SIGSEGV in -N / --content-disposition combination 4743 * src/http.c (http_loop): Fix SIGSEGV 4744 4745 Reported-by: "Schleusener, Jens" <Jens.Schleusener@t-online.de> 4746 47472015-11-20 Ander Juaristi <ajuaristi@gmx.es> 4748 4749 Fix potential NULL pointer dereference 4750 * src/gnutls.c (ssl_connect_wget): check for NULL before calls 4751 47522015-11-20 Giuseppe Scrivano <gscrivan@redhat.com> 4753 4754 * configure.ac: change gettext version to 0.18.1 4755 47562015-11-19 Ikey Doherty <michael.i.doherty@intel.com> 4757 4758 configure.ac: Use correct gettext version 4759 47602015-11-19 Tim Rühsen <tim.ruehsen@openmediasystem.de> 4761 4762 Fix HSTS memory issue + test code issue 4763 * src/hsts.c (hsts_find_entry): Fix freeing memory 4764 (hsts_remove_entry): Remove freeing host member 4765 (hsts_match): Free host member here 4766 (hsts_store_entry): Free host member here 4767 (test_url_rewrite): Fix 'created' value 4768 (test_hsts_read_database): Fix 'created' value 4769 4770 Reported-by: Dagobert Michelsen <dam@opencsw.org> 4771 47722015-11-17 Tim Rühsen <tim.ruehsen@gmx.de> 4773 4774 Include errno.h instead of sys/errno.h (Solaris issue) 4775 * src/metalink.c: Include errno.h instead of sys/errno.h 4776 4777 Reported-by: Dagobert Michelsen <dam@opencsw.org> 4778 47792015-11-17 Darshit Shah <darnir@gmail.com> 4780 4781 Fix compile error when IPv6 is disabled 4782 * src/ftp-basic.c: The code for the new FTPS functionality was unintentionally 4783 inside a #ifdef IPV6 block. Move the code around so that it is defined even when 4784 IPV6 isn't used 4785 4786 Use gnulib module flock to provide function 4787 * bootstrap.conf: Use module flock from gnulib to provide it on other platforms 4788 such as Windows. 4789 47902015-11-16 Darshit Shah <darnir@gmail.com> 4791 4792 Eliminate NDEBUG redefined warnings 4793 * src/wget.h: Define NDEBUG only if it hasn't been defined before 4794 47952015-11-15 Giuseppe Scrivano <gscrivan@redhat.com> 4796 4797 NEWS: prepare new release cycle 4798 4799 Prepare release 1.17 4800 * gnulib: sync with upstream. 4801 * NEWS: Update. 4802 * src/main.c: Change the copyright year. 4803 48042015-11-03 Tim Rühsen <tim.ruehsen@gmx.de> 4805 4806 Document combination of -nc and -O 4807 Fixes #46359 4808 48092015-11-03 Tim Rühsen <tim.ruehsen@gmx.de> 4810 4811 Do not download/save file on error when --spider enabled 4812 * src/http.c (gethttp,http_loop): 4813 Do not download/save file on error when --spider is enabled and not 4814 working recursive. 4815 4816 Reported-by: Сковорода Никита Андреевич chalkerx@gmail.com 4817 Fixes #45821 4818 48192015-10-27 Tim Rühsen <tim.ruehsen@gmx.de> 4820 4821 Fix URL conversion for colons in filenames 4822 * src/convert.c (construct_relative): Prepend './' to filename 4823 * tests/Test-k.px: Amend test to succeed 4824 48252015-10-15 Tim Rühsen <tim.ruehsen@gmx.de> 4826 4827 Adjust indentation of --no-use-server-timestamps in help output 4828 * src/main.c: Adjust indentation of --no-use-server-timestamps 4829 48302015-10-13 Ander Juaristi <ajuaristi@gmx.es> 4831 4832 Added --convert-file-only option 4833 * src/convert.c (convert_links_in_hashtable, convert_links): 4834 test for CO_CONVERT_BASENAME_ONLY. 4835 (convert_basename): new function. 4836 * src/convert.h: new constant CO_CONVERT_BASENAME_ONLY. 4837 * src/init.c, src/main.c, src/options.h: new option "--convert-file-only". 4838 * doc/wget.texi: updated documentation. 4839 4840 Reviewed-by: Gabriel Somlo <somlo@cmu.edu> 4841 48422015-10-12 Darshit Shah <darnir@gmail.com> 4843 4844 Fix Test-ftp-pasv-not-supported.px 4845 * tests/Test-ftp-pasv-not-supported.px: We do *NOT* expect any 4846 downloaded files. Also, do not negate the Test response. 4847 4848 The test originally expected a downloaded file, but this is not 4849 true. As a result, the test would fail and return exit code 1. This 4850 was presumably the reason why the test result was negated before 4851 returning to the shell. Fix this issue, so that the test runs 4852 correctly without any hacks. 4853 48542015-10-12 Darshit Shah <darnir@gmail.com> 4855 4856 Fix make distcheck failures in Perl SSL Tests 4857 * tests/Makefile.am: Add valgrind-suppressions-ssl to EXTRA_DIST 4858 * tests/Test-proxied-https-auth-keepalive.px: Find valgrind in 4859 correct path during make distcheck 4860 * tests/Test-proxied-https-auth.px: Same 4861 48622015-10-12 christian fafard <cfaf@hotmail.com> 4863 4864 Skip HTTPS perl tests if IO::Socket::SSL not installed 4865 * tests/Test-proxied-https-auth-keepalive.px: Skip test if perl module 4866 IO::Socket::SSL is not installed (trivial change). 4867 * tests/Test-proxied-https-auth.px: Skip test if perl module 4868 IO::Socket::SSL is not installed (trivial change). 4869 48702015-10-09 Ander Juaristi <ajuaristi@gmx.es> 4871 4872 Fix potential race condition 4873 * src/hsts.c (hsts_read_database): get an open file handle 4874 instead of a file name. 4875 (hsts_store_dump): get an open file handle 4876 instead of a file name. 4877 (hsts_store_open): open the file and pass the open file handle. 4878 (hsts_store_save): lock the file before the read-merge-dump 4879 process. 4880 4881 Reported-by: Daniel Kahn Gillmor <dkg@fifthhorseman.net> 4882 48832015-10-09 Ander Juaristi <ajuaristi@gmx.es> 4884 4885 Fix HSTS merge bug 4886 * src/hsts.c (hsts_store_merge): call hsts_new_entry() if the entry 4887 does not exist in the database. 4888 4889 When merging the existing HSTS database on disk with the one on memory, 4890 the entries that were on disk but not on memory were ignored. Thus, 4891 only the existing entries were merged. This behavior was only triggered 4892 when more than one Wget processes were using the same HSTS database 4893 simultaneously. This commit fixes the bug by adding the new entries 4894 to the on-memory database if they were not found there. 4895 48962015-09-28 Giuseppe Scrivano <gscrivan@redhat.com> 4897 4898 testenv/Test--rejected-log.py: Remove trailing white spaces 4899 49002015-09-28 Tim Rühsen <tim.ruehsen@gmx.de> 4901 4902 Handle TLS rehandshakes in GnuTLS code 4903 * src/gnutls.c: New static function _do_handshake() 4904 * src/gnutls.c (wgnutls_read_timeout): Handle rehandshake 4905 * src/gnutls.c (wgnutls_write): Handle rehandshake 4906 * src/gnutls.c (ssl_connect_wget): Move handshake code into _do_handshake() 4907 4908 Fixes #46061 4909 49102015-09-22 Darshit Shah <darnir@gmail.com> 4911 4912 Add tests for missing qop in digest auth 4913 * testenv/test-auth-both.py: Add qop parameter for digest auth 4914 * testenv/test-auth-digest.py: Same 4915 * testenv/conf/authentication.py: Support additional parameters for 4916 authentication 4917 * testenv/servers/http/http_server.py: Same 4918 4919 Do not test for impossible qop value 4920 * http.c (digest_authentication_encode): Wget already errors out if 4921 qop != "auth". Then it makes no sense to test for qop == "auth-int" 4922 later on. Currently, Wget does not support the "auth-int" qop value 4923 and till nobidy requests, it may remain so. 4924 49252015-09-22 Darshit Shah <darnir@gmail.com> 4926 4927 Fix #46024. Support RFC 2069 Digest Authentication 4928 * http.c (digest_authentication_encode): Some servers are still 4929 using the obsolete RFC 2069 Digest Authentication. Allow Digest 4930 authentication without the qop parameter for this. 4931 4932 Reported-by: Andreas Longwitz <longwitz@incore.de> 4933 49342015-09-21 Darshit Shah <darnir@gmail.com> 4935 4936 Revert "Disable progress bar when wget is backgrounded (trivial patch)" 4937 This reverts commit e6247325633d7d0007906f88d573a3bfa37307a7. 4938 49392015-09-20 Giuseppe Scrivano <gscrivan@redhat.com> 4940 4941 NEWS: cite FTPS support 4942 49432015-09-14 Ander Juaristi <ajuaristi@gmx.es> 4944 4945 Added support for FTPS 4946 * doc/wget.texi: updated documentation to reflect the new FTPS functionality. 4947 * src/ftp-basic.c (ftp_greeting): new function to read the server's greeting. 4948 (ftp_login): greeting code was previously here. Moved to ftp_greeting to 4949 support FTPS implicit mode. 4950 (ftp_auth): wrapper around the AUTH TLS command. 4951 (ftp_ccc): wrapper around the CCC command. 4952 (ftp_pbsz): wrapper around the PBSZ command. 4953 (ftp_prot): wraooer around the PROT command. 4954 * src/ftp.c (get_ftp_greeting): new static function. 4955 (init_control_ssl_connection): new static function to start SSL/TLS on the 4956 control channel. 4957 (getftp): added hooks to support FTPS commands (RFCs 2228 and 4217). 4958 (ftp_loop_internal): test for new FTPS error codes. 4959 * src/ftp.h: new enum 'prot_level' with available FTPS protection levels + 4960 prototypes of previous functions. New flag for enum 'wget_ftp_fstatus' to track 4961 whether the data channel has some security mechanism enabled or not. 4962 * src/gnutls.c (struct wgnutls_transport_context): new field 'session_data'. 4963 (wgnutls_close): free GnuTLS session data before exiting. 4964 (ssl_connect_wget): save/resume SSL/TLS session. 4965 * src/http.c (establish_connection): refactor ssl_connect_wget call. 4966 (metalink_from_http): take into account SCHEME_FTPS as well. 4967 * src/init.c, src/main.c, src/options.h: new command line/wgetrc options. 4968 (main): in recursive downloads, check for SCHEME_FTPS as well. 4969 * src/openssl.c (struct openssl_transport_context): new field 'sess'. 4970 (ssl_connect_wget): save/resume SSL/TLS session. 4971 * src/retr.c (retrieve_url): check new scheme SCHEME_FTPS. 4972 * src/ssl.h (ssl_connect_wget): refactor. New parameter of type 'int *'. 4973 * src/url.c. src/url.h: new scheme SCHEME_FTPS. 4974 * src/wget.h: new FTPS error codes. 4975 * src/metalink.h: support FTPS scheme. 4976 49772015-09-10 Christian Neukirchen <chneukirchen@gmail.com> 4978 4979 Disable progress bar when wget is backgrounded (trivial patch) 4980 * src/progress.c (create_image): progress only when in foreground 4981 4982 Sometimes I start wget, but the remote site is too slow, so I rather 4983 want to run it in background, however when I simply use job control 4984 for that, wget will keep spewing the progress bar all over my 4985 terminal. I have found the SIGHUP/SIGUSR1 feature to redirect output 4986 to a log file, but I think the following small patch is even more 4987 useful, since the progress bar will simply resume when wget is 4988 foregrounded again (also, the final message is still printed to the 4989 terminal in any case): 4990 49912015-09-04 Hubert Tarasiuk <hubert.tarasiuk@gmail.com> 4992 4993 Add information about libmetalink and GnuPG 4994 * README.checkout: Optional dependencies and URL references. 4995 49962015-09-02 Hubert Tarasiuk <hubert.tarasiuk@gmail.com> 4997 4998 Do not free Metalink structure if not initialized 4999 * src/main.c (main): Move metalink_delete to the conditional block. 5000 50012015-09-01 Ander Juaristi <ajuaristi@gmx.es> 5002 5003 Updated HSTS documentation 5004 * doc/wget.texi: updated HSTS documentation. 5005 5006 Reported-by: Daniel Kahn Gillmor <dkg@fifthhorseman.net> 5007 50082015-09-01 Ander Juaristi <ajuaristi@gmx.es> 5009 5010 Extra debug traces for HSTS. 5011 * src/main.c (load_hsts, save_hsts): added DEBUGP() calls to signal 5012 reads and saves of the HSTS database file. 5013 50142015-08-31 Darshit Shah <darnir@gmail.com> 5015 5016 Fix coding style violation in last commit 5017 * http.c (test_parse_range_header): Declare loop variable 5018 explicitly. Not in gnu99 standard. 5019 50202015-08-30 Darshit Shah <darnir@gmail.com> 5021 5022 Add unit test for parse_content_range() method 5023 * http.c (test_parse_range_header): New function to test the 5024 function for parsing the HTTP/1.1 Content-Range header. 5025 * test.[ch]: Same 5026 * http.c (parse_content_range): Fix parsing code. Fail on scenarios 5027 mentioned in rfc 7233. 5028 50292015-08-30 Tim Rühsen <tim.ruehsen@gmx.de> 5030 5031 Fix null pointer dereference 5032 * src/metalink.c (gpg_skip_verification): 5033 Check output_stream before fclose 5034 5035 Fix leaks found by Coverity 5036 * src/http.c (parse_strict_transport_security): Free c_max_age 5037 (open_output_stream): Fix indentation 5038 * src/iri.c (locale_to_utf8): Free new 5039 50402015-08-29 Tim Rühsen <tim.ruehsen@gmx.de> 5041 5042 Fix two leaks foudn by Coverity 5043 * src/http.c (gethttp): Do not leak 'message'. 5044 * src/main.c (format_and_print_line): Do not leak 'line_dup'. 5045 5046 Fix resource leak discovered by Coverity 5047 * src/retr.c (retrieve_url): Don't leak local_file. 5048 50492015-08-29 Darshit Shah <darnir@gmail.com> 5050 5051 Fix memory leaks in unit-test 5052 * hsts.c (get_hsts_store_filename): Free the homedir value 5053 (close_hsts_test_store): Actually free the store struct too 5054 (test_hsts_new_entry): Pass store to close_hsts_test_store() 5055 (test_hsts_url_rewrite_superdomain): Same 5056 (test_hsts_url_rewrite_congruent): Same 5057 (test_hsts_read_database): Same and homedir and store filename 5058 * http.c (test_parse_content_disposition): Free the returned 5059 filename 5060 * url.c (test_append_uri_pathel): Free allocated string 5061 5062 Fix mixed-indentation in http.c 5063 * http.c: Fix mix indentation. Visual change only. 5064 50652015-08-27 Tim Rühsen <tim.ruehsen@gmx.de> 5066 5067 Suppress debug output when strings may contain password 5068 * iri.c (do_conversion): Do not print out converted strings if they 5069 contain an '@'. That could be an URL with embedded password. 5070 5071 Fixes #45825 5072 50732015-08-26 Ander Juaristi <ajuaristi@gmx.es> 5074 5075 Fix resource leak. 5076 * src/http.c (parse_strict_transport_security): Freed memory to avoid resource leak. 5077 Comply with GNU coding style. 5078 50792015-08-22 Tim Rühsen <tim.ruehsen@gmx.de> 5080 5081 Fix typo in NEWS 5082 * NEWS: Change typo --accept-reject into --accept-regex 5083 5084 Reported-by: grarpamp <grarpamp@gmail.com> 5085 50862015-08-21 Jookia <166291@gmail.com> 5087 5088 Clarify that links are being converted. 5089 * src/convert.c: Add 'links in' after 'Converted %d' and 'Converting %s'. 5090 5091 Removed useless TODOs. 5092 * testenv/Test--reject-log.py: Remove TODOs. 5093 50942015-08-15 Miquel Llobet <mllobet.cm@gmail.com> 5095 5096 Fixed #44516 -o- not logging to stdout 5097 src/log.c (log_init): check for hypen on filename, set stdout 5098 50992015-08-15 Daniele Calore <daniele.calore@tin.it> 5100 5101 Fix #40426: Allow -r -O- only if FILE is regular 5102 * main.c: added check of "-r -O FILE" option combination 5103 allow only if FILE is a regular file (bug #40426) 5104 51052015-08-15 Darshit Shah <darnir@gmail.com> 5106 5107 Fix var name conflicts with math.h and wingdi.h 5108 * src/recur.c (reject_reason): Rename all enum members to WG_RR_xx. 5109 * src/recur.c (retrieve_tree, download_child, 5110 write_reject_log_reason): Same 5111 51122015-08-14 Tim Rühsen <tim.ruehsen@gmx.de> 5113 5114 Let bootstrap/autoreconf work without GPGME installed 5115 * configure.ac: Check for existance of AM_PATH_GPGME 5116 51172015-08-11 Tim Rühsen <tim.ruehsen@gmx.de> 5118 5119 Fix IP address exposure in FTP code 5120 * src/ftp.c (getftp): Do not use PORT when PASV fails. 5121 * tests/FTPServer.px: Add pasv_not_supported server flag. 5122 * tests/Makefile.am: Add Test-ftp-pasv-not-supported.px 5123 * tests/Test-ftp-pasv-not-supported.px: New test 5124 5125 Fix IP address exposure when automatically falling back from 5126 passive mode to active mode (using the PORT command). A behavior that 5127 may be used to expose a client's privacy even when using a proxy. 5128 51292015-08-07 Tim Rühsen <tim.ruehsen@gmx.de> 5130 5131 Fix C89 compliancy in HSTS test code 5132 * src/hsts.c (test_hsts_new_entry): 5133 Move variable assignment before code 5134 5135 Fix C89 compliancy in latest code 5136 * src/recur.c: Declare variables before code 5137 (write_reject_log_url): 5138 Use const keyword where appropriate 5139 Use the 'default' switch statement 5140 Use xfree() instead of free() 5141 Renamed variable f -> fp 5142 (write_reject_log_reason): 5143 Use const keyword where appropriate 5144 Use the 'default' switch statement 5145 Renamed variable f -> fp 5146 Renamed variable r -> reason 5147 51482015-08-07 Tim Rühsen <tim.ruehsen@gmx.de> 5149 5150 Remove redundant definition of _GNU_SOURCE 5151 * src/warc.c: Remove definition of _GNU_SOURCE 5152 5153 _GNU_SOURCE is already defined in config.h 5154 51552015-08-07 Giuseppe Scrivano <gscrivan@redhat.com> 5156 5157 NEWS: update 5158 51592015-08-07 Jookia <166291@gmail.com> 5160 5161 Rewrite the --rejected-log test using the new framework. 5162 * tests/Test--rejected-log.px: Remove old test. 5163 * testenv/Test--rejected-log.py: Create new test. 5164 5165 Replace variables before comparing expected files. 5166 * expected_files.py: Use formatted_content instead of file.content. 5167 51682015-08-06 Jookia <166291@gmail.com> 5169 5170 Add option to write URL rejections to a tab-delimited CSV log. 5171 * main.c: Add "--rejected-log" option. 5172 * init.c: Add "rejectedlog" command. 5173 * options.h: Add "rejected_log" parameter string. 5174 * wget.texi: Add brief documentation on new --rejected-log option. 5175 * recur.c: Optionally log details of URLs not traversed. 5176 Add reject_reason enum. 5177 (download_child_p -> download_child): Return a reject_reason. 5178 (descend_redirect_p -> descend_redirect): Return a reject_reason. 5179 (retrieve_tree): Support logging reasons for rejection. 5180 Add write_reject_log_header that writes a CSV format header to a file. 5181 Add write_reject_log_url that writes a url struct to a file in CSV format. 5182 Add write_reject_log_reason that writes the URL and parent URL as well as the 5183 rejection reason to a CSV file. 5184 * Test--rejected-log.px: Add a basic test for the --rejected-log command. 5185 * tests/Makefile.am: Run Test--rejected-log.px. 5186 5187 This allows you to figure out why URLs are being rejected and some context 5188 around it. CSV is used as the output format since it can be used easily parsed, 5189 it's delimited by tabs instead of commas to allow using all (quoted) URL 5190 characters and includes column names which may be used for compatibility. 5191 51922015-08-04 Tim Rühsen <tim.ruehsen@gmx.de> 5193 5194 Fix memory leak in HSTS code 5195 * src/main.c (get_hsts_database): Free 'home' variable 5196 5197 void uninitialized variable in metalink code 5198 * src/metalink.c: Init retr_err with METALINK_MISSING_RESOURCE 5199 * src/wget.h: Add enum METALINK_MISSING_RESOURCE 5200 52012015-07-24 Darshit Shah <darnir@gmail.com> 5202 5203 Fix function name collision with OpenSSL library 5204 * src/utils.[ch], src/http.c, src/metalink.c: Rename function 5205 hex_to_string() to wg_hex_to_string sine it collides with a 5206 similarly named function in OpenSSL Library. 5207 5208 Fix configure options for metalink 5209 * configure.ac: Ensure metalink support can be properly disabled 5210 52112015-07-22 Alex Henrie <alexhenrie24@gmail.com> 5212 5213 Make the filename marquee a proper marquee 5214 * src/progress.c: Start the marquee in the middle of the available space 5215 and do not restart it until all of the text has scrolled out of view. 5216 52172015-07-20 Giuseppe Scrivano <gscrivan@redhat.com> 5218 5219 NEWS: cite HSTS 5220 5221 Fix metalink tests 5222 testenv/Test-metalink-http.py: initialize HTTP test server 5223 testenv/Test-metalink-xml.py: initialize HTTP test server 5224 52252015-07-20 Ander Juaristi <ajuaristi@gmx.es> 5226 5227 Enhancements in testsuite engine + new HSTS test. 5228 * testenv/Makefile.am: added new test 'Test-hsts.py'. 5229 * testenv/Test-hsts.py: new test for HSTS. 5230 * testenv/conf/domains.py: new hook to override domain list. 5231 * testenv/test/base_test.py: (__init__): new optional parameter 5232 for tests 'req_protocols'. 5233 (get_domain_addr): set the instance variables 'addr' and 'port'. 5234 Return address as an array (domain, port) instead of string. 5235 (gen_cmd_line): take into account domain and port. 5236 * testenv/test/http_test.py (__init__): new optional parameter 5237 'req_protocols'. 5238 (setup): new function. Call to server_setup() decoupled from 5239 begin() and moved here. 5240 (begin): call to superclass to maintain backward compatibility. 5241 Removed call to server_setup(). 5242 5243 This patch adds a new parameter to the test suite called 'req_protocols', 5244 and a new function called 'setup'. The ability for tests to be able to set some 5245 extra parameters such as the actual requested protocols (with 'req_protocols') 5246 became obvious when support for HSTS was added to Wget, where the requested URI 5247 and the actual executed URI do not have to be the same. This new parameter is optional 5248 and if not specified, the test suite behaves as before. Also, the new function 'setup' 5249 is provided as a means to start the test HTTP server, but not launch the test yet 5250 (this is done when calling 'begin', as usual), in case we want to query the address 5251 and port in which the test server listens. If 'setup' is not called, it is automatically 5252 invoked when calling 'begin'. With these measures, we preserve backward-compatibility with 5253 existing tests. 5254 52552015-07-20 Ander Juaristi <ajuaristi@gmx.es> 5256 5257 Added support for HSTS. 5258 * Makefile.am: Added new source files hsts.c and hsts.h. 5259 * http.c (parse_strict_transport_security): new function for STS header 5260 parsing. 5261 (gethttp): update the HSTS store. 5262 * http.h: new include "hsts.h". 5263 * init.c: new options --hsts and --hsts-file. 5264 * main.c (get_hsts_database, load_hsts, save_hsts): new functions. 5265 New options --no-hsts and --hsts-file added to help. 5266 (main): load and save HSTS store. 5267 * options.h: new variables for supporting --hsts and --hsts-file. 5268 * retr.c (retrieve_url): rewrite the URI according to the HSTS policy before 5269 entering http_loop. 5270 * test.c, test.h: new unit tests for HSTS. 5271 * utils.c, utils.h (countchars): new function. 5272 * wget.h: new preprocessor check. 5273 * hsts.c, hsts.h: new files with the HSTS engine implementation. 5274 5275 Added support for HTTP Strict Transport Security (HSTS), as defined by RFC 5276 6797. 5277 52782015-07-20 Giuseppe Scrivano <gscrivan@redhat.com> 5279 5280 NEWS: cite metalink support 5281 5282 fix compiler warnings 5283 * src/utils.h: Include <stdlib.h> 5284 * src/recur.c: Include "exits.h" 5285 52862015-07-20 Hubert Tarasiuk <hubert.tarasiuk@gmail.com> 5287 5288 Test preferred location in Metalink-over-HTTP test case. 5289 * testenv/Test-metalink-http.py: Ensure preferred location is handled 5290 properly. 5291 5292 Geolocation support for Metalink resources. 5293 * doc/wget.text: Add information about --preferred-location. 5294 * src/init.c: Add --preferred-location option. 5295 * src/main.c (option_data): Handle --preferred-location argument. 5296 (main): Sort resources based on location if requested. 5297 * src/metalink.c (metalink_res_cmp): Compare based on location if 5298 priority and preference are equal. 5299 * src/options.h (options): Add preferred_location option. 5300 5301 Support at most one file signature. Adapt comments to libmetalink 0.13. 5302 * src/metalink.c (retrieve_from_metalink): Add comment about new 5303 libmetalink version. Do not iterate over signatures - support just one. 5304 5305 Move some Metalink-related code from http.c to metalink.c. 5306 * src/http.c: Move find_key_value, has_key, find_key_values. 5307 * src/metalink.c: To here. 5308 * src/metalink.h: Make them non-static and add prototypes here. 5309 5310 Unit test for find_key_values. 5311 * src/http.c: Add test_find_key_values. 5312 * src/test.c (main): Run new test. 5313 * src/test.h: Add test_find_key_values. 5314 5315 Unit test for has_key. 5316 * src/http.c: Add test_has_key. 5317 * src/test.c (main): Run new test. 5318 * src/test.h: Add test_has_key. 5319 5320 Unit test for find_key_value. 5321 * src/http.c: Add test_find_key_value. 5322 * src/test.c (main): Run new test. 5323 * src/test.h: Add test_find_key_value. 5324 5325 Test case for Metalink over HTTP. 5326 * testenv/Test-metalink-http.py: New test. 5327 * testenv/Makefile.am: Add to test list. 5328 5329 Support multiple headers with same name in Python test suite. 5330 * testenv/README: Describe how to use repeated header name. 5331 * testenv/server/http/http_server.py (finish_headers): Send all 5332 values from list if the header value is a Python list. 5333 5334 Test case for Metalink in XML. 5335 * testenv/Test-metalink-xml.py: New test. 5336 * testenv/Makefile.am: Add file for automake. 5337 5338 Start HTTP test only when calling begin(). 5339 * testenv/test/http_test.py: Move self.do_test() from __init__ to 5340 begin(). 5341 5342 Metalink support. 5343 * bootstrap.conf: Add crypto/sha256 5344 * configure.ac: Look for libmetalink and GPGME 5345 * doc/wget.texi: Add --input-metalink and --metalink-over-http 5346 options description. 5347 * po/POTFILES.in: Add metalink.c 5348 * src/Makefile.am: Add new translation unit (metalink.c) 5349 * src/http.c (http_stat): Add metalink field. 5350 (free_stat): Free metalink field. 5351 (find_key_value): Find value of given key in header string. 5352 (has_key): Check if token exists in header string. 5353 (find_key_values): Find all key=value pairs in header string. 5354 (metalink_from_http): Obtain Metalink metadata from HTTP response. 5355 (gethttp): Call metalink_from_http if requested. 5356 (http_loop): Request Metalink metadata from HTTP response if should be. 5357 Fall back to regular download if no Metalink metadata found. 5358 * src/init.c: Add --input-metalink and --metalink-over-http options 5359 * src/main.c (option_data): Handle --input-metalink and 5360 --metalink-over-http cmd arguments. 5361 (print_help): Print --input-metalink option description. 5362 (main): Retrieve files from Metalink file 5363 * src/metalink.c (retrieve_from_metalink): Download files described by 5364 metalink. 5365 (metalink_res_cmp): Comparator for resources priority-sorting. 5366 * src/metalink.h: Create header for metalink.c 5367 (RES_TYPE_SUPPORTED): Define supported resources media. 5368 (DEFAULT_PRI): Default mirror priority for Metalink over HTTP. 5369 (VALID_PRI_RANGE): Valid priority range. 5370 * src/options.h (options): Add input_metalink option and metalink_over_http 5371 options. 5372 * src/utils.c (hex_to_string): Convert binary data to ASCII-hex. 5373 * src/utils.h (hex_to_string): Add prototype. 5374 * src/wget.h: Add metalink-related error enums 5375 Add METALINK_METADATA flag for document type. 5376 53772015-07-15 Romain Bentz <romain.bentz@dataiku.com> 5378 5379 Add NULL value check to fix #45289 5380 * src/recur.c (retrieve_tree): Check return value of url_parse() 5381 53822015-07-14 Tim Rühsen <tim.ruehsen@gmx.de> 5383 5384 Let HTTPS tests XFAIL when no TLS support configured 5385 * configure.ac: Export WITH_SSL for use in Makefile.am 5386 * testenv/Makefile.am: Add HTTPS tests to XFAIL_TESTS when !WITH_SSL 5387 5388 Reported-by: Ander Juaristi <ajuaristi@gmx.es> 5389 53902015-07-01 Tim Rühsen <tim.ruehsen@gmx.de> 5391 5392 Change function params to const in src/iri.[ch] 5393 * iri.h, iri.c: Added const attribute for params of parse_charsset(), 5394 check_encoding_name(), idn_encode(), idn_decode(), 5395 remote_to_utf8(), set_uri_encoding(), set_content_encoding(). 5396 5397 Work around a libidn <= 1.30 vulnerability 5398 * src/iri.c: Add _utf8_is_valid() to check UTF-8 sequences before 5399 passing them to idna_to_ascii_8z(). 5400 54012015-06-27 Ángel González <keisial@gmail.com> 5402 5403 Fix wgetrc filename creation for Windows 5404 * init.c/wgetrc_file_name: Remove obsolete code in WINDOWS code path 5405 5406 Reported-by: Gisle Vanem <gvanem@yahoo.no> 5407 54082015-06-16 Darshit Shah <darnir@reniac.com> 5409 5410 Add valgrind suppression files for HTTPS tests 5411 * testenv/test/base_test.py: Use Valgrind SSL suppressions file for 5412 tests 5413 * testenv/valgrind-suppression-ssl, tests/valgrind-suppression-ssl: 5414 Add new suppression files to suppress OpenSSL errors in valgrind 5415 * tests/test-proxied-https-auth.px: Use the valgrind SSL 5416 suppressions file for the test 5417 * tests/test-proxied-https-auth-keepalive.px: Same 5418 54192015-06-14 Darshit Shah <darnir@reniac.com> 5420 5421 contrib/check-hard: Indentation and spacing cleanup 5422 * contrib/check-hard: Reduce the amount of text output to the 5423 screen. Also implement some indentation and whitespace cleanups. 5424 54252015-06-14 Tim Rühsen <tim.ruehsen@gmx.de> 5426 5427 Fix usage of CFLAGS in contrib/check-hard 5428 * contrib/check-hard: Set CFLAGS per command line instead of using export. 5429 5430 'make distcheck' changes CFLAGS. So using ./configure -C together with 5431 exported CFLAGS fails. Setting CFLAGS per command line works smoothly. 5432 54332015-06-13 Tim Rühsen <tim.ruehsen@gmx.de> 5434 5435 Move test_* function protoypes from test.c to test.h 5436 * src/test.c: Remove test_* function prototypes, make tests_run static 5437 * src/test.h: Add test_* function protoypes 5438 54392015-05-23 Giuseppe Scrivano <gscrivan@redhat.com> 5440 5441 NEWS: cite --if-modified-since 5442 5443 gnulib: update gnulib 5444 54452015-05-22 Hubert Tarasiuk <hubert.tarasiuk@gmail.com> 5446 5447 Include --if-modified-since option in user manual. 5448 * doc/wget.texi: Add --if-modified-since section. 5449 5450 Support If-Modified-Since header in timestamping mode. 5451 * src/wget.h: Add IF_MODIFIED_SINCE enum for dt. Add TIMECONV_ERR 5452 enum to uerr_t. 5453 * src/http.c (time_to_rfc1123): Convert time_t do http time. 5454 * src/http.c (initialize_request): Include If-Modified-Since header 5455 if appropriate. 5456 * src/http.c (set_file_timestamp): Separate this code from check_file_output. 5457 * src/http.c (check_file_output): Use set_file_timestamp. 5458 * src/http.c (gethttp): Handle properly 304 return code and 200 if server 5459 ignores If-Modified-Since headers. 5460 * src/http.c (http_loop): Load filename to hstat if condget was requested, 5461 use IF_MODIFIED_SINCE if requested and current timestamp can be obtained. 5462 5463 Add --if-modified-since option 5464 * src/init.c: Add to commands array. 5465 * src/main.c: Add to cmdline_option. Add to help message. 5466 * src/options.h: Add to options struct. 5467 5468 Add test for condget requests. 5469 * testenv/Test-condget.py: the test 5470 * testenv/Makefile.am: add to tests list 5471 5472 Support conditional GET in testenv server. 5473 * src/exc/server_error.py: Add exception for GET to HEAD fallback. 5474 * src/server/http/http_server.py: Do not send body if 304 return 5475 code requested for a file. 5476 5477 Implement timestamp support for local files in testenv 5478 * testenv/README: Change timestamp format definition 5479 * testenv/conf/local_files.py: Set proper timestamps 5480 54812015-05-20 Pär Karlsson <feinorgh@gmail.com> 5482 5483 Fix undeclared loop variable in Perl test suite 5484 Reported-by: Hubert Tarasiuk <hubert.tarasiuk@gmail.com> 5485 54862015-05-12 Ander Juaristi <ajuaristi@gmx.es> 5487 5488 Make sure Wget does not unescape reserved chars. 5489 * testenv/Test-reserved-chars.py: New file. 5490 5491 * testenv/Makefile.am: Added new test Test-reserved-chars.py. 5492 5493 When following redirections, Wget should not unescape the reserved 5494 characters that might appear in target URLs. 5495 54962015-05-12 Ander Juaristi <ajuaristi@gmx.es> 5497 5498 Fixed incorrect handling of reserved chars. 5499 * src/iri.c (do_conversion): Call url_unescape_except_reserved, 5500 instead of url_unescape. 5501 5502 * src/url.c (url_unescape_1): New static function. 5503 (url_unescape): Calls url_unescape_1 with mask zero. Preserves 5504 same behavior as before. Only code changes. 5505 (url_unescape_except_reserved): New function. 5506 5507 * src/url.h: Added prototype for url_unescape_except_reserved(). 5508 5509 When the locale is US-ASCII, URIs that contain special characters 5510 in them are converted to IRIs according to RFC 3987, section 3.2 5511 "Converting URIs to IRIs". 5512 55132015-05-07 Darshit Shah <darnir@reniac.com> 5514 5515 Fix documentation for update_speed_ring() 5516 * progress.c (update_speed_ring): The comment for the function 5517 incorrectly stated that the function uses thirty samples from the 5518 past instead of twenty. 5519 5520 Reported-By: Yi Li <lovelylich@gmail.com> 5521 55222015-05-04 Darshit Shah <darnir@reniac.com> 5523 5524 Remove shadowed variable in http.c 5525 * http.c (gethttp): Rename err to conn_err to prevent shadowed 5526 variable 5527 55282015-05-04 Steven Schubiger <stsc@member.fsf.org> 5529 5530 paramcheck: use explicit quoting for here-docs 5531 * util/paramcheck.pl: Adjust here-docs 5532 55332015-05-03 Tim Ruehsen <tim.ruehsen@gmx.de> 5534 5535 Fix format specifier warning 5536 * src/utils.c (aprintf): Use %d for int argument 5537 55382015-05-01 Nikolay Merinov <kim.roader@gmail.com> 5539 5540 Fix timestamping and continue behaviour with ftp protocol. 5541 * src/ftp.c (ftp_loop_internal): Add option `force_full_retrieve' that force to 5542 retrieve full file. 5543 (ftp_retrieve_list): Pass `true' as `force_full_retrieve' option to 5544 `ftp_loop_internal' if we want to download file with newer timestamp than local 5545 copy. 5546 55472015-04-27 Rohit Mathulla <rohit_mathulla@yahoo.com> 5548 5549 openssl: Read cert from private key file when needed 5550 * src/openssl.c (ssl_init): Assign opt.cert_{file, type} 5551 from opt.private_key(_type) 5552 5553 Fix double free bug in SSL code 5554 * src/openssl.c, src/gnutls.c (ssl_init): Copy options using xstrdup 5555 55562015-04-20 Hubert Tarasiuk <hubert.tarasiuk@gmail.com> 5557 5558 Single exit point and common cleanup code in gethttp 5559 * src/http.c (gethttp): Common cleanup for type, message, 5560 req, resp, head. Single exit point. 5561 55622015-04-17 Tim Rühsen <tim.ruehsen@gmx.de> 5563 5564 Silence warning in perl test suite 5565 * tests/WgetTests.pm: Use string comparisons for $valgrind variable 5566 55672015-04-17 Tim Rühsen <tim.ruehsen@gmx.de> 5568 5569 Check memory allocations in WARC code 5570 * src/warc.c: Remove some memory allocations, 5571 use xmalloc instead of malloc 5572 5573 Reported-by: Bill Parker <wp02855@gmail.com> 5574 55752015-04-17 Tim Rühsen <tim.ruehsen@gmx.de> 5576 5577 Add more const usage to function params 5578 * warc.c, warc.h: Add const specifier to several function args 5579 55802015-04-14 Darshit Shah <darnir@reniac.com> 5581 5582 PEP8'ify the Python Test Suite 5583 * testenv/conf/{__init__,authentication,files_crawled, 5584 hook_sample,reject_header,server_files}.py: Aesthetic changes to 5585 meet Python PEP8 guidelines 5586 * testenv/exc/{server_error,test_failed}.py: Same 5587 * testenv/misc/{colour_terminal,wget_file}.py: Same 5588 * testenv/server/http/http_server.py: Same 5589 * testenv/test/base_test.py: Same 5590 55912015-04-13 Ander Juaristi <ajuaristi@gmx.es> 5592 5593 Improved test suite documentation 5594 * README.checkout: Added reference to Python. New section 5595 "Testing and development". Updated information about test suites. 5596 5597 Added support for GDB in Python tests 5598 * base_test.py (gen_cmd_line): Check GDB_TESTS environment variable. 5599 56002015-04-13 Tim Ruehsen <tim.ruehsen@gmx.de> 5601 5602 Added GDB support to Perl tests 5603 * WgetTests.pm (run): Check GDB_TESTS environment variable. 5604 56052015-04-11 Hubert Tarasiuk <hubert.tarasiuk@gmail.com> 5606 5607 Add Valgrind suppression for libidn.so at idna_to_ascii_4z 5608 * tests/WgetTests.pm (run): Include suppression file when running Valgrind. 5609 * tests/valgrind-suppressions: Add suppression for idn_to_ascii_4z. 5610 * tests/Makefile.am: Add valgrind-suppressions to EXTRA_DIST. 5611 56122015-04-11 Ángel González <keisial@gmail.com> 5613 5614 Remove memory leak in idn_encode. 5615 * src/iri.c (idn_encode): Free buffer from remote_to_utf8 5616 when needed; give meaningful names to variables; 5617 remove excessive comment. 5618 56192015-04-10 Hubert Tarasiuk <hubert.tarasiuk@gmail.com> 5620 5621 Fix error in free_vec. 5622 * src/utils.c (free_vec): Increment pointer instead of its value. 5623 5624 Reported-by: Gisle Vanem <gvanem@yahoo.no> 5625 56262015-04-10 Ángel González <keisial@gmail.com> 5627 5628 Fix const usage in iri.c 5629 * src/iri.c (remote_to_utf8): Do not qualify with const the output pointer. 5630 (do_conversion): Use the provided input parameter as const. 5631 (idn_encode): casts to remote_to_utf8 parameters are no longer needed. 5632 * src/iri.h: Adjusted remote_to_utf8 prototype. 5633 * src/url.c: It is no longer necessary to cast new_url to const char. 5634 56352015-04-06 Miquel Llobet <mllobet.cm@gmail.com> 5636 5637 Fixed #44628 honoring RFC 6266 content-disposition 5638 src/http.c (parse_content_disposition): stores filename* and filename 5639 separately and choses filename* if available. 5640 (test_parse_content_disposition): added new tests. 5641 56422015-04-02 Giuseppe Scrivano <gscrivan@redhat.com> 5643 5644 NEWS: cite last change 5645 56462015-04-02 Steven M. Schweda <sms@antinode.info> 5647 5648 Add option to restrict filenames used VMS. 5649 * src/options.h (enum restrict_files_os): Define "restrict_vms". 5650 * src/init.c (defaults) [__VMS]: Set "opt.restrict_files_os" to 5651 "restrict_vms". 5652 (cmd_spec_restrict_file_names): honor "vms". 5653 * src/url.c (filechr_not_unix): Define "filechr_not_vms". 5654 (filechr_table): Update for VMS. 5655 (append_uri_pathel): Honor opt.restrict_files_os. 5656 (FN_QUERY_SEP): Update for VMS. 5657 (FN_QUERY_SEP_STR): Update for VMS. 5658 56592015-04-01 Hubert Tarasiuk <hubert.tarasiuk@gmail.com> 5660 5661 Change semantics of resp_free and request_free in http.c 5662 * src/http.c (resp_free): Change the semantics of this function. 5663 (request_free): Change the semantics of this function. 5664 (initialize_request): Adjust request_free call. 5665 (establish_connection): Adjust request_free, resp_free calls. 5666 (gethttp): Adjust request_free, resp_free calls. 5667 5668 Do not free request in establish_connection; do it in gethttp 5669 * src/http.c (establish_connection): Do not free request here (it is 5670 * never allocated here). 5671 * src/http.c (gethttp): Free request before returning if error in 5672 * establish_connection encountered. 5673 5674 Transform read_header label and goto into a loop 5675 * src/http.c (gethttp): Replace label and goto statement with a do 5676 loop. 5677 56782015-03-31 Hubert Tarasiuk <hubert.tarasiuk@gmail.com> 5679 5680 Factor out set_content_type function from gethttp 5681 * src/http.c (gethttp): Move some code in... 5682 (set_content_type): ... a new function. 5683 56842015-03-18 Giuseppe Scrivano <gscrivan@redhat.com> 5685 5686 Factor out some gethttp code 5687 * src/http.c (gethttp): Move some code in... 5688 (open_output_stream): ... a new function. 5689 5690 Factor out some auth gethttp code 5691 * src/http.c (gethttp): Move some code in... 5692 (check_auth): ... a new function. 5693 5694 Factor out some gethttp code 5695 * src/http.c (gethttp): Move some code in... 5696 (check_file_output): ... a new function. 5697 5698 Factor out some connection initialization code for gethttp 5699 * src/http.c (gethttp): Move some initialization code in... 5700 (establish_connection): ... a new function. 5701 5702 Factor out some proxy initialization code for gethttp 5703 * src/http.c (gethttp): Move some initialization code in... 5704 (initialize_proxy_configuration): ... a new function. 5705 5706 Factor out some initialization code for gethttp 5707 * src/http.c (gethttp): Move some initialization code in... 5708 (initialize_request): ... a new function. 5709 57102015-03-18 Tim Ruehsen <tim.ruehsen@gmx.de> 5711 5712 src/ftp.c: make sure warc_tmp becomes closed before return 5713 Reported-by: Coverity bug #1188044 5714 5715 src/http.c: fix error return of digest_authentication_encode() 5716 Reported-by: Coverity bug #1188036 5717 57182015-03-17 Rohan Prinja <rohan.prinja@gmail.com> 5719 5720 Convert wget.texi to UTF-8 5721 * doc/wget.texi: convert to UTF-8 by adding @documentencoding 5722 * doc/Makefile.am: Pass argument --utf8 to pod2man. 5723 57242015-03-16 Ander Juaristi Alamos <ajuaristi@gmx.es> 5725 5726 * doc/wget.texi: The default is GnuTLS, not OpenSSL. 5727 57282015-03-16 Darshit Shah <darnir@gmail.com> 5729 5730 testenv/http_server: Allow overriding Headers 5731 We would like to override existing headers in the response from the 5732 server to allow the test cases to define their own headers. This patch 5733 allows this behaviour through the use of the add_header() method while 5734 also allowing sending multiple headers of the same name. 5735 57362015-03-14 Darshit Shah <darnir@gmail.com> 5737 5738 retr.c: Fix memory leak in retrieve_from_file() 5739 Reported by: Coverity Bug 1188045 5740 5741 html-url.c: Fix potential memory leaks 5742 Reported by: Coverity Bug 1188050 5743 5744 main.c: Fix two potential memory leaks 5745 Reported by: Coverity bug 1188048 5746 5747 retr.c: Fix two memory leaks when proxy URL is bad 5748 Reported by: Coverity bug 1188047 5749 57502015-03-13 Darshit Shah <darnir@reniac.com> 5751 5752 Docs: --post-file is binary data 5753 Wget considers the file mentioned in the --post-file argument as a 5754 binary file and does not strip any control characters. The lack of this 5755 information in the documentation can cause a lot of headaches debugging 5756 for a simple issue 5757 57582015-03-09 Giuseppe Scrivano <gscrivan@redhat.com> 5759 5760 maint: update copyright year ranges to include 2015 5761 5762 NEWS: Prepare new development cycle 5763 57642015-03-09 Yousong Zhou <yszhou4tech@gmail.com> 5765 5766 Fix --content-on-error option handling. 5767 * src/http.c: Log --content-on-error downloads. 5768 * src/retr.c (retrieve_url): Register the download of an error page 5769 when --content-on-error is specified. 5770 5771 testenv: add test case Test--convert-links--content-on-error.py. 5772 * testenv/Makefile.am: Register the new test. 5773 * testenv/Test--convert-links--content-on-error.py: Add test case for 5774 the combination of --convert-links and --content-on-error.py. 5775 5776 testenv: fix http_server.py with Response and Authentication. 5777 * testenv/exc/server_error.py: Try writing file content for GET 5778 request even if there is a Response rule present. 5779 * testenv/server/http/http_server.py: Likewise. 5780 5781 testenv: improve color output a bit. 5782 * testenv/misc/colour_terminal.py: Only print color codes when stdout 5783 isatty(). 5784 5785 testenv: typo and style fix. 5786 * testenv/server/http/http_server.py(BaseTest): Add docstring; use raw 5787 string for regex. 5788 * testenv/server/http/http_server.py(_Handler): Typo fix. 5789 * testenv/conf/server_files.py(ServerFiles): Code style change for 5790 readability plus another typo fix. 5791 57922015-03-09 Giuseppe Scrivano <gscrivan@redhat.com> 5793 5794 NEWS: tag 1.16.3 5795 57962015-03-08 Anderson Goulart <global@kokre.com> 5797 5798 src/main.c (--no-verbose): don't show progress bar 5799 Fixes #44431 5800 58012015-03-06 Darshit Shah <darnir@reniac.com> 5802 5803 main.c: Use assertion to test buffer size 5804 58052015-03-02 Darshit Shah <darnir@gmail.com> 5806 5807 main.c: Need to explicitly disallow show_progress in -q 5808 58092015-02-28 Giuseppe Scrivano <gscrivan@redhat.com> 5810 5811 NEWS: add other items and tag 1.16.2 5812 5813 gnulib: sync gnulib 5814 58152015-02-27 Giuseppe Scrivano <gscrivan@redhat.com> 5816 5817 NEWS: Update file 5818 58192015-02-23 Eli Zaretskii <eliz@gnu.org> 5820 5821 warc.c: native uuid generation on Windows 5822 * warc.c (windows_uuid_str) [WINDOWS]: New function specific to 5823 MS-Windows. 5824 (warc_uuid_str) [WINDOWS]: If windows_uuid_str succeeds, use its 5825 result; otherwise use the fallback method. 5826 58272015-02-18 Gisle Vanem <gvanem@yahoo.no> 5828 5829 idn: use idn_free() to free allocated libidn memory 5830 xfree() might crash on libidn memory on Windows. 5831 5832 From 'man idn_free': 5833 "Under Windows, different parts of the same application may use different 5834 heap memory, and then it is important to deallocate memory allocated within 5835 the same module that allocated it. This function makes that possible." 5836 58372015-02-10 Tim Rühsen <tim.ruehsen@gmx.de> 5838 5839 gettext: Use gnulib's gettext.h for compatibility 5840 Fixes issues with gettext on Solaris 5841 Reported-by: Kiyoshi KANAZAWA <yoi_no_myoujou@yahoo.co.jp> 5842 5843 src/openssl.c: Use SSL_state() instead of ssl_st.state 5844 Changes in OpenSSL 1.0.2 API hides ssl_st structure members. 5845 Reported-by: Gisle Vanem <gvanem@yahoo.no> 5846 58472015-01-31 Giuseppe Scrivano <gscrivan@redhat.com> 5848 5849 * README.checkout: Remove duplicated word 5850 5851 * cfg.mk (VC_LIST_ALWAYS_EXCLUDE_REGEX): Add ChangeLog-2014-12-10. 5852 58532015-01-27 Tim Rühsen <tim.ruehsen@gmx.de> 5854 5855 README.checkout: Mention libio-socket-ssl-perl to be installed 5856 58572015-01-22 Dagobert Michelsen <dam@opencsw.org> 5858 5859 tests/Makefile.am: Solaris needs libintl and libiconv for testsuite 5860 58612015-01-20 Darshit Shah <darnir@gmail.com> 5862 5863 progress bar: Allow display on stderr alongwith -o 5864 This commit causes the --show-progress option to print the progress bar 5865 to stderr even when a logfile was explicitly provided on the command 5866 line. Such a combination allows a user to log the output of Wget while 5867 simultaneously keeping track of the download status. 5868 58692015-01-18 Darshit Shah <darnir@gmail.com> 5870 5871 gnulib: Pull submodule forward 5872 58732015-01-16 Mathieu Parent <math.parent@gmail.com> 5874 5875 src/connect.c: More verbose error message (tiny change) 5876 This fixes Debian bug #144076. 5877 58782015-01-04 Tim Ruehsen <tim.ruehsen@gmx.de> 5879 5880 src/ftp-basic.c: Accept 5-digit port numbers in EPSV responses 5881 Reported-by: Adam Sampson <ats@offog.org> 5882 58832015-01-02 Tim Rühsen <tim.ruehsen@gmx.de> 5884 5885 README.checkout: Add libpcre, pkg-config, libgnutls 5886 Add description for libpcre 5887 Add description for pkg-config 5888 Add description of GnuTLS 5889 Add 2014,2015 copyright year 5890 Use ASCII copyright characters 5891 58922014-12-27 Tim Ruehsen <tim.ruehsen@gmx.de> 5893 5894 src/http.c: Revert commit d81a8d5f56fca2746c4ad83d764bd24adcfbe927 5895 The removal of the 'redundant' condition was a failure. 5896 Fixes: #43876 5897 Reported-by: Sean Jensen-Grey <seanj@xyke.com> 5898 58992014-12-25 Tim Ruehsen <tim.ruehsen@gmx.de> 5900 5901 configure.ac: Skip pkg-config for opensl and gnutls when prefix is given 5902 Make --with-libssl-prefix and --with-libgnutls-prefix do the right thing, 5903 no matter if pkg-config is installed or not. 5904 5905 Reported-by: Charles Diza <chdiza@gmail.com> 5906 59072014-12-25 Tim Ruehsen <tim.ruehsen@gmx.de> 5908 5909 src/main.c, src/warc.c: Use gnulib's base_name() instead of basename() 5910 Reported-by: Eli Zaretskii <eliz@gnu.org> 5911 59122014-12-24 Giuseppe Scrivano <gscrivan@redhat.com> 5913 5914 Generate distributed ChangeLog from git log 5915 * bootstrap.conf (gnulib_modules): Add "gitlog-to-changelog". 5916 * Makefile.am: Generate the ChangeLog file from the git log and 5917 the old ChangeLog data. 5918 5919 merge ChangeLog files in ChangeLog-2014-12-10. 5920 * ChangeLog: truncate file. 5921 * ChangeLog.README: Likewise. 5922 * doc/ChangeLog: Likewise. 5923 * msdos/ChangeLog: Likewise. 5924 * src/ChangeLog: Likewise. 5925 * testenv/ChangeLog: Likewise. 5926 * tests/ChangeLog: Likewise. 5927 * ChangeLog-2014-12-10: New file. 5928 * Makefile.am: Distribute ChangeLog-2014-12-10. 5929 59302014-12-21 Eli Zaretskii <eliz@gnu.org> 5931 5932 src/utils.c: Don't include termios.h on Windows 5933 59342014-12-21 Tim Ruehsen <tim.ruehsen@gmx.de> 5935 5936 tests/FTPServer.pm: Fix ftp tests for Windows 5937 The Single Unix strftime format specifier %e is not supported by 5938 MS Windows. Instead we now use %d. 5939 5940 Reported-By: Eli Zaretskii <eliz@gnu.org> 5941 59422014-12-21 Tim Rühsen <tim.ruehsen@gmx.de> 5943 5944 gnulib: Use basename() from gnulib module 'dirname' 5945 Avoid basename incompatibilities between POSIX and GNU implementations. 5946 Also, libgen.h isn't needed any more which increases compatibility. 5947 59482014-12-21 Giuseppe Scrivano <gscrivan@redhat.com> 5949 5950 contrib/check-hard: delete trailing whitespaces and repeated word 5951 59522014-12-21 Benno Schulenberg <bensberg@justemail.net> 5953 5954 * src/main.c (print_help): Indent description continuation lines by two spaces. 5955 5956 * src/main.c (print_help): Don't use a possessive instead of a plural. 5957 5958 * src/main.c (print_help): Don't use the backtick as a left quote mark in the help text. 5959 5960 * src/main.c (print_help): Remove the full stops from option descriptions. 5961 And use semicolons to separate multiple phrases in a description. 5962 5963 * src/main.c (print_help): Make all option descriptions start with a lowercase letter. 5964 Also spell URL consistently in all uppercase, and fix the grammar. 5965 59662014-12-20 Tim Ruehsen <tim.ruehsen@gmx.de> 5967 5968 doc/wget.texi: Add 'https_only' in 'wgetrc commands' section 5969 Reported-By: Eli Zaretskii <eliz@gnu.org> 5970 59712014-12-20 Eli Zaretskii <eliz@gnu.org> 5972 5973 tests/WgetTests.pm: Print timestamps when tests fail due to wrong timestamps 5974 59752014-12-19 Tim Rühsen <tim.ruehsen@gmx.de> 5976 5977 sample.wgetrc: Fix wrong command 'locale' into 'localencoding' 5978 Reported-by: Eli Zaretskii <eliz@gnu.org> 5979 5980 wget.texi: Clarify wgetrc command syntax 5981 Reported-by: Eli Zaretskii <eliz@gnu.org> 5982 59832014-12-18 Tim Rühsen <tim.ruehsen@gmx.de> 5984 5985 configure.ac: Fix libuuid and uuid_create detection 5986 --with-libuuid now explictly asks for libuuid. 5987 --without-libuuid ignores libuuid and tries to use libc builtin functions. 5988 Else try builtin functions first, libuuid second and fallback to Wget's own 5989 function. 5990 59912014-12-17 Yuriy M. Kaminskiy <yumkam@gmail.com> 5992 5993 src/log.c: Fix unexpected termination in logprintf (tiny change) 5994 When errno was set to EPIPE before call to logprintf (e.g. during close of 5995 SSL connection that was reset by peer), it will unexpectedly terminate wget. 5996 It should exit only when EPIPE was triggered by logging code. 5997 5998 Regression by 0b5b100fc9aaa54257ffa16a083a862c031c335b 5999 60002014-12-17 Tim Rühsen <tim.ruehsen@gmx.de> 6001 6002 configure.ac: Check for RAND_egd() in pkg-config success code 6003 6004 src/main.c: Conditionally print help for --random-file and --egd-file 6005 --random-file is only relevant when compiled with either OpenSSL or LibreSSL. 6006 --egd-file is only relevant when compiled with OpenSSL 6007 6008 src/init.c: Fix indentation for crlfile option 6009 6010 wget.texi: Document --random-file and --egd-file as OpenSSL only 6011 60122014-12-17 Jérémie Courrèges-Anglas <jca@wxcvbn.org> 6013 6014 openssl: Detect the availability of RAND_egd (tiny change) 6015 Alternatives like LibreSSL don't provide RAND_egd() anymore. 6016 Fixes compilation on OpenBSD. 6017 6018 Fix use of uuid libc functions (tiny change) 6019 * Always attempt to detect uuid.h and uuid_create(). 6020 * Split libuuid and uuid.h implementations of warc_uuid_str(), since 6021 those APIs vary significantly. 6022 * Correctly use the uuid.h functions 6023 60242014-12-16 Darshit Shah <darnir@gmail.com> 6025 6026 Revert "ChangeLog: Move all ChangeLog files to .pre-gitlog" 6027 This reverts commit fcd3b3c473be25c4967fd8139d976e76faaef1b6. 6028 6029 Turns out that removing the ChangeLog files causes the Wget build to 6030 fail. While this issue is investigated and sorted out, the commit is 6031 reversed to allow people to be able to build Wget from master 6032 60332014-12-16 Tim Rühsen <tim.ruehsen@gmx.de> 6034 6035 contrib: Added script contrib/check-hard to check Wget status 6036 This script automates some tests, e.g. testing with and without valgrind, 6037 using different configure options. It is aimed at developers to execute 6038 before pushing commits. 6039 60402014-12-16 Cong Ma <cma@pmo.ac.cn> 6041 6042 ftp: fix invalid pointer dereference in getftp() (tiny change) 6043 The pointer respline in use after being passed to ftp_response() may be 6044 uninitialized if ftp_response() fails. Ensure that respline be used 6045 after checking the return value of ftp_response(). 6046 60472014-12-15 Darshit Shah <darnir@gmail.com> 6048 6049 ChangeLog: Move all ChangeLog files to .pre-gitlog 6050 From v1.16.1 onwards, Wget no longer maintains an active ChangeLog file. 6051 Instead the ChangeLog will be automatically generated on each release 6052 through gnulib's gitlog-to-changelog script. However, the old versions 6053 of the ChangeLog files are retained for reference. These files are 6054 renamed with a .pre-gitlog appended to their filenames. 6055 Also removed ChangeLog.README file which is not required anymore 6056 60572014-12-12 Tim Rühsen <tim.ruehsen@gmx.de> 6058 6059 src/iri.c: Call xstrndup instead of strndup 6060 strndup() does not exist in some older C libraries, also xstrndup() 6061 exits on memory allocation failures. 6062 6063 bootstrap.conf: Add module 'getline' 6064 This function does not exist in some older C libraries. 6065 60662014-12-12 Tim Rühsen <tim.ruehsen@gmx.de> 6067 6068 src/iri.c: Use c_strcasestr instead of strcasestr 6069 This also fixes a problem with strcasestr not being in the 6070 boostrap.conf module list. 6071 6072 Reported-by: Kiyoshi KANAZAWA <yoi_no_myoujou@yahoo.co.jp> 6073 60742014-12-11 Friedrich Haubensak <hsk@fli-leibniz.de> 6075 6076 Add support for older versions of flex (tiny change) 6077 E.g. flex 2.5.4 (Solaris 10) does not like a space after -o. 6078 60792014-12-11 Tim Ruehsen <tim.ruehsen@gmx.de> 6080 6081 * src/Makefile.am: Support older versions of flex 6082 60832014-12-10 Tim Ruehsen <tim.ruehsen@gmx.de> 6084 6085 * configure.ac: Check for pcre.h 6086 60872014-12-08 Giuseppe Scrivano <gscrivan@redhat.com> 6088 6089 * cfg.mk (local-checks-to-skip): Add sc_cast_of_argument_to_free. 6090 60912014-12-05 Tim Ruehsen <tim.ruehsen@gmx.de> 6092 6093 * src/Makefile.am: Removed reference to cmpt.c 6094 60952014-12-05 Tim Ruehsen <tim.ruehsen@gmx.de> 6096 6097 * configure.ac: Fix message for when GnuTLS has not been found. 6098 60992014-12-05 Tim Ruehsen <tim.ruehsen@gmx.de> 6100 6101 * bootstrap.conf: Add modules fnmatch, memrchr, strcase, strptime, 6102 strtoll, timegm 6103 Remove module strcasecmp 6104 Use module spawn-pipe instead of deprecated module pipe 6105 61062014-12-04 Darshit Shah <darnir@gmail.com> 6107 6108 * src/wget.h: Define MIX and MAX macros globally for all files 6109 * src/gnutls.c, retr.c: Delete declaration of MIN macro 6110 * src/http.c, progress.c: Delete declaration of MIN and MAX macros 6111 61122014-12-04 Darshit Shah <darnir@gmail.com> 6113 6114 * src/ftp.c (getftp): Remove a call to assert(1) and replace with error message. 6115 Also fix indentation 6116 61172014-12-03 Jérémie Courrèges-Anglas <jca@wxcvbn.org> (tiny change) 6118 6119 * src/openssl.c (ssl_init): Allow pfs to be used with protocols other than 6120 TLSv1. 6121 61222014-12-03 Gisle Vanem <gvanem@yahoo.no> 6123 6124 * src/openssl.c (ssl_init): Fix C89 warning 6125 61262014-12-03 Gisle Vanem <gvanem@yahoo.no> 6127 6128 * src/mswindows.c (ws_cleanup): Fix compiler error 6129 61302014-12-01 Tim Ruehsen <tim.ruehsen@gmx.de> 6131 6132 * src/connect.c, iri.c, url.c, warc.c: Fix issues reported 6133 by static code analysis tool 'parfait'. 6134 6135 Closes: #41235 6136 Reported-by: Jiri Kukacka 6137 61382014-11-29 Tim Ruehsen <tim.ruehsen@gmx.de> 6139 6140 * src/utils.h: xfree() sets argument to NULL after freeing, 6141 removed xfree_null() 6142 * src/connect.c, cookies.c, ftp-basic.c, ftp-ls.c, ftp.c hash.c, 6143 host.c, html-url.c, http.c, init.c, iri.c, log.c, main.c, 6144 mswindows.c, netrc.c, openssl.c, recur.c, res.c, retr.c, 6145 url.c, warc.c: Replaced xfree_null() by xfree() 6146 61472014-11-28 Tim Ruehsen <tim.ruehsen@gmx.de> 6148 6149 * src/main.c: Fix length of program_argstring, 6150 fix regression introduced with commit 6151 9217b864d865cf1766e1589d138c8fc17d3d3d5c. 6152 61532014-11-28 Tim Ruehsen <tim.ruehsen@gmx.de> 6154 6155 * src/gettext.h: Removed this file 6156 * src/wget.h: Do not include gettext.h, include libintl.h directly, 6157 define _() as gettext() shortcut. 6158 6159 The header file gettext.h is simply not needed. 6160 61612014-11-28 Tim Ruehsen <tim.ruehsen@gmx.de> 6162 6163 * src/Makefile.am: Removed gettext.h 6164 61652014-11-27 Darshit Shah <darnir@gmail.com> 6166 6167 * src/cookies.c, gettext.h, init.c, retr.c, url.c, warc.c: Replace usage of 6168 free() with xfree() macro. 6169 61702014-11-26 Tim Ruehsen <tim.ruehsen@gmx.de> 6171 6172 * tests/HTTPServer.pm: Substitue server port in HTTP headers 6173 6174 This allows us to use references like 6175 "Location" => "http://localhost:{{port}}/whatever 6176 in test cases. 6177 61782014-11-26 Tim Ruehsen <tim.ruehsen@gmx.de> 6179 6180 * testenv/Makefile.am: Removed Test-auth-both.py from XFAIL_TESTS 6181 61822014-11-26 Tim Ruehsen <tim.ruehsen@gmx.de> 6183 6184 * src/recur.c: Fix blacklisting of URLs to download 6185 6186 Fixes a reported crash and prevents multiple downloads of the 6187 same file in case the URL is escaped in different ways. 6188 6189 The crash has been 6190 Reported-by: Frédéric <vfrederix@gmail.com> 6191 61922014-11-26 Tim Ruehsen <tim.ruehsen@gmx.de> 6193 6194 * src/recur.c: Add space after function names 6195 61962014-11-26 Tim Ruehsen <tim.ruehsen@gmx.de> 6197 6198 * src/http.c: Select strongest challenge from WWW-Authenticate, 6199 support multiple challenges per header line. 6200 62012014-11-26 Tim Ruehsen <tim.ruehsen@gmx.de> 6202 6203 * src/gnutls.c (ssl_connect_wget): Implement missing code for 6204 --secure-protocol=TLSv1_1|TLSv1_2, print message before abort() 6205 for missing protocol implementations. 6206 * src/openssl.c (ssl_init): Print message before abort() for 6207 missing protocol implementations. 6208 62092014-11-26 Giuseppe Scrivano <gscrivan@redhat.com> 6210 6211 * testenv/Makefile.am (TESTS): Add Test-redirect-crash.py. 6212 * testenv/Test-redirect-crash.py: New File. 6213 62142014-11-25 Pär Karlsson <feinorgh@gmail.com> 6215 6216 * src/Makefile.am: Added missing version.h to wget_SOURCES 6217 62182014-11-25 Darshit Shah <darnir@gmail.com> 6219 6220 * bootstrap.conf: Add flex as a prerequisite to building Wget from the 6221 repository sources 6222 62232014-11-24 Tim Ruehsen <tim.ruehsen@gmx.de> 6224 6225 * src/wget.h, test.c, main.c: Make program_name and program_argstring const 6226 62272014-11-24 Tim Ruehsen <tim.ruehsen@gmx.de> 6228 6229 * src/warc.c: Fix C89 compile errors using ./configure --without-libuuid 6230 62312014-11-24 Tim Ruehsen <tim.ruehsen@gmx.de> 6232 6233 * src/warc.c, warc.h, http.c: Add size of buffer to warc_timestamp() 6234 62352014-11-24 Tim Ruehsen <tim.ruehsen@gmx.de> 6236 6237 * src/retrc.c: Fix possibly uninitialized variable 6238 62392014-11-22 Darshit Shah <darnir@gmail.com> 6240 6241 * src/wget.h: Make extern declaration for program_name 6242 62432014-11-22 Darshit Shah <darnir@gmail.com> 6244 6245 * src/wget.h: Make extern declaration for program_argstring. 6246 * src/warc.c: Remove extern declaration 6247 * src/test.c: Make program_argstring a char *, instead of const char *. 6248 62492014-11-22 Darshit Shah <darnir@gmail.com> 6250 6251 * src/version.h: New file. Add extern declarations for globally shared strings 6252 * src/Makefile.am: Have version.c import version.h 6253 * src/main.c: Import version.h and remove old extern declarations 6254 * src/http.c: Same 6255 * src/warc.c: Same 6256 62572014-11-22 Darshit Shah <darnir@gmail.com> 6258 6259 * src/version.h: Add extern for compilation_string 6260 * src/main: Remove declaration for compilation_String 6261 62622014-11-22 Darshit Shah <darnir@gmail.com> 6263 6264 * src/utils.c (abort_run_with_timeout): The sig parameter is not used. Mark it 6265 as such. 6266 (abort_run_with_timeout): One implementation of this function did not 6267 specify _Noreturn. Add it. 6268 62692014-11-22 Darshit Shah <darnir@gmail.com> 6270 6271 * src/retr.h: Declare extern variable numurls 6272 * src/http.c: Remove extern declaration for numurls 6273 * src/ftp.c: Same 6274 62752014-11-22 Darshit Shah <darnir@gmail.com> 6276 6277 * src/hosts.c (address_list_set_faulty): Add a helpful error message for when a 6278 logical assumption fails 6279 62802014-11-22 Darshit Shah <darnir@gmail.com> 6281 6282 * src/cookies.c (discard_matching_cookie): Replace defensive assert with a 6283 logical check and error message 6284 62852014-11-22 Darshit Shah <darnir@gmail.com> 6286 6287 * build-aux/build_info.pl: Include version.h in the final C file generated 6288 by the script. 6289 62902014-11-21 Tim Ruehsen <tim.ruehsen@gmx.de> 6291 6292 * testenv/server/http/http_server.py: Fixed typo Blackisted to Blacklisted 6293 62942014-11-21 Daniel Stenberg <daniel@haxx.se> 6295 6296 * src/iri.c (remote_to_utf8): Fix compiler warning 6297 62982014-11-20 Tim Ruehsen <tim.ruehsen@gmx.de> 6299 6300 * src/progress.c: Fix code for undefined USE_NLS_PROGRESS_BAR 6301 6302 Reported-by: Gisle Vanem 6303 63042014-11-20 Tim Ruehsen <tim.ruehsen@gmx.de> 6305 6306 * src/cookies.c, ftp-basic.c, ftp-ls.c, ftp.c, html-url.c, 6307 http.c, init.c, iri.c, main.c, progress.c, res.c, url.c, 6308 utils.c, wget.h: Replaced strcasecmp and strncasecmp by 6309 c_strcasecmp and c_strncasecmp where only ASCII string 6310 comparison is wanted (instead of locale dependent). 6311 6312 Fixes possible issues with Wget running in a turkish locale. 6313 63142014-11-20 Tim Ruehsen <tim.ruehsen@gmx.de> 6315 6316 * src/Removed form feeds (\014) from *.c and *.h 6317 63182014-11-20 Tim Ruehsen <tim.ruehsen@gmx.de> 6319 6320 * configure.ac: Fix libpsl<0.6.0 detection 6321 63222014-11-20 Tim Ruehsen <tim.ruehsen@gmx.de> 6323 6324 * NEWS: remove form feeds 6325 63262014-11-20 Tim Ruehsen <tim.ruehsen@gmx.de> 6327 6328 * src/cookies.c, ftp-basic.c, ftp.c, gnutls.c, host.c, 6329 html-url.c, http.c, main.c, progress.c, retr.c, warc.c: 6330 Trivial fixes for C89 compliancy. 6331 63322014-11-20 Gisle Vanem <gvanem@yahoo.no> 6333 6334 * src/http.c (parse_content_disposition): Fix C89 issue found by MSVC 16 6335 63362014-11-20 Gisle Vanem <gvanem@yahoo.no> 6337 6338 * src/build_info.c.in: Assume large file for WINDOWS 6339 63402014-11-20 Darshit Shah <darnir@gmail.com> 6341 6342 * configure.ac: Use pkg-config for libpsl detection 6343 config status for libpsl is reflected by $with_libpsl 6344 63452014-11-20 Darshit Shah <darnir@gmail.com> 6346 6347 * configure.ac: Use autoconf macros where available 6348 63492014-11-20 Darshit Shah <darnir@gmail.com> 6350 6351 * configure.ac: Change option to --enable-assert. Assertions are disabled by 6352 default. 6353 * NEWS: Edit to reflect default option. 6354 * README.checkout: Document --enable-assert for developers 6355 63562014-11-20 Darshit Shah <darnir@gmail.com> 6357 6358 * configure.ac: Add the -Wextra flag when no CFLAGS are set 6359 63602014-11-20 Darshit Shah <darnir@gmail.com> 6361 6362 * .gitignore: po/stamp-po should be ignored 6363 63642014-11-19 Tim Ruehsen <tim.ruehsen@gmx.de> 6365 6366 * configure.ac: Check for random() 6367 63682014-11-19 Tim Ruehsen <tim.ruehsen@gmx.de> 6369 6370 * src/utils.c (random_float, random_number): Use random() and 6371 srandom() if available. 6372 6373 Reported-by: Coverity scanner 6374 63752014-11-19 Tim Ruehsen <tim.ruehsen@gmx.de> 6376 6377 * src/openssl.c (ssl_check_certificate): Fix memory leak 6378 63792014-11-19 Tim Ruehsen <tim.ruehsen@gmx.de> 6380 6381 * src/gnutls.c (ssl_init): Report load failure of cert files from 6382 cert directory only with --debug. Fixes #41331. 6383 63842014-11-19 Tim Ruehsen <tim.ruehsen@gmx.de> 6385 6386 * src/ftp-basic.c (ftp_epsv): Fix loop check 6387 6388 Reported-by: Coverity scanner 6389 63902014-11-19 Darshit Shah <darnir@gmail.com> 6391 6392 * testenv/Test-504.py: Add new test case to show how Wget handles 504 Gateway 6393 Timeouts 6394 * testenv/Makefile.am: Add Test-504.py to TESTS 6395 63962014-11-19 Darshit Shah <darnir@gmail.com> 6397 6398 * src/utils.c (compile_posix_regex): Fix memory leak due to unfreed regex 6399 pointer 6400 64012014-11-19 Darshit Shah <darnir@gmail.com> 6402 6403 * src/progress.c (create_image): Do not scroll filename if amount of scrolling 6404 is less than MIN_SCROLL_TEXT 6405 * src/retr.c (fd_read_body): Do not print the directory prefix in the progress 6406 bar 6407 64082014-11-19 Darshit Shah <darnir@gmail.com> 6409 6410 * src/main.c (format_and_print_line): Fix potential memory leak 6411 64122014-11-19 Darshit Shah <darnir@gmail.com> 6413 6414 * src/exits.c (get_status_for_err): GATEWAYTIMEOUT is a Server Error and Wget's 6415 exit code should reflect that 6416 * src/wget.h: Add GATEWAYTIMEOUT as an error 6417 * src/http.c (http_loop): Gateway timeout errors should be non-fatal 6418 64192014-11-18 Tim Ruehsen <tim.ruehsen@gmx.de> 6420 6421 * src/Fix warnings from clang-analyzer 3.6 6422 6423 gnutls.c:457:3: warning: Value stored to 'err' is never read 6424 err = 0; 6425 http-ntlm.c:477:5: warning: Value stored to 'size' is never read 6426 size = (size_t) snprintf (ntlmbuf, sizeof(ntlmbuf), 6427 http.c:1479:3: warning: Attempt to free released memory 6428 xfree_null (hs->error); 6429 64302014-11-17 Tim Ruehsen <tim.ruehsen@gmx.de> 6431 6432 * testenv/server/http/http_server.py: allow case-insensitive auth-type, 6433 send BasIc and DIgest to provoke Wget failures with turkish locales 6434 64352014-11-17 Tim Ruehsen <tim.ruehsen@gmx.de> 6436 6437 * bootstrap.conf (gnulib_modules): Add module c-strcase 6438 64392014-11-17 Tim Ruehsen <tim.ruehsen@gmx.de> 6440 6441 * src/main.c: code cleanup for redirect_output_signal() 6442 64432014-11-17 Tim Ruehsen <tim.ruehsen@gmx.de> 6444 6445 * src/http.c: use c_strncasecmp() in BEGINS_WITH macro 6446 and in STARTS macro 6447 64482014-11-17 Tim Ruehsen <tim.ruehsen@gmx.de> 6449 6450 * src/ftp.h: removed unused variable ftp_last_respline 6451 * src/init.c, test.c, warc.c: removed 'make check'compiler warnings 6452 64532014-11-16 Tom Li <biergaizi2009@gmail.com> 6454 6455 * src/progress.c (create_image): Ensure that the last character of the filename 6456 is scrolled to 6457 64582014-11-16 Darshit Shah <darnir@gmail.com> 6459 6460 * po/stamp-po: Remove autogenerated file from checked out sources 6461 64622014-11-16 Darshit Shah <darnir@gmail.com> 6463 6464 * gnulib: Update submodule 6465 * bootstrap: Update script from latest gnulib 6466 64672014-11-16 Darshit Shah <darnir@gmail.com> 6468 6469 * .gitignore: Sort gitignore file based on directories 6470 64712014-11-15 Darshit Shah <darnir@gmail.com> 6472 6473 * testenv/certs/README: Remove trailing whitespaces 6474 64752014-11-15 Darshit Shah <darnir@gmail.com> 6476 6477 * src/progress.c (create_image): Fix assertion that checks progress bar length 6478 Should fix bug #43593 6479 64802014-11-15 Darshit Shah <darnir@gmail.com> 6481 * configure.ac: Add AC_HEADER_ASSERT. Enables --disable-assert option 6482 64832014-11-12 Witchakorn Kamolpornwijit <witchakk@mit.edu> (tiny change) 6484 6485 * src/html-parse.c (map_html_tags): Fix range check 6486 64872014-11-12 Tim Ruehsen <tim.ruehsen@gmx.de> 6488 6489 * src/openssl.c (ssl_init): Fix error handling for CRL loading 6490 64912014-11-11 Tim Ruehsen <tim.ruehsen@gmx.de> 6492 6493 * testenv/recreated the certs and the CRL file, also amended certs/README 6494 64952014-11-11 Tim Ruehsen <tim.ruehsen@gmx.de> 6496 6497 * src/openssl.c (ssl_init): Load CRL file given by --crl-file 6498 64992014-11-11 Tim Ruehsen <tim.ruehsen@gmx.de> 6500 6501 * src/main.c: Fix missing _Noreturn declaration specifiers 6502 6503 Reported-by: Gisle Vanem <gvanem@yahoo.no> 6504 65052014-11-11 Tim Ruehsen <tim.ruehsen@gmx.de> 6506 6507 * src/http.c (gethttp): Always add Accept-Encoding: identity 6508 6509 Fixes bug #40819 6510 Reported-by: Noël Köthe <noel@debian.org> 6511 65122014-11-10 Tim Ruehsen <tim.ruehsen@gmx.de> 6513 6514 * testenv/removed certs/wget-cert.pem 6515 * testenv/added certs/ca-cert.pem, certs/ca-key.pem, certs/server-cert.pem, 6516 certs/server-key.pem and certs/server-crl.pem 6517 * testenv/added certs/README for description how to generate the certs and keys 6518 * testenv/server/http/http_server.py: amended to work with new certs/ files 6519 * testenv/added Test--https-crl.py to test --crl-file 6520 * testenv/Makefile.am: added Test--https-crl.py 6521 * testenv/Test--https.py: use --ca-certificate of --no-check-certificates 6522 65232014-11-10 Tim Ruehsen <tim.ruehsen@gmx.de> 6524 6525 * src/openssl.c: Fix compile-time check for TLSv1.1 and TLSv1.2 6526 6527 Reported-by: Velemas Vosak <velemas@gmail.com> 6528 65292014-11-09 Darshit Shah <darnir@gmail.com> 6530 6531 * src/http.c (gethttps): Honour keep-alive when server responds with a 416 Range 6532 not Satisfiable 6533 65342014-11-09 Darshit Shah <darnir@gmail.com> 6535 6536 * src/http.c (gethttp): Remove redundant condition evaluation 6537 65382014-11-06 Tim Ruehsen <tim.ruehsen@gmx.de> 6539 6540 * src/init.c, main.c, options.h: added new option --crl-file 6541 for specifying a CRL (Certificate Revocation List) file. 6542 * src/gnutls.c: load CRL file given by --crl-file 6543 6544 Reported-by: Noël Köthe <noel@debian.org> 6545 65462014-11-06 Tim Ruehsen <tim.ruehsen@gmx.de> 6547 6548 * doc/wget.texi: added description for --crl-file 6549 65502014-11-05 Tim Ruehsen <tim.ruehsen@gmx.de> 6551 6552 * tests/Test-stdouterr.px: fix skip exit code to 77 6553 65542014-11-05 Tim Ruehsen <tim.ruehsen@gmx.de> 6555 6556 * tests/Makefile.am: added $(LIB_CLOCK_GETTIME) to unit test linkage 6557 6558 Reported-by: kdevel@vogtner.de 6559 65602014-11-05 Tim Ruehsen <tim.ruehsen@gmx.de> 6561 6562 * configure.ac: check for python3 6563 * Makefile.am: only use python test suite if python3 found 6564 65652014-11-05 Giuseppe Scrivano <gscrivan@redhat.com> 6566 6567 * contrib/tsocked-wget (TSOCKS_CONF_FILE): Remove empty new-line. 6568 65692014-11-04 Tim Ruehsen <tim.ruehsen@gmx.de> 6570 6571 * src/iri.c (do_conversion): fix quote() misuse 6572 * src/iri.c (remote_to_utf8): fix segfault on do_conversion() error 6573 6574 Reported-by: Mikael Magnusson <mikachu@gmail.com> 6575 65762014-11-04 Darshit Shah <darnir@gmail.com> 6577 6578 * README.checkout: Bootstrap script is ./bootstrap not ./bootstrap.sh 6579 65802014-11-03 Tim Ruehsen <tim.ruehsen@gmx.de> 6581 6582 * tests/added new test Test-proxied-https-auth-keepalive.px 6583 65842014-11-03 Tim Ruehsen <tim.ruehsen@gmx.de> 6585 6586 * tests/Test-proxied-https-auth.px: add valgrind support, 6587 sync parent / child (client / server) 6588 65892014-11-03 Tim Ruehsen <tim.ruehsen@gmx.de> 6590 6591 * src/log.c: turn on automatic format check for log_vprintf_internal() 6592 65932014-11-03 Pär Karlsson <feinorgh@gmail.com> 6594 * tests/WgetFeature.pm: Fixed finding of WgetFeature.cfg when using separate 6595 build dirs. 6596 * tests/WgetFeature.pm: Fixed warning from BLOCK eval, made it indo EXPR eval 6597 65982014-11-03 Jakub Čajka <jcajka@redhat.com> 6599 6600 * src/iri.c (remote_to_utf8): Fixed assumption that char is signed. Fixes 6601 fellowing test case failures idn-cmd-utf8, idn-robots-utf8, if char is 6602 unsigned. 6603 66042014-11-01 Mike Frysinger <vapier@gentoo.org> 6605 6606 * configure.ac: Use pkg-config to check for zlib presence and 6607 fallback to the previous code if that doesn't work. 6608 6609 * configure.ac: Use pkg-config to check for libuuid presence and 6610 fallback to the previous code if that doesn't work. 6611 6612 * configure.ac: Use pkg-config to check for pcre presence and 6613 fallback to the previous code if that doesn't work. 6614 6615 * configure.ac: Use pkg-config to check for openssl presence and 6616 fallback to the previous code if that doesn't work. 6617 6618 * configure.ac: Use pkg-config to check for gnutls presence and 6619 fallback to the previous code if that doesn't work. 6620 66212014-11-01 Giuseppe Scrivano <gscrivan@redhat.com> 6622 6623 * src/http.c (gethttp): Do not check for "Connection: close" header 6624 only when the Content-Length is specified. 6625 66262014-11-01 Darshit Shah <darnir@gmail.com> 6627 6628 * src/progress.c (create_image): Extra padding for size_grouped_diff has already 6629 been added. Do not add that again. 6630 (create_image): Assert that the progress bar being drawn is lesser than the 6631 size of the screen. 6632 66332014-11-01 Darshit Shah <darnir@gmail.com> 6634 6635 * configure.ac: Fix check for libpsl 6636 66372014-10-31 Tim Ruehsen <tim.ruehsen@gmx.de> 6638 6639 * src/openssl.c: make _get_rfc2253_formatted() static 6640 66412014-10-31 Pär Karlsson <feinorgh@gmail.com> 6642 * tests/WgetTests.pm: Proper conditional operators, tidied up code, idiomatic 6643 improvements as per modern Perl best practices. 6644 * tests/WgetFeature.pm: Tidied up code, idiomatic improvements for readability 6645 * tests/FTPServer.pm: Tidied up code (perltidy -gnu) 6646 * tests/FTPTest.pm: Likewise 6647 * tests/HTTPServer.pm: Likewise 6648 * tests/HTTPTest.pm: Likewise 6649 66502014-10-30 Mike Frysinger <vapier@gentoo.org> 6651 6652 * tests/WgetFeature.pm: fix skip exit code to 77 6653 66542014-10-30 Mike Frysinger <vapier@gentoo.org> 6655 6656 * src/openssl.c: fix implicit decl warning 6657 66582014-10-29 Tim Ruehsen <tim.ruehsen@gmx.de> 6659 6660 * src/openssl.c: print cert subject and issuer RFC2253 compliant 6661 * src/openssl.c (ssl_check_certificate): removed memory leak 6662 66632014-10-29 Tim Ruehsen <tim.ruehsen@gmx.de> 6664 6665 * src/http.c (gethttp): use CLOSE_INVALIDATE instead of fd_close 6666 66672014-10-29 Tim Ruehsen <tim.ruehsen@gmx.de> 6668 6669 * src/http.c (gethttp): fix memory leak 6670 66712014-10-29 Tim Ruehsen <tim.ruehsen@gmx.de> 6672 6673 * src/http.c (CLOSE_FINISH): always set fd invalid after close 6674 66752014-10-29 Peter Meiser <meiser@gmx-topmail.de> (tiny change) 6676 6677 * src/openssl.c (ssl_init) [! OPENSSL_NO_SSL3]: Add guard for OpenSSL 6678 without SSLv3. 6679 66802014-10-28 Tim Ruehsen <tim.ruehsen@gmx.de> 6681 6682 * tests/Test-proxied-https-auth.px: synchronize client and server 6683 66842014-10-28 Tim Ruehsen <tim.ruehsen@gmx.de> 6685 6686 * configure.ac: check for strlcpy() 6687 66882014-10-28 Tim Ruehsen <tim.ruehsen@gmx.de> 6689 6690 * configure.ac: add --enable-valgrind-tests 6691 66922014-10-28 Tim Ruehsen <tim.ruehsen@gmx.de> 6693 6694 * src/utils.c: added strlcpy(), concat_strings() rewritten 6695 * src/utils.h: added strlcpy() 6696 66972014-10-28 Tim Ruehsen <tim.ruehsen@gmx.de> 6698 6699 * src/ftp.c (ftp_loop_internal): Fix memory leak 6700 * src/http.c (gethttp): Fix two memory leaks 6701 * src/init.c (cleanup): Fix compile errors and warnings 6702 * src/init.c (cleanup): Free more opt variables 6703 * src/main.c (main): Fix two memory leaks 6704 * src/retr.c (retrieve_url): Fix two memory leaks 6705 * src/retr.c (retrieve_url): Add iri to call to url_parse() 6706 * src/url.c (url_parse): Fix memory leak 6707 67082014-10-28 Giuseppe Scrivano <gscrivan@redhat.com> 6709 6710 * tests/Makefile.am: Replace $FOO with @VAR@. 6711 67122014-10-28 Giuseppe Scrivano <gscrivan@redhat.com> 6713 6714 * src/Makefile.am: Replace $FOO with @VAR@. 6715 67162014-10-28 Giuseppe Scrivano <gscrivan@redhat.com> 6717 6718 * doc/Makefile.am: Replace $FOO with @VAR@. 6719 67202014-10-28 Giuseppe Scrivano <gscrivan@redhat.com> 6721 6722 * cfg.mk (local-checks-to-skip): Add sc_makefile_at_at_check. 6723 6724 * Makefile.am: Replace $FOO with @VAR@. 6725 67262014-10-25 Tim Ruehsen <tim.ruehsen@gmx.de> 6727 6728 * tests/WgetTests.pm (run): generate valgrind command line if requested 6729 * tests/Makefile.am: set/export VALGRIND_TESTS 6730 67312014-10-25 Tim Ruehsen <tim.ruehsen@gmx.de> 6732 6733 * testenv/test/base_test.py (gen_cmd_line): generate valgrind command line if requested 6734 * testenv/README: amend description of VALGRIND_TESTS 6735 * testenv/Makefile.am: set/export VALGRIND_TESTS 6736 67372014-10-22 Ángel González <keisial@gmail.com> 6738 6739 * src/css-url.c (get_uri_string): Honor the specified length argument. 6740 67412014-10-21 Matthew Atkinson <mutley456@ntlworld.com> (tiny change) 6742 6743 * src/http.c (gethttp): Always send Content-Length header when method is POST, 6744 PUT, or PATCH even with no post body, as some servers will reject the 6745 request otherwise. 6746 67472014-10-16 Tim Ruehsen <tim.ruehsen@gmx.de> 6748 6749 * src/url.c (url_parse): little code cleanup 6750 * src/html-url.c (get_urls_html): HTTP header Content-Type charset preceeds http-equiv 6751 * src/iri.c (do_conversion): moved iconv code completely into the function 6752 * src/iri.c (do_conversion): call url_unescape to fix charset conversion 6753 * src/iri.c (remote_to_utf8): use strcasecmp to compare encoding 6754 6755 * src/gnutls.c (ssl_connect_wget): do not use SSLv3 except explicitely requested 6756 * src/openssl.c (ssl_init): do not use SSLv3 except explicitely requested 6757 67582014-10-16 Tim Ruehsen <tim.ruehsen@gmx.de> 6759 6760 * doc/wget.texi (Download Options): update --secure-protocol description 6761 67622014-10-08 Nikolay Morozov <n.morozov@securitycode.ru> 6763 Sergey Lvov <s.lvov@securitycode.ru> 6764 6765 * src/init.c (cmd_spec_secure_protocol): Add support for 6766 TLS v1.1 and TLS v1.2 protocols 6767 * src/openssl.c (ssl_init): Add support for OpenSSL engines 6768 67692014-10-08 Darshit Shah <darnir@gmail.com> 6770 6771 * testenv/Makefile.am: Fix EXTRA_DIST variable for make distcheck 6772 * testenv/server/http/http_server.py (HTTPServer.__init__): Fix how CERTFILE is 6773 found when running make dist / make distcheck. 6774 67752014-10-06 Tim Ruehsen <tim.ruehsen@gmx.de> 6776 6777 * tests/Test-iri.px: fixed encodings 6778 * tests/Test-iri-forced-remote.px: fixed encodings 6779 * tests/Test-iri-percent.px: fixed encodings 6780 * tests/Test-idn-meta.px: fixed encodings 6781 67822014-10-02 Tim Ruehsen <tim.ruehsen@gmx.de> 6783 6784 * tests/tests/WgetTests.pm: use filename as default test name 6785 * tests/tests/Test-*.px: removed redundant 'name => ...' 6786 67872014-10-01 Tim Ruehsen <tim.ruehsen@gmx.de> 6788 6789 * tests/tests/Makefile.am: remove run-px, fixing dist-check 6790 67912014-10-01 Tim Ruehsen <tim.ruehsen@gmx.de> 6792 6793 * tests/Test--post-file.px: name => "Test--post-file", fixing race 6794 condition. 6795 * tests/Test-N-no-info.px: name => "Test-N-no-info", fixing race 6796 condition. 6797 * tests/Test-N-smaller.px: name => "Test-N-smaller", fixing race 6798 condition. 6799 * tests/Test-c-shorter.px: name => "Test-c-shorter", fixing race 6800 condition. 6801 * tests/Test-proxy-auth-basic.px: name => "Test-proxy-auth-basic", 6802 fixing race condition. 6803 * tests/Test-proxied-https-auth.px: removed debug print line. 6804 68052014-10-01 Darshit Shah <darnir@gmail.com> 6806 6807 * testenv/Makefile.am: Run the tests in Python's Optimizedmode 6808 * testenv/conf/__init__.py (gen_hook): Use try..except instead of if..else 6809 * testenv/misc/color_terminal.py: System and check will not change while a test is 6810 run. Do not test for them on every invocation of printer() 6811 * testenv/server/http/http_server.py: The ssl and re modules are required by 6812 specific functions. Load them lazily 6813 (HTTPSServer.__init__): Lazy load ssl module here 6814 (_handler.parse_range_header): Lazy load re module here 6815 (_Handler.get_rule_list): get() can return a default value. Use it 6816 (_Handler.guess_type): Same 6817 (_Handler.is_authorized): Unused function artefact. Remove 6818 (_Handler.reject_headers): Unused function artefact. Remove 6819 68202014-09-30 Tim Ruehsen <tim.ruehsen@gmx.de> 6821 6822 * testenv/test/base_test.py: Add --track-origins=yes to valgrind testing 6823 68242014-09-25 Tim Ruehsen <tim.ruehsen@gmx.de> 6825 6826 * tests/Makefile.am: Modified to use parallel test harness 6827 * tests/Test-proxied-https-auth.px: get $top_srcdir from ENV 6828 * tests/run-px: removed 6829 * tests/WgetTest.pm.in: removed 6830 * tests/WgetTest.pm: get $top_srcdir from ENV 6831 68322014-09-25 Tim Ruehsen <tim.ruehsen@gmx.de> 6833 6834 * configure.ac: removed WgetTest.pm.in 6835 * .gitignore: removed WgetTest.pm 6836 68372014-09-12 Darshit Shah <darnir@gmail.com> 6838 6839 * bootstrap.conf: Add GNULib module mbiter 6840 68412014-09-08 Darshit Shah <darnir@gmail.com> 6842 6843 * src/init.c (defaults): Set retr-symlinks to true by default. This changes a 6844 default setting of wget. Fixes security bug CVE-2014-4877 6845 68462014-09-08 Darshit Shah <darnir@gmail.com> 6847 6848 * src/ftp.c (ftp_retrieve_glob): Also check for invalid entries along with 6849 harmful filenames 6850 (is_valid_entry): New function. Check if the provided node is a valid entry 6851 in a listing file. 6852 68532014-09-08 Darshit Shah <darnir@gmail.com> 6854 6855 * doc/wget.texi (symbolic links): Update documentation of retr-symlinks to 6856 reflect the new default. Add warning about potential security issues with 6857 --retr-symlinks=yes. 6858 68592014-08-08 Darshit Shah <darnir@gmail.com> 6860 6861 * testenv/conf/__init__.py: Add extra newline according to PEP8 6862 * testenv/conf/{authentication,expect_header,expected_files,expected_ret_code, 6863 files_crawled,hook_sample,local_files,reject_header,response,send_header, 6864 server_files,urls,wget_commands}.py: Add docstrings explaining the conf file 6865 and how it should be used 6866 * testenv/server/http/http_server (InvalidRangeHeader): Clear TODO and eliminate 6867 this exception. Use ServerError for all such purposes. 6868 (_Handler): Remove reference to InvalidRangeHeader 6869 (_handler.parse_range_header): User ServerError instead of InvalidRangeHeader 6870 (_Handler.do_GET): Add docstring 6871 (_Handler.do_POST): Add docstring. Also create an empty dict for rules if 6872 no rules are supplied. Send the Location header as suggested in RFC 7231 6873 (_Handler.do_PUT): Don't pop the server file already. Push it to later in .. 6874 (_Handler.send_put): .. Here. If the file exists respond with a 204 No 6875 Content message and pop the file for replacement. Do not send the 6876 Content-Length, Content-Type headers since PUT requests should not respond 6877 with data. 6878 (_Handler.parse_auth_header): Fit line within 80 chars 6879 (_Handler.check_response): Better visual indent 6880 (_Handler.authorize_digest): Better visual indent. 6881 (_Handler.expect_headers): Remove unused function 6882 (_Handler.guess_type): Fix indentation 6883 (HTTPd): Add newline according to PEP8 guidelines 6884 (HTTPSd): Fix indentation 6885 (StoppableHTTPServer): Add docstring 6886 (HTTPSServer): Fix indentation 6887 (WgetHTTPRequestHandler): Merge class into _handler. 6888 (_Handler): Add docstring 6889 (_Handler.parse_range_header): Fix indentation 6890 (ServerError): Split exception into separate file ... 6891 * testenv/exc/server_error.py: ... Here 6892 * testenv/misc/colour_terminal.py: Add docstring, fix indentation 6893 * testenv/test/base_test.py: Fix visual indent 6894 * testenv/test/http_test.py: Fit within 80 char lines 6895 68962014-08-04 Darshit Shah <darnir@gmail.com> 6897 6898 * testenv/conf/server_conf.py: Delete file. Server configuration is now done via the 6899 server_conf() method. 6900 * testenv/server/http/http_server.py (StppableHTTPServer.server_sett): Delete 6901 method required by the above hook 6902 (HTTPd.server_sett): Same 6903 69042014-08-03 Giuseppe Scrivano <gscrivano@gnu.org> 6905 6906 * doc/wget.texi (Download Options): Fix texinfo warning. 6907 69082014-07-28 Ángel González <keisial@gmail.com> 6909 * contrib: Created contrib folder. 6910 * contrib/tsocked-wget: Added wrapper for usage with socks proxy. 6911 69122014-07-26 Darshit Shah <darnir@gmail.com> 6913 6914 * testenv/Test-*.py: Remove the '-d' switch from WGET_OPTIONS. 6915 * testenv/test/base_test (BaseTest.gen_cmd_line): Add --debug and --no-config to the 6916 list of switches passed to wget unconditionally. 6917 69182014-07-25 Darshit Shah <darnir@gmail.com> 6919 6920 * .gitignore: Add a gitignore file for the project. 6921 69222014-07-23 Darshit Shah <darnir@gmail.com> 6923 6924 * testenv/test/base_test.py (BaseTest.gen_cmd_line): Add support for running all 6925 tests through valgrind if the relevant environment variable is set 6926 * testenv/conf/expected_ret_code (ExpectedRetCode.__call__): Valgrind returns error 6927 code 45 when it detects a memory leak. 6928 * testenv/Readme: Update with details about valgrind tests 6929 69302014-07-23 Darshit Shah <darnir@gmail.com> 6931 6932 * src/http.c (gethttp): Fix a memory leak when retrying authorization 6933 (gethttp): Fix memory leak when trying to parse content disposition headers 6934 (http_loop): Assigning a new value to *local)file without freeing the old 6935 one causes a memory leak 6936 (http_loop): Free the HTTP message and error strings before continuing loop 6937 69382014-07-22 Darshit Shah <darnir@gmail.com> 6939 6940 * testenv/(README): Remove old TODO and document SERVER_WAIT variable 6941 69422014-07-22 Darshit Shah <darnir@gmail.com> 6943 6944 * configure.ac: Fix broken code for detecting libpsl 6945 69462014-07-21 Darshit Shah <darnir@gmail.com> 6947 6948 * src/cookies.c (check_domain_match): Fix a potential memory leak when checking 6949 cookie domain names 6950 69512014-07-21 Darshit Shah <darnir@gmail.com> 6952 6953 * configure.ac: Fix check for Libpsl 6954 69552014-07-21 Daniel Stenberg <daniel@haxx.se> 6956 6957 * src/main.c (print_help): HTTP Method is a part of the Request not Header 6958 69592014-07-07 Tomas Hozza <thozza@redhat.com> 6960 6961 * src/iri.c (locale_to_utf8): Fix checking of iconv_open return code. 6962 69632014-07-05 Darshit Shah <darnir@gmail.com> 6964 6965 * src/http.c (gethttp): Fix indentation of conditional block 6966 (gethttp): Remove unneeded variable 6967 69682014-07-05 Darshit Shah <darnir@gmail.com> 6969 6970 * src/cookies.c (check_domain_match): Libpsl requires that all domain names 6971 passed to it be in utf8 lower case. 6972 69732014-07-03 Darshit Shah <darnir@gmail.com> 6974 6975 * src/wget.h (uerr_t): Remove unused error codes 6976 * src/http.c: (http_loop): Remove reference to unused error code 6977 69782014-06-30 Giuseppe Scrivano <gscrivan@redhat.com> 6979 6980 * src/convert.c (local_quote_string): Initialize newname. 6981 69822014-06-29 Giuseppe Scrivano <gscrivan@redhat.com> 6983 6984 * src/warc.c (warc_write_date_header): Avoid out-of-scope variable usage. 6985 69862014-06-28 Giuseppe Scrivano <gscrivan@redhat.com> 6987 6988 * src/Makefile.am (wget_SOURCES): Remove space-tab indentation. 6989 69902014-06-28 Giuseppe Scrivano <gscrivan@redhat.com> 6991 6992 * cfg.mk (local-checks-to-skip): Remove some checks. 6993 69942014-06-27 Giuseppe Scrivano <gscrivan@redhat.com> 6995 6996 * cfg.mk (VC_LIST_ALWAYS_EXCLUDE_REGEX): Ignore msdos/* and vms/* from 6997 syntax-check. 6998 69992014-06-22 Giuseppe Scrivano <gscrivan@redhat.com> 7000 7001 * src/warc.c [HAVE_UUID_CREATE]: Include <uuid.h> 7002 (warc_uuid_str) [HAVE_UUID_CREATE]: Use uuid_create and 7003 uuid_to_string to generate the UUID. 7004 Reported by: Alex Zimnitsky <aavzz@yandex.ru> 7005 70062014-06-22 Giuseppe Scrivano <gscrivan@redhat.com> 7007 7008 * configure.ac: Add check for uuid_create. 7009 70102014-06-22 Darshit Shah <darnir@gmail.com> (tiny change) 7011 7012 * src/progress.c (create_image): Align percentage download output better. 7013 70142014-06-22 Darshit Shah <darnir@gmail.com> 7015 7016 * testenv/(conf.files_crawled): diff is a set object and needs explicit str 7017 conversion. 7018 70192014-06-21 Nikita Vetrov <admin@kanaria.ru> (tiny change) 7020 7021 * src/openssl.c: Add one-time call OPENSSL_config in ssl_init. 7022 70232014-06-21 Giuseppe Scrivano <gscrivan@redhat.com> 7024 7025 * src/mswindows.c (fake_fork_child): Fix build error. 7026 Reported by: Gisle Vanem <gvanem@yahoo.no>. 7027 70282014-06-19 Giuseppe Scrivano <gscrivan@redhat.com> 7029 7030 * src/mswindows.c (fake_fork_child): Revert dinamic allocation of 7031 info->lfilename. 7032 Reported by: Gisle Vanem <gvanem@yahoo.no>. 7033 70342014-06-16 Giuseppe Scrivano <gscrivan@redhat.com> 7035 7036 * src/http.c (gethttp): Set "Connection: Keep-Alive" with keep-alive 7037 connections when using a proxy too. 7038 Reported by: Thorsten Schroeteler <Thorsten.Schroeteler@cassidian.com>. 7039 70402014-06-16 Darshit Shah <darnir@gmail.com> 7041 7042 * src/test.c: Include locale.h header for gettext. 7043 70442014-06-16 Darshit Shah <darnir@gmail.com> 7045 7046 * src/main.c (print_help, print_version): Mark as noreturn. 7047 * src/utils.c (memfatal, abort_run_with_timout): Same 7048 70492014-06-11 Giuseppe Scrivano <gscrivan@redhat.com> 7050 7051 * tests/Makefile.am: Remove @VAR@ with $FOO. 7052 7053 * tests/FTPTest.pm: Remove terminating empty lines. 7054 * tests/HTTPServer.pm: Likewise. 7055 * tests/HTTPTest.pm: Likewise. 7056 * tests/Test--httpsonly-r.px: Likewise. 7057 * tests/Test--no-content-disposition-trivial.px: Likewise. 7058 * tests/Test--no-content-disposition.px: Likewise. 7059 * tests/Test--spider-fail.px: Likewise. 7060 * tests/Test--spider-r--no-content-disposition-trivial.px: Likewise. 7061 * tests/Test--spider-r--no-content-disposition.px: Likewise. 7062 * tests/Test--spider-r-HTTP-Content-Disposition.px: Likewise. 7063 * tests/Test--spider-r.px: Likewise. 7064 * tests/Test--spider.px: Likewise. 7065 * tests/Test--start-pos--continue.px: Likewise. 7066 * tests/Test--start-pos.px: Likewise. 7067 * tests/Test-E-k-K.px: Likewise. 7068 * tests/Test-E-k.px: Likewise. 7069 * tests/Test-HTTP-Content-Disposition-1.px: Likewise. 7070 * tests/Test-HTTP-Content-Disposition-2.px: Likewise. 7071 * tests/Test-HTTP-Content-Disposition.px: Likewise. 7072 * tests/Test-N--no-content-disposition-trivial.px: Likewise. 7073 * tests/Test-N--no-content-disposition.px: Likewise. 7074 * tests/Test-N-HTTP-Content-Disposition.px: Likewise. 7075 * tests/Test-N-current.px: Likewise. 7076 * tests/Test-N-no-info.px: Likewise. 7077 * tests/Test-N-old.px: Likewise. 7078 * tests/Test-N-smaller.px: Likewise. 7079 * tests/Test-N.px: Likewise. 7080 * tests/Test-O--no-content-disposition-trivial.px: Likewise. 7081 * tests/Test-O--no-content-disposition.px: Likewise. 7082 * tests/Test-O-HTTP-Content-Disposition.px: Likewise. 7083 * tests/Test-O-nc.px: Likewise. 7084 * tests/Test-O-nonexisting.px: Likewise. 7085 * tests/Test-O.px: Likewise. 7086 * tests/Test-Restrict-Lowercase.px: Likewise. 7087 * tests/Test-Restrict-Uppercase.px: Likewise. 7088 * tests/Test-auth-basic.px: Likewise. 7089 * tests/Test-auth-no-challenge-url.px: Likewise. 7090 * tests/Test-auth-no-challenge.px: Likewise. 7091 * tests/Test-auth-with-content-disposition.px: Likewise. 7092 * tests/Test-c-full.px: Likewise. 7093 * tests/Test-c-partial.px: Likewise. 7094 * tests/Test-c-shorter.px: Likewise. 7095 * tests/Test-c.px: Likewise. 7096 * tests/Test-cookies-401.px: Likewise. 7097 * tests/Test-cookies.px: Likewise. 7098 * tests/Test-ftp--start-pos.px: Likewise. 7099 * tests/Test-ftp-bad-list.px: Likewise. 7100 * tests/Test-ftp-iri-disabled.px: Likewise. 7101 * tests/Test-ftp-iri-fallback.px: Likewise. 7102 * tests/Test-ftp-iri-recursive.px: Likewise. 7103 * tests/Test-ftp-iri.px: Likewise. 7104 * tests/Test-ftp-list-Multinet.px: Likewise. 7105 * tests/Test-ftp-list-UNIX-hidden.px: Likewise. 7106 * tests/Test-ftp-list-Unknown-a.px: Likewise. 7107 * tests/Test-ftp-list-Unknown-hidden.px: Likewise. 7108 * tests/Test-ftp-list-Unknown-list-a-fails.px: Likewise. 7109 * tests/Test-ftp-list-Unknown.px: Likewise. 7110 * tests/Test-ftp-pasv-fail.px: Likewise. 7111 * tests/Test-ftp-recursive.px: Likewise. 7112 * tests/Test-ftp.px: Likewise. 7113 * tests/Test-i-ftp.px: Likewise. 7114 * tests/Test-i-http.px: Likewise. 7115 * tests/Test-idn-cmd-utf8.px: Likewise. 7116 * tests/Test-idn-cmd.px: Likewise. 7117 * tests/Test-idn-headers.px: Likewise. 7118 * tests/Test-idn-meta.px: Likewise. 7119 * tests/Test-idn-robots-utf8.px: Likewise. 7120 * tests/Test-idn-robots.px: Likewise. 7121 * tests/Test-iri-disabled.px: Likewise. 7122 * tests/Test-iri-forced-remote.px: Likewise. 7123 * tests/Test-iri-list.px: Likewise. 7124 * tests/Test-iri-percent.px: Likewise. 7125 * tests/Test-iri.px: Likewise. 7126 * tests/Test-k.px: Likewise. 7127 * tests/Test-meta-robots.px: Likewise. 7128 * tests/Test-nonexisting-quiet.px: Likewise. 7129 * tests/Test-noop.px: Likewise. 7130 * tests/Test-np.px: Likewise. 7131 * tests/Test-proxy-auth-basic.px: Likewise. 7132 * tests/Test-restrict-ascii.px: Likewise. 7133 * tests/Test-stdouterr.px: Likewise. 7134 * tests/WgetTest.pm.in: Likewise. 7135 71362014-06-11 Giuseppe Scrivano <gscrivan@redhat.com> 7137 7138 * src/ftp.c: Replace main() with main in comments. 7139 * src/http.c: Likewise. 7140 * src/init.c: Likewise. 7141 7142 * src/cmpt.c (day_of_the_week): Remove repeated word in a comment. 7143 * src/utils.c: Remove repeated word in a comment. 7144 7145 * src/gnutls.c: Do not include <assert.h>. 7146 7147 * src/connect.c: Do not depend on always defined macros. 7148 * src/convert.c: Likewise. 7149 * src/css-url.c: Likewise. 7150 * src/hash.c: Likewise. 7151 * src/mswindows.h: Likewise. 7152 * src/netrc.c: Likewise. 7153 * src/progress.c: Likewise. 7154 * src/sysdep.h: Likewise. 7155 * src/utils.c: Likewise. 7156 * src/wget.h: Likewise. 7157 7158 * src/Makefile.am: Remove @VAR@ with $FOO. 7159 7160 * src/DESCRIP_MODS.MMS: Remove terminating empty lines. 7161 * src/DESCRIP_SRC.MMS: Likewise. 7162 * src/convert.c: Likewise. 7163 * src/exits.c: Likewise. 7164 * src/http.c: Likewise. 7165 * src/init.c: Likewise. 7166 * src/iri.c: Likewise. 7167 * src/res.c: Likewise. 7168 * src/spider.c: Likewise. 7169 * src/test.c: Likewise. 7170 * src/test.h 7171 * src/url.c: Likewise. 7172 * src/utils.c: Likewise. 7173 * src/vms.c: Likewise. 7174 7175 * src/decc_ver.c (main): Ensure bindtextdomain is called. 7176 * src/hash.c (main): Likewise. 7177 * src/html-parse.c: Likewise. 7178 * src/netrc.c: Likewise. 7179 * src/test.c: Likewise. 7180 * src/trunc.c: Likewise. 7181 71822014-06-11 Giuseppe Scrivano <gscrivan@redhat.com> 7183 7184 * msdos/Makefile.DJ: Remove terminating empty lines. 7185 * msdos/Makefile.WC: Likewise. 7186 * msdos/msdos.c: Likewise. 7187 71882014-06-11 Giuseppe Scrivano <gscrivan@redhat.com> 7189 7190 * doc/Makefile.am: Remove @VAR@ with $FOO. 7191 7192 * doc/fdl.texi: Remove terminating empty lines. 7193 71942014-06-11 Giuseppe Scrivano <gscrivan@redhat.com> 7195 7196 * NEWS: Remove repeated word. 7197 7198 * po/POTFILES.in: Add lib/regcomp.c. 7199 7200 * configure.ac: Do not depend on always defined macros. 7201 * vms/vms.h: Likewise. 7202 7203 * Makefile.am: Remove @VAR@ with $FOO. 7204 * util/Makefile.am: Likewise. 7205 7206 * ABOUT-NLS: Remove terminating empty lines. 7207 * MAILING-LIST: Likewise. 7208 * util/rmold.pl: Likewise. 7209 7210 * util/trunc.c (main): Ensure bindtextdomain is called. 7211 72122014-06-10 Giuseppe Scrivano <gscrivan@redhat.com> 7213 7214 * src/wget.h: Remove trailing whitespaces. 7215 7216 * src/retr.c (getproxy): Return a dinamically allocated string and... 7217 (retrieve_from_file, retrieve_url, url_uses_proxy): ...fix the caller 7218 to handle it. 7219 * src/init.c (home_dir): Replace strncpy with strdup. 7220 * src/mswindows.c (struct fake_fork_info): Make lfilename a pointer. 7221 (fake_fork_child): Replace strncpy with strdup. 7222 * src/http.c (ensure_extension): Replace strncpy with memcpy, not much 7223 better but make "make syntax-check" happy and we know the size. 7224 * src/ftp.c (getftp): Add parameter last_expected_bytes. 7225 (ftp_loop_internal): Pass parameter last_expected_bytes to getftp. 7226 * src/ftp-basic.c: Remove declaration of ftp_last_respline. 7227 (ftp_response): Do not set ftp_last_respline. 7228 * src/css-url.c (get_uri_string): Replace strncpy with strdup. 7229 * src/vms.c (set_vms_name): Replace strncpy with strdup. 7230 7231 * src/exits.c: Move WGET_EXIT_* definitions to... 7232 * src/exits.h: ...here. Add WGET_EXIT_GENERIC_ERROR, WGET_EXIT_PARSE_ERROR. 7233 Remove WGET_EXIT_MINIMUM. 7234 * src/init.c: Fix calls to exit(). 7235 * src/log.c: Likewise. 7236 * src/main.c: Likewise. 7237 * src/mswindows.c: Likewise. 7238 * src/netrc.c: Likewise. 7239 * src/utils.c: Likewise. 7240 * src/warc.c: Likewise. 7241 * src/Test-stdouterr.px: Likewise. 7242 72432014-06-10 Giuseppe Scrivano <gscrivan@redhat.com> 7244 7245 * doc/wget.texi: Remove trailing whitespaces. 7246 7247 * doc/fdl.texi: Copy from gnulib. 7248 72492014-06-10 Giuseppe Scrivano <gscrivan@redhat.com> 7250 7251 * build-aux/build_info.pl: Remove trailing whitespaces. 7252 * configure.ac: Likewise. 7253 72542014-06-08 Giuseppe Scrivano <gscrivan@redhat.com> 7255 7256 * src/main.c: Make `program_name' not static. 7257 7258 * src/cookies.c [HAVE_PSL]: Include <libpsl.h> only when HAVE_PSL is defined. 7259 72602014-05-30 Darshit Shah <darnir@gmail.com> 7261 7262 * src/cookies.c (check_domain_match): Use libpsl to check if the cookie domain 7263 is valid. Also remove unneeded test for numeric addresses. 7264 72652014-05-30 Darshit Shah <darnir@gmail.com> 7266 7267 * src/connect.{c,h}, convert.{c,h}, cookies.{c,h}, ftp-ls.c, ftp.h, gettext.h, 7268 hash.h, host.h, html-parse.h, html-url.h, http.c, init.c, main.c, mswindows.c, 7269 netrc.h, openssl.c, options.h, ptimer.h, recur.c, retr.c, sysdep.h, url.h, 7270 vms.c, warc.c, wget.h: Whitespace and formatting changes only. 7271 72722014-05-30 Darshit Shah <darnir@gmail.com> 7273 7274 * configure.ac: Allow compilation without libpsl. 7275 * README.checkout: Add libpsl as a dependency. 7276 72772014-05-24 Giuseppe Scrivano <gscrivan@redhat.com> 7278 7279 * gnulib: update module. 7280 72812014-05-24 Darshit Shah <darnir@gmail.com> 7282 7283 * doc/wget.texi: Document noscroll parameter to progress=bar 7284 72852014-05-20 Darshit Shah <darnir@gmail.com> 7286 7287 * src/utils.c (human_readable): Add new parameters, acc and decimals for the 7288 function. acc decides the number under which decimal values are shown for a 7289 certain value, while decimals decides the number of decimal digits displayed 7290 * src/utils.h (human_readable): Update declartion of the function 7291 * src/ftp.c (print_length): Update call to human_readable 7292 * src/http.c (gethttp): Same 7293 * src/init.c (defaults): Enable scrolling filenames by default 7294 * src/main.c (main): Update call to human_readable 7295 * src/options.h (options): Add new option noscroll 7296 * src/progress.c (create_image): Update the look of the progress bar. Human 7297 readable download size by default and add support for noscroll. 7298 (dot_set_params, bar_set_params): Change paramter to char * since strtok 7299 needs to modify the string. 7300 (bar_set_params): Add support for noscroll parameter to bar. 7301 73022014-05-03 Tim Ruehsen <tim.ruehsen@gmx.de> 7303 7304 * src/retr.c (retrieve_url): fixed memory leak 7305 73062014-05-03 Tim Ruehsen <tim.ruehsen@gmx.de> 7307 7308 * src/ftp-ls.c (ftp_parse_vms_ls): Explicitly typecast strlen's output 7309 * src/ftp.c (getftp): Prevent declaration of shadow variable 7310 * src/html-url.c (tag_handle_base, tag_handle_form, tag_handle_link, 7311 tag_handle_meta): Compiler directive to ignore unused variable 7312 * src/html-url.h (cleanup_html_url): Add function declaration 7313 * src/http-ntlm.c (ntlm_input, mkhash): Use ssize_t to declare variables that store 7314 sizes. 7315 (mkhash): Explicitly typecast output of c_toupper 7316 (short_pair): Add typecasts to prevent compiler warnings 7317 (ntlm-output): Fix datatypes of various variables 7318 * src/http.c (gethttp): Prevent declaration of shadow variable err 7319 (gethttp): remove unreachable code 7320 (test_parse_content_disposition): Fix variable declarations and use 7321 countof() macro 7322 * src/init.c (run_command): Prevent declaration of ghost variable 7323 (cmd_string, cmd_string_uppercase, cmd_file, cnd_vector, 7324 cmd_directory_vector, cmd_spec_dirstruct, cmd_spec_header, 7325 cmd_spec_warc_header, cmd_spec_htmlify, cmd_spec_mirror, 7326 cmd_spec_prefer_family, cmd_spec_progress, cmd_spec_recursive, 7327 cmd_spec_regex_type, cmd_spec_restrict_file_names, cmd_spec_report_speed, 7328 cmd_spec_timeout, cmd_spec_useragent, cmd_spec_verbose): Add compiler 7329 directive to ignore unused variable 7330 (cleanup_html_url, spider_cleanup): Remove declarations 7331 (test_commands_sorted): Cleanup code 7332 (test_cmd_spec_restrict_file_names): Use correct data types 7333 * src/iri.c (remote_to_utf8): Use more verbose variable name 7334 * src/main.c (init_switches): Prevent declaration of ghost variable 7335 * src/netrc.c (netrc_cleanup): Create cleanup function on common naming scheme 7336 * src/netrc.h (netrc_cleanup): Declare function 7337 * src/openssl.c (openssl_write, openssl_errstr): Compiler directive to ignore 7338 unused parameter 7339 (openssl_errstr): Explcicitly typecasr output of ASN1_STRING_length 7340 * src/options.h (struct options): Declare includes and excludes as const char ** 7341 * src/progress.c (progress_interactive_p, progress_handle_sigwinch): Compiler 7342 directive to ignore unused parameter 7343 * src/res.c (test_is_robots_txt_url): Fix datatypes 7344 * src/retr.c (line_terminator): Add compiler directive for ignoring unused 7345 paramter. Remove unused variable. 7346 * src/spider.h (spider_cleanup): Declare function 7347 * src/test,c (main): declare unused paramter 7348 * src/test.h (test_*): Declare functions 7349 * src/url.c (url_string): Explicit typecast of password strings 7350 (run_test): Declare *test, struct tests and *expected_result as const 7351 (test_path_simplify, test_append_uri_pathl, test_are_urls_equal): Fix datatypes 7352 * src/utls.c (fork_to_background): Be more verbose when errors occur 7353 (dir_matches_p, test_dir_matches_p): Declare char * as const as required 7354 (base64_encode, base64_decode, get_max_length): Set correct return type 7355 (match_pcre_regex, match_posix_regex): Use correct datatypes and typecasts 7356 (test_subdir_p): static const struct 7357 * src/utils.h (base64_encode, base64_decode, get_max_length): Fix return type 7358 * src/warc.c (ward_write_cdx_record): unused parameter 7359 (struct hash_table *warc_cdx_dedup_table): Declare as static 7360 73612014-05-01 Darshit Shah <darnir@gmail.com> (tiny change) 7362 7363 * src/progress.c (dot_finish): Do not print extra newlines when not in verbose 7364 mode. (Purely aesthetic change) 7365 (get_eta): Add extra space when eta is printed. 7366 (create_image): Remove erroneous space from being added to progress bar when 7367 filename > MAX_FILENAME_LEN 7368 (create_image): Remove extra space before printed download speeds 7369 Make the filename a fixed width column. 7370 73712014-05-01 Darshit Shah <darnir@gmail.com> 7372 7373 * doc/wget.texi: Add documentation for --show-progress 7374 73752014-05-01 Benjamin Goose <gans+wget@tngtech.com> 7376 7377 * src/http.c: Fix small memory leak 7378 73792014-04-22 Tim Ruehsen <tim.ruehsen@gmx.de> 7380 7381 * src/http.c (gethttp): Fix 204 response handling 7382 7383 * tests/Test-204.px: added file 7384 * tests/run-px: added Test-204.px 7385 * tests/Makefile.am: added Test-204.px 7386 7387 73882014-04-22 Giuseppe Scrivano <gscrivan@redhat.com> 7389 7390 * tests/Makefile.am (EXTRA_DIST): Add missing Test--start-pos.px, 7391 Test-ftp--start-pos.px and Test--start-pos--continue.px. 7392 73932014-04-19 Darshit Shah <darnir@gmail.com> 7394 7395 * src/log.h (log_options): Add new logging options, LOG_PROGRESS. All progress 7396 bar related output should use LOG_PROGRESS. 7397 * src/log.c (CHECK_VERBOSE): Implement LOG_PROGRESS output 7398 * src/progress.c (dot_create, print_row_stats, dot_update, dot_finish, 7399 bar_finish, display_image): Output progress information through LOG_PROGRESS 7400 (progress_implementation, dot_create, bar_create, progress_create): The 7401 progress bar create functions accept an extra paramter for the filename of the 7402 local file 7403 (bar_progress): Add new variable to store filename of currently downloading 7404 file 7405 (bar_finish): Aesthetic change. Print two newlines if in verbose mode, else 7406 only one. 7407 (MACRO): Define new macro, MIN 7408 (create_image): Implement displaying filename in progress bar output 7409 Filename tick implementation copied from Giuseppe's patch on parallel-wget 7410 * src/progress.h (progress_create): Accept another parameter for filename 7411 * src/http.c (gethttp): Remove unnecessary conditional 7412 (read_response_body): Send local filename to fd_read_body so that it can be 7413 printed on the progress bar 7414 * src/main.c (option_data): Add new switch, --show-progress 7415 (main): If in verbose output, show progress bar by default 7416 (main): Set progress implemetation when displaying progress bar 7417 (no_prefix): Increase buffer size to 2048 to prevent overflows 7418 * src/init.c (commands): Add new command, showprogress 7419 (defaults): By default initialize show_progress to false 7420 * src/options.h (options): Add new option, show_progress 7421 * src/retr.c (fd_read_body): Accept new parameter for filename of currently 7422 downlaoding file 7423 (fd_read_body): Create and update progress bar when opt.show_progress is set 7424 (fd_read_body): Display progress information in Windows console titlebars 7425 * src/retr.h (fd_read_body): Update declaration 7426 * src/ftp.c (getftp): Send filename of the local file so that it can be printed 7427 with the progress bar. 7428 74292014-03-26 Darshit Shah <darnir@gmail.com> 7430 7431 * src/ftp.c (getftp): Rearrange parameters to fix compiler warning 7432 * src/utils.c (get_dir_matches_p): Do not pass a const char** to a function that 7433 expects char** 7434 74352014-03-25 Daniel Stenberg <daniel@haxx.se> 7436 7437 * src/url.c (shorten_length): Remove unused function. 7438 74392014-03-19 Yousong Zhou <yszhou4tech@gmail.com> 7440 7441 * src/init.c, main.c, options.h: Add option --start-pos for specifying 7442 start position of a download. 7443 * src/http.c: Utilize opt.start_pos for HTTP download. 7444 * src/ftp.c: Utilize opt.start_pos for FTP retrieval. 7445 74462014-03-13 Zihang Chen <chsc4698@gmail.com> 7447 7448 * testenv/test: (new package) package for test case classes 7449 * testenv/WgetTest.py: Split into test/base_test.py and test/http_test.py. 7450 * testenv/Test-*.py: Optimize the imports according to changes of WgetTest.py 7451 74522014-03-13 Zihang Chen <chsc4698@gmail.com> 7453 7454 * testenv/server: (new package) package for the server classes 7455 * testenv/server.http: (new package) package for HTTP server 7456 * testenv/server.ftp: (new package) package for FTP server 7457 * testenv/HTTPServer.py: Move to server/http/http_server.py. Also change the 7458 CERTFILE to '../certs/wget-cert.pem'. 7459 * testenv/FTPServer.py: Move to server/ftp/ftp_server.py. 7460 * testenv/WgetTest.py: Optimize import respect to the server classes. 7461 74622014-03-13 Zihang Chen <chsc4698@gmail.com> 7463 7464 * testenv/misc: (new package) package for miscellaneous modules 7465 * testenv/ColourTerm.py: Move to package misc and rename to colour_terminal.py, 7466 add print_color functions to reduce the use of string literals like 7467 "BLUE", "RED" etc. 7468 * testenv/WgetTest.py: 7469 (CommonMethods.Server_setup): Change invocation to printer to print_blue. 7470 (CommonMethods.FilesCrawled): Change invocation to printer to print_red. 7471 (HTTPTest.__init__): Change invocations to printer to print_red and 7472 print_green respectively. 7473 74742014-03-13 Zihang Chen <chsc4698@gmail.com> 7475 7476 * testenv/exc: (new package) package for miscellaneous exceptions 7477 * testenv/WgetTest.py: Move TestFailed to exc/test_failed.py. 7478 74792014-03-13 Zihang Chen <chsc4698@gmail.com> 7480 7481 * testenv/conf: (new package) package for rule classes and hook methods 7482 * testenv/WgetTest.py: 7483 (CommonMethods.Authentication): Move to conf/authentication.py. 7484 (CommonMethods.ExpectHeader): Move to conf/expect_header.py. 7485 (CommonMethods.RejectHeader): Move to conf/reject_header.py. 7486 (CommonMethods.Response): Move to conf/response.py. 7487 (CommonMethods.SendHeader): Move to conf/send_header.py. 7488 (CommonMethods.ServerFiles): Move to conf/server_files.py. 7489 (CommonMethods.LocalFiles): Move to conf/local_files.py. 7490 (CommonMethods.ServerConf): Move to conf/server_conf.py. 7491 (CommonMethods.WgetCommands): Move to conf/wget_commands.py. 7492 (CommonMethods.Urls): Move to conf/urls.py. 7493 (CommonMethods.ExpectedRetcode): Move to conf/expected_retcode.py. 7494 (CommonMethods.ExpectedFiles): Move to conf/expected_files.py. 7495 (CommonMethods.FilesCrawled): Move to conf/files_crawled.py. 7496 (CommonMethods.__check_downloaded_files): Rename to 7497 _check_downloaded_files, so that the method is callable from outside the 7498 class. 7499 (CommomMethods.get_server_rules): Modify so that it utilizes the conf 7500 package. 7501 (HTTPTest): Add a method hook_call(configs, name) to reduce duplications 7502 in pre_hook_call, call_test and post_hook_call utilizing the conf package. 7503 * testenv/conf/hook_sample.py: (new file) sample for hooks 7504 * testenv/conf/rule_sample.py: (new file) sample for rules 7505 * testenv/REAMDE: Update sections about customizing rules and hooks. 7506 75072014-03-13 Zihang Chen <chsc4698@gmail.com> 7508 7509 * testenv/base_test.py: 7510 (CommonMethods): Rename to BaseTest. 7511 (BaseTest): Implement __init__ method where the class-wide variables are 7512 initialized. Also variable names like `xxx_list` is renamed to its plural 7513 form, e.g. `server_list` => `servers`. 7514 (BaseTest.init_test_env): Remove name argument due to its unnecessarity. 7515 (BaseTest.get_test_dir): Because the path of the test directory is needed 7516 in multiple methods, this method is implemented. 7517 (BaseTest.get_domain_addr): Rewrite the return statement utilizing str 7518 formatting (which is more Pythonic). 7519 (BaseTest.get_cmd_line): Rename to gen_cmd_line. Change the variables with 7520 capitcal characters to lower ones. Also, the nested for loop is rewritten 7521 to a plain loop using the zip function. 7522 (BaseTest.__gen_local_filesys): Rename to gen_local_fs_snapshot. Move to 7523 ExpectedFiles in conf/expected_files.py and is marked as a static 7524 method. Refactor to a less verbose implementation. 7525 (BaseTest._check_downloaded_files): Rename to __call__ to agree with the 7526 invocation in test case classes. Move to ExpectedFiles in 7527 conf/expected_files.py. 7528 (BaseTest.get_server_rules): Refactor to a more Pythonic form utilizing 7529 dict.items() and is marked static. 7530 (BaseTest.stop_server): (new method) an abstract method which should stop 7531 the currently using servers. 7532 (BaseTest.instantiate_server_by): (new method) an abstract method which 7533 should instantiate a server instance according to the given argument. 7534 (BaseTest.__enter__): (new method) method which initialize the context 7535 manager 7536 (BaseTest.__exit__): (new method) method that finilize the context manager 7537 and deal with the exceptions during the execution of the with statement, 7538 subclasses can override this method for extensibility 7539 * testenv/http_test.py: 7540 (HTTPTest.__init__): Add call to super.__init__. Default values of 7541 pre_hook, test_params, post_hook are set to None to avoid a subtle bug of 7542 Python. Argument servers is renamed to protocols. 7543 (HTTPTest.Server_setup): Move to BaseTest and rename to server_setup. 7544 Calls to pre_hook_call, call_test, post_hook_call are removed. 7545 (HTTPTest.hook_call, pre_hook_call, call_test, post_hook_call): Move to 7546 BaseTest for that both HTTP test cases and FTP test cases may use these 7547 methods. 7548 (HTTPTest.init_HTTP_Server, init_HTTPS_Server): Merge and rename to 7549 instantiate_server_by to implement the abstract method in BaseTest. 7550 (HTTPTest.stop_HTTP_Server): Rename to stop_server to implement the 7551 abstract method in BaseTest. Also, pull out the part where remaining 7552 requests are gathered into a new method request_remaining. 7553 (BaseTest.act_retcode): Rename to ret_code because ExpectedRetCode is 7554 moved out from BaseTest, so the name act_retcode is actually a bit 7555 verbose. 7556 * testenv/conf/expected_ret_code.py: 7557 (ExpectedRetCode.__call__): Rewrite the str into a more readable form. 7558 * testenv/conf/files_crawled.py: 7559 (FilesCrawled.__call__): Refactor this method into a more Pythonic form 7560 utilizing the zip function. 7561 * testenv/conf/local_files.py: 7562 (LocalFiles__call__): Rewrite this method with the recommended with 7563 statement. 7564 * testenv/conf/server_conf.py: 7565 (ServerConf.__call__): Rewrite this method due to BaseTest.server_list is 7566 renamed to BaseTest.servers. 7567 * testenv/conf/server_files.py: 7568 (ServerFiles.__call__): Refactor the nested for loop into a plain one 7569 utilizing the zip function. 7570 * testenv/conf/urls.py: 7571 (URLs): Rename url_list to urls. 7572 * testenv/conf/wget_commands.py: 7573 (WgetCommands): Rename command_list to commands, rename test_obj.options 7574 to test_obj.wget_options. 7575 * testenv/Test--https.py, Test-Proto.py, Test-Parallel-Proto.py: Argument servers 7576 is changed to protocols due to change in the signature of 7577 HTTPTest.__init__. 7578 75792014-03-13 Zihang Chen <chsc4698@gmail.com> 7580 7581 * testenv/WgetTest.py: Move WgetFile to package misc. 7582 * testenv/README: Modify documentation respect to WgetFile. 7583 * testenv/Test-*.py: Optimize imports about WgetFile. 7584 75852014-03-13 Zihang Chen <chsc4698@gmail.com> 7586 7587 * testenv/Test-Proto.py: Fix a typo (line 71: server to servers). 7588 75892014-03-04 Giuseppe Scrivano <gscrivan@redhat.com> 7590 7591 * src/http.c (modify_param_value, extract_param): Aesthetic change. 7592 75932014-02-24 Yousong Zhou <yszhou4tech@gmail.com> (tiny change) 7594 7595 * tests/tests/Test--httpsonly-r.px: Add feature constraint on https. 7596 75972014-02-24 Giuseppe Scrivano <gscrivan@redhat.com> 7598 7599 * gnulib: update module. 7600 Reported by: Darshit Shah <darnir@gmail.com>. 7601 76022014-02-14 Vladimír Pýcha <vpycha@gmail.com> (tiny change) 7603 7604 * src/http.c (parse_content_disposition, extract_param) 7605 (append_value_to_filename, digest_authentication_encode): URL-decode the 7606 filename parameter of Content-Disposition HTTP header if it is encoded. This 7607 is related to --content-disposition. 7608 New parameter of extract_param(), "is_url_encoded". 7609 Add argument NULL to the call of extract_param() in 7610 digest_authentication_encode(). 7611 * src/http.h: Add the new parameter to the declaration of extract_param(). 7612 * src/cookies.c (parse_set_cookie, test_cookies): Add argument NULL to the calls 7613 of extract_param(). 7614 * src/url.c (url_unescape): Remove "static" modifier. 7615 * src/url.h: Add declaration of url_unescape(). 7616 76172014-02-13 Yousong Zhou <yszhou4tech@gmail.com> 7618 7619 * tests/Wget.pm.in: Exclude existing files from the check of unexpected 7620 downloads. 7621 76222014-02-13 Yousong Zhou <yszhou4tech@gmail.com> 7623 7624 * tests/Test--start-pos.px: Test --start-pos for HTTP downloads. 7625 * tests/Test-ftp--start-pos.px: Test --start-pos for FTP downloads. 7626 * tests/Test--start-pos--continue.px: Test the case when --start-pos and 7627 --continue were both specified. 7628 76292014-02-13 Yousong Zhou <yszhou4tech@gmail.com> 7630 7631 * tests/FTPServer.pm: Fix the handling of TYPE command and avoid endless 7632 loop when doing binary mode RETR. 7633 76342014-02-10 Yousong Zhou <yszhou4tech@gmail.com> 7635 7636 * doc/wget.texi: Add documentation for --start-pos. 7637 76382014-02-06 Giuseppe Scrivano <gscrivan@redhat.com> 7639 7640 * src/main.c (print_version): Move copyright year out of the localized 7641 string and update it. 7642 76432014-02-06 Giuseppe Scrivano <gscrivan@redhat.com> 7644 7645 * configure.ac: Update copyright years. 7646 76472014-01-29 Darshit Shah <darnir@gmail.com> 7648 7649 * src/main.c: Remove pre-processor variable WHEN_DEBUG 7650 (option_data[]): Do not fail on --debug even if debug support is not 7651 compiled in. 7652 (main): Explicitly set opt.debug to false in case debugging support was not 7653 compiled. 7654 * src/init.c (commands[]): Support --debug wven when support is not compiled in. 7655 * src/options.h: Same 7656 76572014-01-23 Lars Wendler <polynomial-c@gentoo.org> (tiny change) 7658 7659 * tests/Test--post-file.px: Do not fail when wget has no debug support. 7660 76612014-01-17 Darshit Shah <darnir@gmail.com> 7662 7663 * src/init.c (commands[]): Add --no-config. 7664 * src/options.h: Same. 7665 * src/main.c (option_data[]): Same. 7666 (print_help): Same. 7667 (main): If --no-config is set, then do not read the wgetrc files. 7668 76692014-01-05 Håkon Vågsether <hauk142@gmail.com> (tiny change) 7670 7671 * src/http.c (http_loop): Fix checking the URL length when filename is 7672 specified. 7673 76742014-01-02 Darshit Shah <darnir@gmail.com> 7675 7676 * testenv/WgetTest.py (CommonMentods.exec_wget): Wait for n seconds before calling 7677 the Wget executable. 7678 76792014-01-02 Darshit Shah <darnir@gmail.com> 7680 * testenv/Makefile.am: Add new Test--https.py to list of tests and EXTRA_DIST. 7681 Also replace all tabs with spaces in file for conformity. 7682 * testenv/Test--https.py: New test to check if Wget works correctly with HTTPS 7683 servers 7684 * testenv/HTTPServer.py: Import new modules for use in HTTPS Servers 7685 (HTTPSServer): New class that generates a SSL-wrapped socket for use in a 7686 HTTPS Server. 7687 (HTTPSd): HTTPS daemon class. Analogous to the HTTPd class 7688 * testenv/WgetTest.py: Define global variables HTTP and HTTPS to reflect Server 7689 types 7690 (CommonMethods.exec_wget): Add the protocol information to the URL before 7691 passing it to wget 7692 (HTTPTest.__init__): Edit syntax. The servers variable now accepts a list of 7693 servers defined by their type. E.g. HTTP, HTTPS. 7694 (HTTPTest.Server_setup): Reflect change in type of variable servers. 7695 However, we maintin the value of self.servers to allow most of the code to 7696 remain unchanged. 7697 (HTTPTest.init_HTTPS_Server): Initialize a HTTPS Server 7698 * testenv/Test-Parallel-Proto.py: Edit to reflect slight change in Test Fiel Syntax. 7699 * testenv/Test-Proto.py: Same 7700 77012013-12-29 Giuseppe Scrivano <gscrivan@redhat.com> 7702 7703 * src/init.c (home_dir): Remove useless 'if'. 7704 * src/warc.c (warc_start_new_file): Likewise. 7705 (warc_process_cdx_line): Likewise. 7706 (warc_write_response_record): Likewise. 7707 77082013-12-29 Giuseppe Scrivano <gscrivan@redhat.com> 7709 7710 * doc/wget.texi: Update to GFDL 1.3. 7711 77122013-12-27 Darshit Shah <darnir@gmail.com> 7713 7714 * testenv/WgetTest.py: Add modeline 7715 (CommonMethods.ServerConf): New pre-test hook that sets 7716 BaseHTTPRequestHandler class variables in all available servers 7717 * testenv/HTTPServer.py (HTTPd.ServerConf): Call the respective method in the Server 7718 to set the class variables 7719 (StoppableHTTPServer.server_sett): Set the handler class variables 7720 77212013-12-26 Tim Ruehsen <tim.ruehsen@gmx.de> 7722 7723 * src/gnutls.c (ssl_connect_wget): Fix connect timeout failure 7724 77252013-12-26 Darshit Shah <darnir@gmail.com> 7726 7727 * testenv/WgetTest.py (HTTPTest.call_test): Correct the call to stop_HTTP_Server. 7728 77292013-12-25 Darshit Shah <darnir@gmail.com> 7730 7731 * testenv/WgetTest.py (CommonMehtods.exec_wget): Catch and handle exception if the 7732 Wget executable is not found at src/wget 7733 (HTTPTest.call_test): In case of error during execution, remove all existing 7734 servers before quitting 7735 77362013-12-22 Mike Frysinger <vapier@gentoo.org> 7737 7738 * doc/sample.wgetrc: add links to the manual. 7739 77402013-12-22 Giuseppe Scrivano <gscrivan@redhat.com> 7741 7742 * gnulib: add git submodule. 7743 77442013-12-15 Darshit Shah <darnir@gmail.com> 7745 7746 * testenv/WgetTest.py (HTTPTest.HTTP_setup): Rename to Server_setup so it can be 7747 easily reused for other non-HTTP servers. 7748 (HTTPTest.__init__): Call Server_setup instead of HTTP_setup 7749 (HTTPTest.Server_setup): Split into three more functions, that handle 7750 pre-hooks, test execution and post-hooks respectively. 7751 (HTTPTest.pre_hook_call): Set up and execute the pre-test hooks. Code split 7752 from HTTPTest.Server_setup 7753 (HTTPTest.call_test): Execute wget and log exit code. Code split from 7754 HTTPTest.Server_setup 7755 (HTTPTest.post_hook_call): Set up and execute post-test hooks. Code split 7756 from HTTPTest.Server_setup 7757 77582013-11-04 Darshit Shah <darnir@gmail.com> 7759 7760 * tests/Makefile.am: Add new tests introduced in last commit to 7761 EXTRA_DIST. 7762 Reported by: Andrea Urbani <matfanjol@mail.com> 7763 77642013-11-02 Giuseppe Scrivano <gscrivan@redhat.com> 7765 7766 * src/progress.c (struct progress_implementation): New method draw. 7767 (bar_update): Split into... 7768 (bar_draw): ...this new function. 7769 (dot_update): Split into... 7770 (dot_draw): New function. 7771 (progress_update): Also invoke draw on `current_impl'. 7772 77732013-11-02 Giuseppe Scrivano <gscrivan@redhat.com> 7774 7775 * src/http.c (gethttp): Increase max header value length to 512. 7776 77772013-10-30 Giuseppe Scrivano <gscrivan@redhat.com> 7778 7779 * src/http.c (skip_short_body): Remove assert which is always true. 7780 Reported by: David Binderman <dcb314@hotmail.com> 7781 77822013-10-26 Bykov Aleksey <gnfalex@rambler.ru> 7783 7784 * src/utils.c (match_tail): Fix cookies reject 7785 7786 * src/ftp-ls.c (ftp_parse_unix_ls): Fix parsing month name in uppercase 7787 77882013-10-22 Ángel González <keisial@gmail.com> 7789 7790 * bootstrap.conf (gnulib_modules): Add module xstrndup. 7791 77922013-10-17 Andrea Urbani <matfanjol@mail.com> 7793 7794 * tests/FTPServer.pm (GetBehavior): new routine. 7795 * tests/FTPServer.pm (get_list): new parameter to skip hidden files 7796 * tests/Test-ftp-list-Multinet.px: Test LIST on a "UNIX MultiNet 7797 Unix Emulation" system that returns an empty content when 7798 "LIST -a" is requested (probably because no "-a" files 7799 exist) 7800 * tests/Test-ftp-list-Unknown.px: Test LIST on a "Unknown ftp 7801 service" system that returns an empty content when 7802 "LIST -a" is requested (probably because no "-a" files 7803 exist) 7804 * tests/Test-ftp-list-Unknown-a.px: Test LIST on a "Unknown ftp 7805 service" system that recognises "LIST -a" as "give me the 7806 -a file" and there is a "-a" file + other two files. 7807 "LIST -a" will return only "-a", "LIST" all the three files. 7808 * tests/Test-ftp-list-Unknown-hidden.px: Test LIST on a "Unknown ftp 7809 service" system that recognises "LIST -a" as an "UNIX Type: 7810 L8" system (show me also the hidden files) and there is an 7811 hidden file. 7812 * tests/Test-ftp-list-Unknown-list-a-fails.px: Test LIST on a 7813 "Unknown ftp service" system that raises an error on 7814 "LIST -a" command. 7815 * tests/Test-ftp-list-UNIX-hidden.px: Test LIST on a "UNIX Type: 7816 L8" system that recognises "LIST -a" as "show me also the 7817 hidden files" and there is an hidden file. 7818 78192013-10-17 Andrea Urbani <matfanjol@mail.com> 7820 7821 * src/ftp.c (getftp): force "LIST" or "LIST -a" 7822 according to the remote system type. If the remote 7823 system is not known, it tries, only the first time, 7824 "LIST -a", after "LIST" and decides which one to use. 7825 For more information look for "__LIST_A_EXPLANATION__" 7826 * src/ftp.h (enum ustype): New ustype enum. 7827 * src/ftp.h (ftp_syst): New enum ustype *unix_type parameter. 7828 * src/ftp.h (ftp_list): Removed enum stype rs parameter, added. 7829 bool avoid_list_a, bool avoid_list, bool *list_a_used 7830 parameters. 7831 * src/ftp.h (wget_ftp_fstatus): New AVOID_LIST_A, AVOID_LIST, 7832 LIST_AFTER_LIST_A_CHECK_DONE values. 7833 * src/ftp-basic.c (ftp_list): it handles the new avoid_list_a, 7834 avoid_list and list_a_used parameters. 7835 * src/ftp.h (ftp_syst): it stores information about the "215 UNIX" 7836 systems into the new unix_type parameter. 7837 78382013-10-14 Giuseppe Scrivano <gscrivan@redhat.com> 7839 7840 * testenv/Makefile.am (XFAIL_TESTS): Remove Test--spider-r.py. 7841 78422013-10-10 Giuseppe Scrivano <gscrivan@redhat.com> 7843 7844 * tests/Test-idn-robots-utf8.px: Remove -H. 7845 * tests/Test-idn-cmd.px: Likewise. 7846 * tests/Test-idn-cmd-utf8.px: Likewise. 7847 Suggested by: Tim Ruehsen <tim.ruehsen@gmx.de> 7848 78492013-10-10 Giuseppe Scrivano <gscrivan@redhat.com> 7850 7851 * src/url.c (url_parse): Try to convert UTF-8 URLs to IDN. 7852 * src/html-url.c (append_url): Parse URLs specifying an IRI structure. 7853 78542013-10-07 Tim Ruehsen <tim.ruehsen@gmx.de> 7855 7856 * tests/Test-idn-robots.px: added punycoded and escaped URLs to follow 7857 removed -H 7858 78592013-10-06 Tim Ruehsen <tim.ruehsen@gmx.de> 7860 7861 * doc/wget.texi: add/explain quoting of wildcard patterns 7862 78632013-10-06 Giuseppe Scrivano <gscrivan@redhat.com> 7864 7865 * testenv/Makefile.am (EXTRA_DIST): Distribute test files. 7866 78672013-09-16 Darshit Shah <darnir@gmail.com> 7868 7869 * testenv/README: Update documentation 7870 78712013-09-14 Darshit Shah <darnir@gmail.com> 7872 7873 * testenv/HTTPServer.py (StoppableHTTPServer): Define object variable 7874 request_headers which stores a list of requests received by the server 7875 (StoppableHTTPServer.get_req_headers): Return the list of Request 7876 Headers stored by the server 7877 (_Handler.do_HEAD): Send the Request MEthod string for identification 7878 (_Handler.do_GET): Same 7879 (_Handler.__log_request): Log the request in Request_Headers list 7880 (_Handler.send_head): Make a call to __log_request 7881 * testenv/Test--spider-r.py: Add new list, Request_List, which contains all 7882 the requests that Wget is expected to send. This will allow for 7883 fine-grained tests on recursive downloading. 7884 * testenv/WgetTest.py (CommonMethods.FilesCrawled): New Post-Test Hook, that 7885 ensures that all the expected Files on the server were accessed as 7886 expected. 7887 (HTTPTest.stop_HTTP_server): On stopping server, asks it to respond 7888 with list of all requests it received. 7889 78902013-09-13 Tim Ruehsen <tim.ruehsen@gmx.de> 7891 7892 * src/recur.c (download_child_p): fix compile error when 7893 configured using --without-ssl. 7894 78952013-09-13 Tim Ruehsen <tim.ruehsen@gmx.de> 7896 7897 * configure.ac: added a summary of build options 7898 fixed some indentations 7899 removed the unconditionally adding of libz with --with-ssl 7900 removed -lgcrypt and -lgpg-error for gnutls 7901 79022013-09-13 Darshit Shah <darnir@gmail.com> 7903 7904 * testenv/WgetTest.py (CommonMethods._replace_substring): New method that will 7905 replace a substring delimited by {{ }} characters by the value of 7906 self.<substring> variable 7907 (CommonMethods.WgetCommands): Use the _replace_substring () call to 7908 replace the substrings in the the command line. 7909 (CommonMethods.ServerFiles): Run the _replace_substring () method on 7910 the File contents too. 7911 79122013-09-13 Darshit Shah <darnir@gmail.com> 7913 7914 * testenv/Test--spider-r.py: Test retrieval in recursive spider mode. 7915 * testenv/Makefile.am: add new file 7916 79172013-09-13 Darshit Shah <darnir@gmail.com> 7918 7919 * testenv/HTTPServer.py (_Handler.do_HEAD): If requested path is /, respond 7920 with /index.html 7921 (_Handler.do_HEAD): Smartly guess value of Content-Type Header from 7922 file extension 7923 (_Handler.guess_type): Use a preset list of extensions and 7924 Content-Type strings. If the extension matches one in the list, use 7925 that string, else default to "text/plain" 7926 79272013-09-11 Darshit Shah <darnir@gmail.com> 7928 7929 * testenv/WgetTest.py (CommonMethods.exec_wget): Expect domain_list instead of 7930 domain. 7931 (CommonMethods.get_cmd_line): Same. Generate command line by 7932 prepending to each file it's respective domain string 7933 (CommonMethods.ServerFiles): Generate file_list and server_rules for 7934 each Server and set the config details 7935 (HTTPTest): New named parameter, servers which signifies number of 7936 servers to spawn 7937 (HTTPTest.HTTP_setup): This method now takes servers as a new 7938 parameter. Instead of storing server and domain, we now store 7939 server_list and domain_list. Each server must be initialized through a 7940 loop. 7941 (HTTPTest.stop_HTTP_server): Stop all servers in a loop. 7942 * testenv/Test-Parallel-Proto.py: Prototype test file for multiple servers. 7943 79442013-09-10 Darshit Shah <darnir@gmail.com> 7945 7946 * testenv/WgetTest.py (HTTPTest.stop_HTTP_server): With the threaded servers, 7947 we can simply use the socketserver.shutdown() method to close the 7948 server instead of sending a QUIT command 7949 * testenv/HTTPServer.py (StoppabelHTTPServer.serve_forever): Delete method. No 7950 need to override this method anymore. 7951 (WgetHTTPRequestHandler.do_QUIT): No longer required 7952 (HTTPd): Rename self.server to self.server_inst to reduce ambiguity 7953 when referenced from WgetTest 7954 79552013-09-09 Tim Ruehsen <tim.ruehsen@gmx.de> 7956 7957 * src/gnutls.c (ssl_connect_wget): changed checking of option "PFS" 7958 to be better prepared for some kinds of backports. 7959 Reported by: Daniel Kahn Gillmor <dkg@fifthhorseman.net> 7960 79612013-09-08 Darshit Shah <darnir@gmail.com> 7962 7963 * testenv/README (File Structure): Add explanation about various variables 7964 used consistently across all tests. 7965 79662013-09-07 Tim Ruehsen <tim.ruehsen@gmx.de> 7967 7968 * src/gnutls.c (ssl_connect_wget): use gnutls_check_version() 7969 to check if option "PFS" is available 7970 Reported by: Daniel Kahn Gillmor <dkg@fifthhorseman.net> 7971 79722013-09-07 Darshit Shah <darnir@gmail.com> 7973 7974 * testenv/Test-Post.py: Test basic functionality for sending HTTP POST 7975 requests using the --method command 7976 * testenv/Makefile.am: Add new test 7977 79782013-09-07 Darshit Shah <darnir@gmail.com> 7979 7980 * testenv/HTTPServer.py: Remove bunch of old code artefacts 7981 * testenv/WgetTest.py: Same 7982 79832013-09-07 Darshit Shah <darnir@gmail.com> 7984 7985 * testenv/HTTPServer.py (StoppableHTTPServer.server_conf): Change global 7986 variable fileSys to an object variable. This is good programming 7987 practice and required for parallel-wget support. 7988 (StoppableHTTPServer.server_forever): Edit overridden method to remove 7989 the global queue variable. No longer required under the new working 7990 (WgetHTTPRequestHandler.do_QUIT): Don't push fileSys through the queue 7991 (_Handler): Rename class __Handler to _Handler to match Python's 7992 encapsulation rules 7993 (_Handler.do_POST): fileSys is now an object variable of the server 7994 (_Handler.do_PUT): Same 7995 (_Handler.send_put): Same 7996 (_Handler.send_head): Same 7997 (HTTPd): New class that wraps around the server for Threading 7998 (create_server): Make new object of HTTPd. 7999 (spawn_server): Start the thread created through create_server 8000 (ret_fileSys): Removed method. No longer required. 8001 * testenv/WgetTest.py (HTTPTest.__init__): Don't explicitly set 8002 self.act_retcode. Instead toggle tests_passed boolean to set the 8003 correct return code. 8004 (HTTPTest.HTTP_setup): We no longer call HTTPServer.spawn_server to 8005 start a new instance of the server. 8006 (HTTPTest.init_HTTP_server): We no longer call the old 8007 create_server(), spawn_server() methods. Instead use the new HTTPd 8008 class interface to create new instances of the server 8009 (HTTPTest.stop_HTTP_server): Don't ask server to return fileSys. 8010 80112013-09-06 Darshit Shah <darnir@gmail.com> 8012 8013 * testenv/WgetTest.py (CommonMethods.__check_downloaded_files): Print a 8014 unified diff in case there is a mismatch in the file contents 8015 80162013-09-06 Darshit Shah <darnir@gmail.com> 8017 8018 * testenv/README: New section on pending work. Will keep updating this to keep 8019 track of work that remains to be done on this implementation 8020 80212013-09-06 Darshit Shah <darnir@gmail.com> 8022 8023 * testenv/HTTPServer.py (WgetHTTPRequestHandler.test_cookies): Comment out the 8024 old test_cookies code. This is no longer used and was causing problems 8025 with expected cookies. The code will soon be removed anyways 8026 * testenv/Test-cookie.py: Add new test for basic cookie functionality 8027 * testenv/Test-cookie-401.py: Ensure cookies are saved during a 401 response 8028 * testenv/Test-cookie-expires.py: Ensure that the Expires field is correctly 8029 handled 8030 * testenv/Test-cookies-domain-mismatch.py: Ensure that mismatched domains are 8031 handled by Wget 8032 * testenv/Makefile.am: Add the new tests 8033 80342013-09-05 Darshit Shah <darnir@gmail.com> 8035 8036 * testenv/Test-auth-with-content-disposition.py: Add test that ensures Content 8037 Disposition works alongwith authentication 8038 * testenv/Makefile.am: Add new test 8039 80402013-09-04 Tim Ruehsen <tim.ruehsen@gmx.de> 8041 8042 * doc/sample.wgetrc: added "secureprotocol" example 8043 * doc/wget.texi (HTTPS (SSL/TLS) Options): Document PFS. 8044 80452013-09-04 Darshit Shah <darnir@gmail.com> 8046 8047 * testenv/Test-c-full.py: Test Continue options 8048 * testenv/Makefile.am: Add Test-c-full.py and Test-O 8049 80502013-09-03 Tim Ruehsen <tim.ruehsen@gmx.de> 8051 8052 * src/main.c: Add new value 'PFS' to --secure-protocol to 8053 enforce the so-called Perfect Forward Security. 8054 * src/init.c (cmd_spec_secure_protocol): added secure_protocol_pfs 8055 * src/openssl.c, gnutls.c, options.h: likewise 8056 80572013-09-02 Darshit Shah <darnir@gmail.com> 8058 8059 * testenv/Makefile.am: Add new Test 8060 * testenv/Test-Head.py: New Test to ensure HEAD requests are handled correctly 8061 80622013-08-31 Darshit Shah <darnir@gmail.com> 8063 8064 * testenv/WgetTest.py: Remove import module defaultdict. 8065 (CommonMethods.get_server_rules): server_rules should be a dict, not a 8066 defaultdict (list). 8067 * testenv/HTTPServer.py (WgetHTTPRequestHandler.get_rule_list): If rule does 8068 not exist, return None. Not an emppty list. 8069 (WgetHTTPRequestHandler.test_cookies): Rule variable is not a list. 8070 (__Handler.send_cust_headers): Same. 8071 (__Handler.custom_response): Same. 8072 (__Handler.is_authorized): Same. 8073 (__Handler.expect_headers): Same. 8074 (__Handler.reject_headers): Same. 8075 80762013-08-31 Darshit Shah <darnir@gmail.com> 8077 8078 * testenv/README: Explain that TEST_NAME needs to be unique 8079 * testenv/Test-auth-no-challenge.py: Edit non-unique TEST_NAME 8080 80812013-08-31 Darshit Shah <darnir@gmail.com> 8082 8083 * testenv/README: (newfile) Simple help / instructions about using the Test 8084 Environment. 8085 * testenv/Makefile.am: (newfile) Makefile for the Test Environment. Uses the 8086 Automake Parallel Test Harness 8087 * testenv/WgetTest.py: (newfile) Base module that executes the Test. 8088 * testenv/HTTPServer.py: (newfile) Contains the custom HTTP Server for the 8089 Test Environment. Creates an instance of http.server in Python3. 8090 * testenv/FTPServer.py: (newfile) Overrides methods from pyftpdlib for use in 8091 the Test Environment. ** Work under progress **. 8092 * testenv/ColourTerm.py: (newfile) A custom module to output coloured text to 8093 the terminal. Known to work on POSIX shells. 8094 * testenv/Test-Proto.py: (newfile) A prototype Test File. This should be 8095 copied when writing a new Test Case. 8096 * testenv/Test-Content-disposition-2.py: Test Content Disposition clobbering 8097 * testenv/Test-Content-disposition.py: Test Content Disposition Headers 8098 * testenv/Test-O.py: Test Output filename command 8099 * testenv/Test-auth-basic-fail.py: Test returncode on auth failure 8100 * testenv/Test-auth-basic.py: Test Basic Auth negotiation 8101 * testenv/Test-auth-both.py: Test handling of Multiple auth providers. This 8102 test currently fails. 8103 * testenv/Test-auth-digest.py: Test Digest Auth Negotiation 8104 * testenv/Test-auth-no-challenge-url.py: Ensure --auth-no-challenge is handled 8105 when auth details are in-URL. 8106 * testenv/Test-auth-no-challenge.py: Ensure --auth-no-challenge is honoured 8107 * testenv/Test-auth-retcode.py: Ensure correct return code after 403 Forbidden 8108 response. 81092013-08-31 Darshit Shah <darnir@gmail.com> 8110 8111 * testenv/HTTPTest.py (ServerError): Define new Exception for handling 8112 internal control flow. 8113 (StoppableHTTPServer.SendHeader): Simply pass. Do nothing. Adding 8114 functionality here seems to crash for no apparent reason. 8115 (stoppableHTTPServer.send_cust_headers): Minor optimization. No need 8116 for extra variable. 8117 (__Handler.Response): Handle explicit Response Code Rules 8118 (__Handler.Authentication): Handle Authentication rules 8119 (__Handler.handle_auth): Actual worker method for authentication 8120 (__Handler.ExpectHeader): Ensure Expected Headers are received 8121 (__Handler.RejectHeader): Ensure Blacklisted Headers are NOT received 8122 (__Handler.send_HEAD): Dynamically call server rule functions based on 8123 the self.rules list. This feature will later be added to POST/PUT, etc 8124 81252013-08-31 Darshit Shah <darnir@gmail.com> 8126 8127 * configure.ac: Add testenv/Makefile to AC_CONFIG_FILES. 8128 * Makefile.am: Add testenv to SUBDIRS 8129 81302013-08-23 Tim Ruehsen <tim.ruehsen@gmx.de> 8131 8132 * doc/sample.wgetrc: added "httpsonly" example 8133 81342013-08-22 Tim Ruehsen <tim.ruehsen@gmx.de> 8135 8136 * tests/Makefile.am (EXTRA_DIST): Add Test--httpsonly-r.px. 8137 * tests/run-px (tests): Likewise. 8138 * tests/Test--httpsonly-r.px: New file. 8139 81402013-08-22 Tim Ruehsen <tim.ruehsen@gmx.de> 8141 8142 * src/main.c: Add new option --https-only. 8143 * src/options.h: Likewise. 8144 * src/recur.c (download_child_p): add check for HTTPS. 8145 81462013-08-22 Tim Ruehsen <tim.ruehsen@gmx.de> 8147 8148 * doc/wget.texi: added description for --https-only 8149 81502013-08-13 Hrvoje Niksic <hniksic@xemacs.org> 8151 8152 * doc/wget.texi (Download Options): Fix misspelling. 8153 81542013-08-09 Tim Ruehsen <tim.ruehsen@gmx.de> 8155 8156 * src/gnutls.c (ssl_init): Prevent CA files from being loaded twice 8157 if possible. 8158 * src/gnutls.c (ssl_check_certificate): Added some error messages 8159 * src/gnutls.c: Fixed some compiler warnings 8160 81612013-08-08 Will Dietz <w@wdtz.org> (tiny change): 8162 8163 * src/main.c (format_and_print_line): Wrap correctly long tokens. 8164 81652013-07-23 Tim Ruehsen <tim.ruehsen@gmx.de> 8166 8167 * configure.ac: Remove AM_CONDITIONAL HAVE_NETTLE. 8168 Reported by: Darshit Shah <darnir@gmail.com>. 8169 81702013-07-16 Darshit Shah <darnir@gmail.com> 8171 8172 * src/wget.h (err_t): Added new errors, ATTRMISSING and UNKNOWNATTR to 8173 handle missing attributes and Unknown attribute values respectively in 8174 HTTP Headers. 8175 * src/exits.c (get_status_for_err): ATTRMISSING is a Protocol Error while 8176 UNKNOWNATTR is a general error, presumably because of a feature that 8177 is not yet implemented. 8178 * src/http.c (gethttp): Call create_authorization_line () separately. In 8179 case the auth_err flag has been set with an error, handle it and exit. 8180 * src/http.c (create_authorization_line): Pass a pointer, auth_err to set 8181 the flag for different kinds of errors encountered. 8182 * src/http.c (http_loop): Handle the errors raised by the authentication 8183 handlers. 8184 * src/http.c (digest_authentication_encode): Pass pointer auth_err to set 8185 the error flags. 8186 Set qop to NULL in case the value of the qop / algorithm attribute is 8187 unknown to Wget. Set an appropriate error too. 8188 81892013-07-13 Tim Ruehsen <tim.ruehsen@gmx.de> 8190 8191 * src/http.c (digest_authentication_encode): Fix a crash when the algorithm 8192 is not specified in the server response. Free dynamic memory used by 8193 the function when the function exits. 8194 * src/http-ntlm.c [HAVE_NETTLE]: Include <nettle/md4.h> and <nettle/des.h>. 8195 (setup_des_key) [HAVE_NETTLE]: New function to deal with 8196 libnettle. 8197 (calc_resp) [HAVE_NETTLE]: Add support for libnettle. 8198 (mkhash) [HAVE_NETTLE]: Likewise. 8199 Reported by: Tim Ruehsen <tim.ruehsen@gmx.de>. 8200 82012013-07-13 Tim Ruehsen <tim.ruehsen@gmx.de> 8202 8203 * configure.ac: check for libnettle when GNU TLS is used. 8204 82052013-07-13 Steven M. Schweda <sms@antinode.info> 8206 8207 * src/warc.c (warc_tempfile): Fix a portability issue on VMS. 8208 82092013-07-12 Giuseppe Scrivano <gscrivano@gnu.org> 8210 8211 * src/http.c (digest_authentication_encode): Set default value of 8212 `algorithm' to "MD5". Check if `qop' is not-NULL before access it. 8213 82142013-07-11 Tomas Hozza <thozza@redhat.com> 8215 8216 * src/ftp.c (ftp_loop): Use ftp_retrieve_glob() also in case 8217 --preserve-permissions was specified. 8218 82192013-07-11 Tomas Hozza <thozza@redhat.com> 8220 8221 * doc/wget.texi: Document --regex-type and --preserve-permissions. 8222 82232013-07-11 Tim Ruehsen <tim.ruehsen@gmx.de> 8224 8225 * src/gnutls.c (ssl_connect_wget): respect connect timeout. 8226 82272013-07-11 Karsten Hopp <karsten@redhat.com> 8228 8229 * src/openssl.c (struct openssl_read_args, struct scwt_context): New struct. 8230 (openssl_read, ssl_connect_with_timeout_callback): New function. 8231 (ssl_connect_wget): respect connect timeout. 8232 82332013-07-10 Giuseppe Scrivano <gscrivano@gnu.org> 8234 8235 * src/http.c (read_response_body) [ALLOW_CLOBBER]: Move definition to.. 8236 * src/options.h (struct options): Make `backups' an int. 8237 * src/url.h [ALLOW_CLOBBER]: .. Here. Do not clobber when backups are used. 8238 * src/url.c (url_file_name): Use the ALLOW_CLOBBER macro instead of 8239 repeating the code. 8240 82412013-07-09 Giuseppe Scrivano <gscrivano@gnu.org> 8242 8243 * doc/wget.texi (Download Options): Add documentation for --backups. 8244 (Wgetrc Commands): Add documentation for backups. 8245 Reported by: Tomas Hozza <thozza@redhat.com>. 8246 82472013-07-08 Steven M. Schweda <sms@antinode.info> 8248 8249 * src/retr.c (rotate_backups): Support for VMS files. 8250 82512013-06-26 Darshit Shah <darnir@gmail.com> 8252 8253 * src/http.c (gethttp): Reverse change by commit 90896 that prevented 8254 downloading response body data to non-GET Request methods. 8255 82562013-06-22 Ángel González <keisial@gmail.com> 8257 8258 * src/init.c (cmd_string_uppercase): Rewrite function. 8259 82602013-06-19 Ciprian Vieru <devel.php@gmail.com> (tiny change) 8261 8262 * src/html-url.c: Define TAG_TD, TAG_TH, TAG_VIDEO, TAG_AUDIO, TAG_SOURCE. 8263 (tag_url_attributes, known_tags): Likewise. 8264 82652013-06-19 Tim Ruehsen <tim.ruehsen@gmx.de> 8266 8267 * src/connect.c (socket_ip_address): zero out ip address structure to 8268 avoid access to uninitialized values by inet_ntop(). 8269 * src/ftp.c (ftp_loop_internal): fix segfault caused by warc_tmp NULL pointer. 8270 82712013-06-17 Dave Reisner <dreisner@archlinux.org> (tiny change) 8272 8273 * doc/texi2pod.pl: Fix formatting error that causes build to fail with 8274 Perl 5.18 8275 82762013-06-17 Darshit Shah <darnir@gmail.com> 8277 8278 * doc/wget.texi (POST): Explain the new redirection rules. 8279 * doc/wget.texi (Other HTTP Methods): Same. 8280 * doc/wget.texi (body-data): Fix typo in description. 8281 82822013-06-13 Darshit Shah <darnir@gmail.com> 8283 8284 * src/http.c (gethttp): Follow RFC 2616 and httpbis specifications when 8285 handling redirections. Do not suspend the method on 301/302 redirects. 8286 (gethttp): If method if not GET, we do not intend to download 8287 anything. 8288 * src/main.c (main): Set spider mode when opt.method is HEAD. This will 8289 prevent Wget from downloading any file. 8290 * src/retr.c (SUSPEND_METHOD): Rename macro SUSPEND_POST_DATA to 8291 SUSPEND_METHOD to more accurately reflect its use. Similarly rename 8292 related variables. 8293 82942013-05-21 Ray Satiro <raysatiro@yahoo.com> 8295 8296 * src/url.c (url_file_name): Use MAX_PATH in Windows. 8297 82982013-05-17 Bykov Aleksey <gnfalex@rambler.ru> 8299 8300 * bootstrap: Add `mkostemp' 8301 83022013-05-14 Bykov Aleksey <gnfalex@rambler.ru> 8303 8304 * src/warc.c (warc_tempfile): For fix "Could not open temporary WARC manifest 8305 file." issue in Win system force to use `mkostemp(filename, O_TEMPORARY)' 8306 instead of `mkstemp(filename)'. Thank to Angel Gonzalez for help. 8307 83082013-05-14 Tim Ruehsen <tim.ruehsen@gmx.de> 8309 8310 * src/cookies.c (cookie_jar_load): Replaced read_whole_file() by getline(). 8311 * src/init.c (run_wgetrc): Likewise. 8312 * src/netrc.c (parse_netrc): Likewise. 8313 * src/utils.c: Likewise. 8314 * src/ftp.c (getftp): Likewise. 8315 * src/ftp-ls.c (ftp_parse_unix_ls, ftp_parse_winnt_ls, ftp_parse_vms_ls): Likewise. 8316 * src/ftp-ls.c (clean_line): Accept the string length as parameter. 8317 * src/ftp-ls.c: Replaced indent tabs by spaces. 8318 * src/ftp.c: Likewise. 8319 * src/utils.c: Removed read_whole_file() definition. 8320 * src/netrc.c: Removed read_whole_file() definition for STANDALONE. 8321 * src/utils.h: Removed read_whole_file() declaration. 8322 83232013-05-10 Darshit Shah <darnir@gmail.com> (tiny change) 8324 8325 * doc/wget.texi (No of tries): Fix typo to make it clear that --tries 8326 option sets number of tries not retries. 8327 Reported by: Hauke Hoffman <haukebjoernhoffman@googlemail.com> 8328 83292013-05-09 Tim Ruehsen <tim.ruehsen@gmx.de> 8330 8331 * src/utils.c (acceptable): use standard string functions instead of 8332 self-written code. 8333 (match_tail): Likewise. 8334 (suffix): Likewise. 8335 (has_wildcards_p): Likewise. 8336 (test_subdir_p): Fix some warnings. 8337 (test_dir_matches_p): Likewise. 8338 83392013-05-05 mancha <mancha1@hush.com> (tiny change) 8340 8341 * src/gnutls.c (ssl_connect_wget): Don't abort on non-fatal alerts 8342 received during handshake. For example, when connecting to servers 8343 using TSL-SNI that send warning-level unrecognized_name alerts. 8344 83452013-05-04 Darshit Shah <darnir@gmail.com> 8346 8347 * src/init.c (cmd_string_uppercase): Fix issue that cased invalid headers 8348 when converting to uppercase. 8349 83502013-05-01 Giuseppe Scrivano <gscrivano@gnu.org> 8351 8352 * src/init.c: Declare `cmd_string_uppercase'. 8353 (commands): Now `method' uses cmd_string_uppercase. 8354 (cmd_string_uppercase): New method 8355 * src/http.c (gethttp): Do not transform opt.method to uppercase. 8356 Reported by: Stefano Lattarini <stefano.lattarini@gmail.com> 8357 83582013-05-01 Gijs van Tulder <gvtulder@gmail.com> 8359 8360 * src/retr.c (retrieve_url): New variable `saved_method'. 8361 (SUSPEND_POST_DATA): Save the method to `saved_method'. 8362 (RESTORE_POST_DATA): Restore the method from `saved_method'. 8363 83642013-04-28 Giuseppe Scrivano <gscrivano@gnu.org> 8365 8366 * doc/wget.texi (Types of Files...): Document --accept-regex, 8367 --reject-regex. 8368 Reported by: Tomas Hozza <thozza@redhat.com>. 8369 83702013-04-26 Tomas Hozza <thozza@redhat.com> (tiny change) 8371 8372 * src/log.c (redirect_output): Use DEFAULT_LOGFILE in diagnostic message 8373 when `logfile' is NULL. 8374 * src/utils.c (unique_create): Ensure `logfile' has always a value. 8375 83762013-04-24 Darshit Shah <darnir@gmail.com> 8377 8378 * src/http.c (gethttp): Remove check for opt.post_data and 8379 opt.post_file_name. 8380 * src/main.c (main): Change location in code where --post-data and 8381 --post-file options are converted to --body-data --body-file. 8382 83832013-04-21 Gijs van Tulder <gvtulder@gmail.com> 8384 8385 * src/http.c: Copy opt.body_data to the WARC file, instead of 8386 opt.post_data (the old option). 8387 83882013-04-14 Giuseppe Scrivano <gscrivano@gnu.org> 8389 8390 * doc/wget.texi (Download Options): Document "mega" dot style. 8391 83922013-04-12 Gijs van Tulder <gvtulder@gmail.com> 8393 8394 * src/warc.c: Generate unique UUIDs for the manifest and the record 8395 holding the command-line arguments. 8396 Write the manifest to a "metadata" record to follow the WARC 8397 implementation guidelines. 8398 * src/warc.h: Declare new function warc_write_metadata_record. 8399 84002013-04-05 Darshit Shah <darnir@gmail.com> 8401 8402 * doc/doc/wget.texi: Fix ambiguous wording in --post-data section. Make it 8403 clear that wget does not check for the format of the post-data. 8404 * doc/doc/wget.texi: Add documentation for --method, --body-data and 8405 --body-file. 8406 84072013-03-31 Gijs van Tulder <gvtulder@gmail.com> 8408 8409 * src/warc.c: Correctly write the field length in the skip length field 8410 of .warc.gz files. (Following the GZIP spec in RFC 1952.) 8411 84122013-03-20 Tomas Hozza <thozza@redhat.com> 8413 8414 * src/http.c (gethttp): Set "sock" to -1 if it's not and we have no 8415 persistent connection 8416 84172013-03-15 Darshit Shah <darnir@gmail.com> 8418 8419 * src/http.c (post_file): Rename function to body_file_send to more 8420 accurately reflect its use. 8421 * src/http.c (gethttp): Add support for --method, --body-data and 8422 --body-file 8423 * src/init.c (commands): Same. 8424 * src/options.h (options): Same. 8425 * src/main.c (option_data): Same. 8426 * src/main.c (print_help): Add --method command. 8427 * src/main.c (main): Make old --post-{data,file} commands aliases to 8428 --method. 8429 Add sanity checks for --method, --body-data and --body-file. 8430 * src/retr.c (SUSPEND_POST_DATA): Edit Macro Definition to use body_data. 8431 * src/retr.c (RESTORE_POST_DATA): Same. 8432 84332013-03-12 Darshit Shah <darnir@gmail.com> 8434 8435 * tests/Makefile.am (EXTRA_DIST): Add Test--post-file.px. 8436 * tests/run-px (tests): Likewise. 8437 * tests/Test--post-file.px: New file. 8438 84392013-03-12 Darshit Shah <darnir@gmail.com> 8440 8441 * src/http.c (gethttp): Make wget return FILEBADFILE error and abort if 8442 post-file does not exist. 8443 8444 * src/http.c (http_loop): Handle FILEBADFILE as a valid err. 8445 8446 * src/exits.c (get_status_for_err): Mark FILEBADFILE as an IO error. 8447 84482013-02-15 Darshit Shah <darnir@gmail.com> 8449 8450 * src/cookies.c (cookie_handle_set_cookie): Set cookie->discard_requested 8451 to true on domain mismatch. 8452 84532013-01-30 Pavel Mateja <pavel@netsafe.cz> (tiny change) 8454 8455 * src/http.c (gethttp): Specify "Host" for CONNECT method. 8456 84572012-12-20 Tim Ruehsen <tim.ruehsen@gmx.de> 8458 8459 * src/gnutls.c (ssl_connect_wget): added +VERS-SSL3.0 to fix 8460 --secure-protocol=SSLv2/SSLv3. 8461 84622012-12-09 Giuseppe Scrivano <gscrivano@gnu.org> 8463 8464 * src/main.c (main): Keep looking for "config" until there are 8465 arguments to parse. 8466 Reported by: Adrien Dumont <adr.dum@hotmail.fr> 8467 8468 * src/test.c: Include "wget.h". 8469 84702012-12-08 Michael Stapelberg <michael@stapelberg.de> (tiny change) 8471 8472 * src/retr.c (retrieve_url): Set iri->orig_url to NULL after it is 8473 freed. 8474 84752012-11-26 Giuseppe Scrivano <gscrivano@gnu.org> 8476 8477 * src/wget.h (MAX_INT_TO_STRING_LEN): Define macro. 8478 * src/warc.c (warc_write_block_from_file): Use `MAX_INT_TO_STRING_LEN' 8479 to find the buffer size. 8480 (warc_write_cdx_record): Likewise. 8481 84822012-11-24 Giuseppe Scrivano <gscrivano@gnu.org> 8483 8484 * src/warc.c (warc_write_block_from_file): Use `number_to_string' to 8485 convert the content-length to a string. 8486 84872012-11-24 Gijs van Tulder <gvtulder@gmail.com> 8488 8489 * src/warc.c (warc_write_cdx_record): Use `number_to_string' to 8490 convert the offset to a string. 8491 84922012-11-15 Giuseppe Scrivano <gscrivano@gnu.org> 8493 8494 * src/retr.c (write_data): Fix comment. 8495 84962012-11-14 Ángel González <keisial@gmail.com> 8497 8498 * src/warc.c (warc_sha1_stream_with_payload): Fix compilation under 8499 gcc -std=c89. 8500 85012012-11-13 Giuseppe Scrivano <gscrivano@gnu.org> 8502 8503 * src/retr.c (fd_read_body): Correctly check the return code from 8504 write_data. 8505 Reported by: Torsten Scheck <torsten.scheck@gmx.de> 8506 85072012-11-09 Tim Ruehsen <tim.ruehsen@gmx.de> 8508 8509 * tests/HTTPServer.pm: added check for must-not-match request-header 8510 * tests/Test-cookies.px: check cookie deletion and cookie domain matching 8511 85122012-10-08 Stefano Lattarini <stefano.lattarini@gmail.com> (tiny change) 8513 8514 docs: fix errors and warnings with Texinfo 5 8515 Or rather, with the development version 4.13.90, which will 8516 eventually become Texinfo 5.0. 8517 * doc/wget.texi: Use '@item' instead of '@itemx' in several places, 8518 as Texinfo 5 refuses to process an '@itemx' that is not preceded 8519 by an '@item'. 8520 85212012-10-07 Tim Ruehsen <tim.ruehsen@gmx.de> 8522 Giuseppe Scrivano <gscrivano@gnu.org> 8523 8524 * src/utils.c (get_max_length): If `pathconf' is not available 8525 fallback to PATH_MAX. 8526 85272012-10-07 Ray Satiro <raysatiro@yahoo.com> 8528 8529 * src/url.c: Change the functions of a growable string object to null 8530 terminate the string. 8531 * src/url.c (append_null): New function to null terminate a growable 8532 string object. 8533 * src/url.c (shorten_length): New function to shorten the length of a 8534 growable string object. 8535 85362012-10-07 Giuseppe Scrivano <gscrivano@gnu.org> 8537 8538 * configure.ac: Check for patchconf. 8539 85402012-10-06 Giuseppe Scrivano <gscrivano@gnu.org> 8541 8542 * src/http.c (http_loop): Send a HEAD request when -c and 8543 --content-disposition are used together. 8544 85452012-10-03 Merinov Nikolay <kim.roader@gmail.com> 8546 8547 * src/ftp.c (ftp_loop_internal): Ignore --no-clobber option when 8548 receiving directory listing. 8549 85502012-09-29 Merinov Nikolay <kim.roader@gmail.com> 8551 8552 * src/ftp-ls.c (ftp_parse_winnt_ls): Support filename extracting with 8553 new listing format. 8554 85552012-09-29 Tim Ruehsen <tim.ruehsen@gmx.de> 8556 8557 * src/url.h (CHOMP_BUFFER): Add definition. 8558 * src/url.c (url_file_name): New local variables `fname_len_check' and 8559 `max_length'. Check that the length of the file name is acceptable. 8560 * src/utils.h (get_max_length): Declare function. 8561 * src/utils.c (get_max_length): New function. 8562 85632012-09-28 Steven Schubiger <stsc@member.fsf.org> 8564 8565 * src/src/recur.c (retrieve_tree): Combine duplicated code. 8566 85672012-09-23 Merinov Nikolay <kim.roader@gmail.com> 8568 8569 * m4/wget.m4 (WGET_FNMATCH): Add AC_LANG_SOURCE into 8570 AC_COMPILE_IFELSE in order to silence autoconf 2.68 warning. 8571 85722012-09-20 Giuseppe Scrivano <gscrivano@gnu.org> 8573 8574 * bootstrap: Update from gnulib. 8575 85762012-09-03 Tim Ruehsen <tim.ruehsen@gmx.de> 8577 8578 * src/http.c (digest_authentication_encode): Add support for RFC 2617 8579 MD5-sess authentication algorithm. 8580 Feature request and testing by: Avinash <pavinash@gmail.com> 8581 85822012-09-02 Nguyễn Thái Ngọc Duy <pclouds@gmail.com> (tiny change) 8583 8584 * src/src/main.c (main): mark more strings for translation. 8585 * src/src/mswindows.c (fork_to_background): Likewise. 8586 * src/src/recur.c (download_child_p): Likewise. 8587 85882012-09-02 Nguyễn Thái Ngọc Duy <pclouds@gmail.com> (tiny change) 8589 8590 * po/POTFILES.in: Add more files. 8591 85922012-08-29 Rohit Mathulla <rohit_mathulla@yahoo.com> (tiny change) 8593 8594 * src/html-url.c (get_urls_file): Convert shorthand URLs. 8595 85962012-08-28 Tim Ruehsen <tim.ruehsen@gmx.de> 8597 8598 * doc/wget.texi: remove -nv from --report-speed 8599 86002012-08-28 Tim Ruehsen <tim.ruehsen@gmx.de> 8601 8602 * src/gnutls.c (ssl_check_certificate): deinit gnutls_x509_crt_t. 8603 * src/gnutls.c (ssl_init): don't error if CA directory is empty. 8604 86052012-08-25 Hrvoje Niksic <hniksic@gmail.com> 8606 8607 * src/warc.c (warc_find_duplicate_cdx_record): Use hash_table_get 8608 instead of hash_table_get_pair. 8609 86102012-08-21 <y-iida@secom.co.jp> (tiny change) 8611 8612 * src/connect.c (connect_to_ip) [ENABLE_IPV6]: Attempt to use IPv6. 8613 * src/http.c (gethttp): Likewise. 8614 86152012-08-04 mancha <mancha@mac.hush.com> (tiny change) 8616 8617 * doc/wget.texi: Export ENVIRONMENT to the man page. 8618 86192012-07-08 Steven Schubiger <stsc@member.fsf.org> 8620 8621 * src/exits.h: Fix comment. 8622 * src/exits.c: Likewise. 8623 86242012-07-08 Giuseppe Scrivano <gscrivano@gnu.org> 8625 8626 * bootstrap: Update from gnulib. 8627 * bootstrap.conf (gnulib_extra_files): Remove $build_aux/missing. 8628 * lib/Makefile.am: Delete file. 8629 86302012-07-07 Tim Ruehsen <tim.ruehsen@gmx.de> 8631 8632 (digest_authentication_encode): Add support for RFC 2617 Digest 8633 Access Authentication. 8634 86352012-07-07 Giuseppe Scrivano <gscrivano@gnu.org> 8636 8637 * src/http.c (http_loop): Fix log message. 8638 * src/main.c (main): Likewise. 8639 Reported by: Petr Pisar <petr.pisar@atlas.cz> 8640 86412012-07-07 Giuseppe Scrivano <gscrivano@gnu.org> 8642 8643 * src/html-url.c (cleanup_html_url): Remove "static" modifier. 8644 * src/init.c (cleanup_html_url): Likewise. 8645 Reported by: Mike Frysinger <vapier@gentoo.org>. 8646 86472012-07-03 Steven Schubiger <stsc@member.fsf.org> 8648 8649 * src/init.c: Include warc.h for warc_close in cleanup function. 8650 86512012-06-17 Giuseppe Scrivano <gscrivano@gnu.org> 8652 8653 * src/wget.h: Define `CLOSEFAILED'. 8654 * src/init.c: Include "exits.h". 8655 (cleanup): Check `fclose' failure. 8656 * src/exits.c (get_status_for_err): Handle `CLOSEFAILED'. 8657 86582012-06-16 Giuseppe Scrivano <gscrivano@gnu.org> 8659 8660 * tests/Makefile.am (EXTRA_DIST): Add Test-stdouterr.px. 8661 * tests/run-px (tests): Likewise. 8662 * tests/Test-stdouterr.px: New file. 8663 86642012-06-16 Giuseppe Scrivano <gscrivano@gnu.org> 8665 8666 * src/main.c (main): Move some cleanup related function to... 8667 * src/init.c (cleanup): ...here. 8668 8669 * src/main.c: Do not include "stdout.h". 8670 (main): Do not register `close_stdout' at exit. 8671 Reported by: Micah Cowan <micah@cowan.name>. 8672 86732012-06-16 Giuseppe Scrivano <gscrivano@gnu.org> 8674 8675 * bootstrap.conf (gnulib_modules): Remove `closeout'. 8676 Reported by: Micah Cowan <micah@cowan.name>. 8677 86782012-06-09 Giuseppe Scrivano <gscrivano@gnu.org> 8679 8680 * src/main.c (print_help): Move --report-speed under the section 8681 "Logging and input file". 8682 86832012-06-09 Giuseppe Scrivano <gscrivano@gnu.org> 8684 8685 * doc/wget.texi (Logging and Input File Options): Document "--report-speed". 8686 (HTTPS (SSL/TLS) Options): Document WARC. 8687 8688 * doc/texi2pod.pl: Revert change from 2011-08-06. 8689 86902012-06-06 Giuseppe Scrivano <gscrivano@gnu.org> 8691 8692 * src/main.c (print_help): Rename --bits to --report-bps. 8693 (cmdline_options): Likewise. 8694 * src/init.c (commands): Rename --report-bps to --report-speed. 8695 (cmd_spec_report_speed): New function. 8696 8697 * src/options.h (struct options): Rename `bits_fmt' to `report_bps'. 8698 * src/main.c (print_help): Rename --bits to --report-bps. 8699 (cmdline_options): Likewise. 8700 * src/init.c (commands): Likewise 8701 8702 * src/progress.c (create_image): Adjust caller. 8703 * src/retr.c (retr_rate): Likewise. 8704 * src/utils.c (convert_to_bits): Likewise. 8705 87062012-06-04 Tim Ruehsen <tim.ruehsen@gmx.de> 8707 8708 * src/main.c (main): Check for filename != NULL. 8709 * src/warc.c (warc_process_cdx_line): Fix memory leak. 8710 * src/utils.c (match_posix_regex, compile_posix_regex): Remove dead assignment. 8711 * src/openssl.c (ssl_init): Fix old-style function definition. 8712 87132012-06-02 Giuseppe Scrivano <gscrivano@gnu.org> 8714 8715 * src/connect.c: Include <sys/socket.h> and <sys/select.h>. 8716 87172012-05-31 Ángel González <keisial@gmail.com> 8718 8719 * convert.c: fix segfault on wrong urls (bug 36570) 8720 87212012-05-30 Gijs van Tulder <gvtulder@gmail.com> 8722 8723 * src/warc.c: Fix segfault if CDX record is not found. 8724 87252012-05-26 Mike Frysinger <vapier@gentoo.org> 8726 8727 * src/warc.c: Change type of `warc_current_gzfile' to gzFile. 8728 87292012-05-26 Giuseppe Scrivano <gscrivano@gnu.org> 8730 8731 * src/warc.c (warc_load_cdx_dedup_file): Change type of `line_length' to 8732 ssize_t. 8733 Suggested by: Ángel González <keisial@gmail.com> 8734 87352012-05-19 illusionoflife <illusion.of.life92@gmail.com> (tiny change) 8736 8737 * src/convert.c (register_html,register_css): Fixed functions signature to 8738 not accept unused argument 8739 * src/retr.c (retrieve_url): Changed register_{css,html} usage according 8740 new signature. 8741 87422012-05-18 Tim Ruehsen <tim.ruehsen@gmx.de> 8743 8744 * src/gnutls.c (wgnutls_poll): Honor the specified `timeout' value. 8745 (wgnutls_peek): Likewise. 8746 87472012-05-16 Giuseppe Scrivano <gscrivano@gnu.org> 8748 8749 * src/warc.h: Cut length lines to 80 columns. 8750 * src/warc.c: Likewise. 8751 87522012-05-14 Tim Ruehsen <tim.ruehsen@gmx.de> 8753 8754 * src/gnutls.c (wgnutls_read_timeout): removed warnings, moved fcntl stuff 8755 outside loop. 8756 8757 * src/hash.h (hash_table_put): Make argument "value" const. 8758 * src/hash.c (hash_table_put): Make argument value const. Cast `value' to 8759 void. 8760 * src/http.c (request_set_header): Make argument `name' const. Cast `value' 8761 and `name' to void*. 8762 (request_remove_header): Make argument `name' const. 8763 * src/url.c (url_file_name): Make `index_filename' static. 8764 * src/warc.h (warc_write_cdx_record): Make `url', `timestamp', `mime_type', 8765 `payload_digest', `redirect_location', `warc_filename', response_uuid' 8766 arguments const. Make `checksum' const. 8767 * src/warc.c (warc_write_date_header): Make the `timestamp' argument const. 8768 Make `extension' const. 8769 (warc_write_cdx_record): Make `url', `timestamp', `mime_type', 8770 `payload_digest', `redirect_location', `warc_filename', response_uuid' 8771 arguments const. Make `checksum' const. 8772 87732012-05-13 Tim Ruehsen <tim.ruehsen@gmx.de> 8774 8775 * src/gnutls.c (credentials): Change type to 8776 gnutls_certificate_credentials_t. 8777 (ssl_init): Do not use deprecated types. 8778 (ssl_connect_wget): Likewise. 8779 87802012-05-13 Giuseppe Scrivano <gscrivano@gnu.org> 8781 8782 * doc/wget.texi (Types of Files): Document --accept-regex and 8783 --reject-regex. 8784 87852012-05-13 Giuseppe Scrivano <gscrivano@gnu.org> 8786 8787 * bootstrap.conf (gnulib_modules): Add `git-version-gen'. 8788 * build-aux/bzr-version-gen: Remove file. 8789 * configure.ac: Invoke `build-aux/git-version-gen' to get the dist 8790 version. 8791 * Makefile.am (EXTRA_DIST): Distribute build-aux/git-version-gen instead 8792 of build-aux/bzr-version-gen. 8793 87942012-04-22 Tim Ruehsen <tim.ruehsen@gmx.de> 8795 8796 * src/main.c (main): Dynamically allocate `opt.progress_type'. 8797 87982012-04-21 Tim Ruehsen <tim.ruehsen@gmx.de> 8799 8800 * src/ftp-basic.c (ftp_pasv): Fix memory leak. 8801 8802 * src/http.c (gethttp): Fix memory leak. 8803 8804 * src/ftp.c (getftp): Silent compiler warning. 8805 88062012-04-13 Tim Ruehsen <tim.ruehsen@gmx.de> (tiny change) 8807 8808 * src/warc.c (warc_load_cdx_dedup_file): Fix a memory leak by freeing 8809 `lineptr'. 8810 88112012-04-11 Gijs van Tulder <gvtulder@gmail.com> 8812 8813 * src/init.c: Add --accept-regex, --reject-regex and --regex-type. 8814 * src/main.c: Likewise. 8815 * src/options.c: Likewise. 8816 * src/recur.c: Likewise. 8817 * src/utils.c: Add regex-related functions. 8818 * src/utils.h: Add regex-related functions. 8819 88202012-04-11 Gijs van Tulder <gvtulder@gmail.com> 8821 8822 * bootstrap.conf (gnulib_modules): Include module `regex'. 8823 * configure.ac: Check for PCRE library. 8824 88252012-04-07 Daniel Kahn Gillmor <dkg@fifthhorseman.net> (tiny change) 8826 8827 * src/gnutls.c (key_type_to_gnutls_type): New function. 8828 (ssl_init): Use correctly the specified gnutls certificate. 8829 88302012-04-01 Giuseppe Scrivano <gscrivano@gnu.org> 8831 8832 * src/gnutls.c (wgnutls_read_timeout): Ensure timer is freed. 8833 8834 * src/gnutls.c (wgnutls_read_timeout): Do not use timer if it is not 8835 allocated. 8836 Reported by: Xu Zhongxing <xu_zhong_xing@163.com> 8837 88382012-04-01 Gijs van Tulder <gvtulder@gmail.com> 8839 8840 * src/html-url.c: Prevent crash on incomplete STYLE tag. 8841 88422012-03-30 Tim Ruehsen <tim.ruehsen@gmx.de> (tiny change) 8843 8844 * src/warc.c: make warc_uuid_str() implementation depend on HAVE_LIBUUID. 8845 88462012-03-30 Tim Ruehsen <tim.ruehsen@gmx.de> 8847 8848 * src/url.c: Use empty query in local filenames. 8849 88502012-03-30 Tim Ruehsen <tim.ruehsen@gmx.de> 8851 8852 * src/convert.c (convert_links_in_hashtable): Mmake it static. 8853 * src/cookies.c (parse_set_cookie): Remove empty else branches. 8854 * src/css-url.c: Include "css-url.h". 8855 (get_uri_string): Make it static. 8856 * src/css-url.h (get_urls_css): Add protoype. 8857 * src/gnutls.c (ssl_init): Add prototype. 8858 * src/html-parse.c (tagstack_push): Make it static. 8859 * src/html-parse.c (tagstack_pop): Make it static. 8860 * src/html-parse.c (tagstack_find): Make it static. 8861 * src/html-url.c (cleanup_html_url): Make it static. 8862 * src/progress.c (count_cols): Make it static. 8863 * src/progress.c (get_eta): Make it static. 8864 * src/retr.h (convert_to_bits): Remove prototype. 8865 * src/util.h (convert_to_bits): Add prototype. 8866 * src/spider.c (spider_cleanup): Make it static. 8867 * src/warc.c (warc_write_start_record): Add prototype. 8868 * src/warc.c (warc_write_end_record): Add prototype. 8869 * src/warc.c (warc_start_cdx_file): Add prototype. 8870 * src/warc.c (warc_init): Add prototype. 8871 * src/warc.c (warc_load_cdx_dedup_file): Add prototype. 8872 * src/warc.c (warc_write_metadata): Add prototype. 8873 * src/warc.c (warc_close): Add prototype. 8874 * src/warc.c (warc_tempfile): Add prototype. 8875 * src/warc.c (warc_write_warcinfo_record): Make it static. 8876 * src/warc.c (warc_load_cdx_dedup_file): Make it static. 8877 * src/warc.c (warc_write_metadata): Make it static. 8878 * src/warc.h (warc_init): Fix prototype. 8879 * src/warc.h (warc_close): Fix prototype. 8880 * src/warc.h (warc_tempfile): Fix prototype. 8881 88822012-03-29 Tim Ruehsen <tim.ruehsen@gmx.de> (tiny change) 8883 8884 * src/utils.c (library): Include <sys/time.h>. 8885 88862012-03-25 Ray Satiro <raysatiro@yahoo.com> 8887 8888 * src/build_info.c.in: Check that HAVE_LIBSSL32 is defined when OpenSSL 8889 is used. 8890 88912012-03-25 Ray Satiro <raysatiro@yahoo.com> 8892 8893 * configure.ac: Fix build under mingw when OpenSSL is used. 8894 88952012-03-25 Giuseppe Scrivano <gscrivano@gnu.org> 8896 8897 * src/utils.c: Include <sys/ioctl.h>. 8898 8899 * src/ptimer.c: Include <sys/time.h>. 8900 8901 * src/connect.c: Include <sys/socket.h>, <sys/select.h>, <sys/time.h>. 8902 Reported by: Ray Satiro <raysatiro@yahoo.com>. 8903 89042012-03-20 Ángel González <keisial@gmail.com> 8905 8906 * bootstrap.conf (gnulib_modules): Add modules `ftello', 8907 `mkstemp' and `strtok_r'. 8908 89092012-03-07 Steven Schubiger <stsc@member.fsf.org> 8910 8911 * src/init.c (wgetrc_user_file_name): Correct typo. 8912 89132012-03-06 Sasikantha Babu <sasikanth.v19@gmail.com> 8914 8915 * src/utils.c (convert_to_bits): Added new function convert_to_bits to 8916 convert bytes to bits. 8917 * src/retr.c (calc_rate): Modified the function to handle --bits 8918 option and download rate calculated as bits per sec (SI-prefix) 8919 for --bits otherwise bytes (IEC-prefix). 8920 (retr_rate): Rates will display in bits per sec for --bits. 8921 * src/options.h (struct opt): Added --bit option bool variable bits_fmt. 8922 * src/main.c (print_help) : Added help for --bit. 8923 * src/init.c: Defined command for --bit option. 8924 * src/retr.h: Added function prototype. 8925 89262012-02-26 Giuseppe Scrivano <gscrivano@gnu.org> 8927 8928 * src/main.c: Include "closeout.h" 8929 (main): Register close_stdout at exit. 8930 89312012-02-26 Giuseppe Scrivano <gscrivano@gnu.org> 8932 8933 * bootstrap.conf (gnulib_modules): Add module `closeout'. 8934 89352012-02-23 Giuseppe Scrivano <giuseppe@southpole.se> 8936 8937 * src/main.c (main): Write diagnostic messages to `stderr' not to `stdout'. 8938 8939 * src/main.c (main): Fail gracefully if `malloc' fails. 8940 8941 * src/gnutls.c (wgnutls_read): Remove unused variables `timer' and `flags'. 8942 89432012-02-17 Steven Schubiger <stsc@member.fsf.org> 8944 8945 * src/warc.c: Add license header. 8946 89472012-02-01 Gijs van Tulder <gvtulder@gmail.com> 8948 8949 * src/warc.c: Fix large file support with ftello, fseeko. 8950 * src/warc.h: Fix large file support. 8951 * src/http.c: Fix large file support. 8952 89532012-01-27 Gijs van Tulder <gvtulder@gmail.com> 8954 8955 * src/retr.c (fd_read_body): If the response is chunked, the chunk 8956 headers are now written to the WARC file, making the WARC file 8957 an exact copy of the HTTP response. 8958 89592012-01-27 Gijs van Tulder <gvtulder@gmail.com> 8960 8961 * src/retr.c (fd_read_body): Fix a memory leak with chunked responses. 8962 * src/http.c (skip_short_body): Fix the same memory leak. 8963 89642012-01-09 Sasikantha Babu <sasikanth.v19@gmail.com> (tiny change) 8965 * src/connect.c (connect_to_ip): properly formatted ipv6 address display. 8966 (socket_family): New function - returns socket family type. 8967 * src/http.c (gethttp): properly formatted ipv6 address display. 8968 89692012-01-09 Gijs van Tulder <gvtulder@gmail.com> 8970 8971 * src/init.c: Disable WARC compression if zlib is disabled. 8972 * src/main.c: Do not show the 'no-warc-compression' option if zlib is 8973 disabled. 8974 * src/warc.c: Do not compress WARC files if zlib is disabled. 8975 89762012-01-09 Gijs van Tulder <gvtulder@gmail.com> 8977 8978 * configure.ac: Always try to use libz, even without SSL. 8979 89802011-12-12 Giuseppe Scrivano <gscrivano@gnu.org> 8981 8982 * Makefile.am (EXTRA_DIST): Add build-aux/bzr-version-gen. 8983 Reported by: Elan Ruusamäe <glen@pld-linux.org>. 8984 89852011-12-11 Giuseppe Scrivano <gscrivano@gnu.org> 8986 8987 * util/trunc.c (main): Call `close' on the fd and check for errors. 8988 Reported by: <dga@cs.cmu.edu>. 8989 89902011-11-09 Gijs van Tulder <address@hidden> 8991 8992 * src/warc.c: Call gzdopen() with wb9 instead of wb+9, which fails on 8993 zlib version >= 1.2.4. 8994 89952011-11-04 Steven Schweda <address@hidden> 8996 8997 * src/warc.c [! WINDOWS]: Include <libgen.h>. 8998 (warc_write_warcinfo_record): Assign a new allocated buffer and 8999 free it on errors. 9000 90012011-11-01 Steven Schweda <address@hidden> 9002 9003 * src/gnutls.c (ssl_init): Ensure GNU TLS is loaded only once. 9004 90052011-10-23 Giuseppe Scrivano <gscrivano@gnu.org> 9006 9007 * bootstrap.conf (gnulib_modules): Include module `vsnprintf'. 9008 90092011-10-16 Steven Schubiger <stsc@member.fsf.org> 9010 9011 * util/paramcheck.pl: Match 1 or more times where applicable. 9012 (extract_entries): Return a copy instead of reference. 9013 90142011-10-07 Steven Schweda <address@hidden> 9015 9016 * src/connect.c: Add HAVE_SYS_SELECT_H and HAVE_SYS_SOCKET_H conditions 9017 on includes of <sys/select.h> and <sys/socket.h>, respectively. 9018 * src/ftp.c (getftp): Move BIN_TYPE_TRANSFER macro into VMS-specific 9019 section. On VMS, use Stream_LF attributes for listing files. Pass 9020 BIN_TYPE_FILE to fopen_excl() instead of constant-everywhere "true". 9021 * src/ftp.c (ftp_retrieve_list): Restore lost test of opt.preserve_perm 9022 (--preserve-permissions) on the chmod() operation. 9023 * src/init.c, main.c: Remove "deprecated" from opt.preserve_perm 9024 (--preserve-permissions). 9025 * src/init.c (initialize): Use distinct messages for errors in C macro 9026 SYSTEM_WGETRC and environment-variable SYSTEM_WGETRC. Avoid use of 9027 C macro SYSTEM_WGETRC when it's not defined. 9028 * src/log.c (log_close): Avoid closing logfp when it's stderr. 9029 * src/main.c (print_help): Restore --preserve-permissions. 9030 * src/main.c (main): Avoid using a negative value of longindex as a 9031 subscript (for long_options[]) when searching for "--config". 9032 * src/main.c (main): Exit the program using exit() instead of "return". 9033 (VMS handles these differently, and exit() is better.) 9034 * src/openssl.c (ssl_init): Add type cast (SSL_METHOD *) to newly "const" 9035 "meth" argument to accommodate OpenSSL version 0.9.8, where that 9036 argument is not "const" in the OpenSSL function (SSL_CTX_new). 9037 * src/test.c: Declare "program_argstring". 9038 * src/utils.c (fopen_excl): Comment typography. 9039 * src/warc.h: New file. 9040 * src/warc.c: New file. 9041 90422011-10-02 Henrik Holst <henrik.holst@millistream.com> (tiny change) 9043 9044 * doc/wget.texi (HTTP Options): Document option --content-on-error. 9045 90462011-10-02 Henrik Holst <henrik.holst@millistream.com> (tiny change) 9047 * src/http.c (gethttp): If 'contentonerror' is used then do not 9048 skip the http body on 4xx and 5xx errors. 9049 9050 * src/init.c (commands): Add 'contentonerror'. 9051 9052 * src/main.c (print_help, option_data): Add new option 'contentonerror' 9053 to make wget not skip the http content on 4xx and 5xx errors. 9054 9055 * src/options.h: New variable 'content_on_error'. 9056 90572011-09-27 Karl Berry <karl@freefriends.org> (tiny change) 9058 9059 * doc/wget.texi: Make dir entry consistent with others. 9060 90612011-09-19 Giuseppe Scrivano <gscrivano@gnu.org> 9062 9063 * src/main.c (print_version): Update copyright year. 9064 (print_version): Fix typo. 9065 90662011-09-13 Giuseppe Scrivano <gscrivano@gnu.org> 9067 9068 * src/ftp.c (ftp_retrieve_glob): Propagate correctly the `res' error 9069 code. 9070 90712011-09-07 Giuseppe Scrivano <gscrivano@gnu.org> 9072 9073 * src/http.c (gethttp): Don't inhibit arest request if opt.timestamping is 9074 set. 9075 Reported by <natrio@list.ru> 9076 90772011-09-06 Jakob Matthes <jakob.matthes@gmail.com> (tiny change) 9078 9079 * src/main.c (print_version): Do not exit prematurely when --help is passed. 9080 90812011-09-04 Christian Jullien <eligis@orange.fr> (tiny change) 9082 9083 * src/gnutls.c: Include <sys/fcntl.h>. 9084 90852011-09-04 Alan Hourihane <alanh@fairlite.co.uk> (tiny change) 9086 9087 * configure.ac: Check for libz when gnutls is used. 9088 90892011-09-02 Mojca Miklavec <mojca.miklavec.lists@gmail.com> (tiny change) 9090 9091 * src/main.c (print_version): Do not exit prematurely when --version is passed. 9092 90932011-08-30 Giuseppe Scrivano <gscrivano@gnu.org> 9094 9095 * src/gnutls.c (wgnutls_read_timeout): Use the non blocking socket only for 9096 `gnutls_record_recv'. Set errno to ETIMEDOUT on a read timeout. 9097 90982011-08-29 Giuseppe Scrivano <gscrivano@gnu.org> 9099 9100 * src/gnutls.c (wgnutls_read_timeout): New function. 9101 (wgnutls_read): Use wgnutls_read_timeout. 9102 (wgnutls_peek): Likewise. 9103 91042011-08-27 Giuseppe Scrivano <gscrivano@gnu.org> 9105 9106 * src/main.c (print_help): Exit with an error status if print to stdout 9107 fails. 9108 (print_usage): Change method signature and return a status code. 9109 (print_version): Likewise. 9110 91112011-08-26 Giuseppe Scrivano <gscrivano@gnu.org> 9112 9113 * src/gnutls.c: Include "ptimer.h". 9114 (wgnutls_read): Honor read timeout. 9115 9116 * src/openssl.c (ssl_init): Make `meth' const. 9117 91182011-08-26 Giuseppe Scrivano <gscrivano@gnu.org> 9119 9120 * configure.ac: Under mingw don't check for static OpenSSL 9121 libraries if the shared version was already found. 9122 Suggested by: Ray Satiro <raysatiro@yahoo.com>. 9123 91242011-08-25 Giuseppe Scrivano <gscrivano@gnu.org> 9125 9126 * src/utils.c [HAVE_UTIME && HAVE_UTIME_H]: Include <utime.h>. 9127 [HAVE_UTIME && HAVE_SYS_UTIME_H]: Include <sys/utime.h>. 9128 (touch) [HAVE_UTIME: Prefers utime over futimens when it is available. 9129 It was reported that Cygwin has a not working futimens. 9130 91312011-08-25 Giuseppe Scrivano <gscrivano@gnu.org> 9132 9133 * configure.ac: Check for `utime'. 9134 91352011-08-19 Giuseppe Scrivano <gscrivano@gnu.org> 9136 9137 * src/init.c (home_dir) [MSDOS]: Move local variable `len' here. 9138 91392011-08-18 Giuseppe Scrivano <gscrivano@gnu.org> 9140 9141 * doc/texi2pod.pl: Don't assume the perl executable is under /usr/bin/. 9142 91432011-08-18 Giuseppe Scrivano <giuseppe@southpole.se> 9144 9145 * src/http.c (gethttp): Fix a memory leak on some errors. Free the head 9146 buffer. 9147 9148 * src/Makefile.am: Use an additional file "css_.c" which in turn includes 9149 "wget.h" and immediately "css.c". 9150 9151 * src/http.c (gethttp): Reset chunked_transfer_encoding on redirections. 9152 91532011-08-13 Giuseppe Scrivano <gscrivano@gnu.org> 9154 9155 * src/retr.c (fd_read_body): Ensure max is not already defined. 9156 9157 * src/mswindows.h (snprintf): Remove definition. 9158 (vsnprintf): Likewise. 9159 91602011-08-12 Giuseppe Scrivano <gscrivano@gnu.org> 9161 9162 * src/css.l: Remove include "wget.h". 9163 Reported by: Perry Smith <pedzsan@gmail.com>. 9164 91652011-08-11 Giuseppe Scrivano <gscrivano@gnu.org> 9166 9167 * src/utils.c (abort_run_with_timeout): Use sigprocmask instead of 9168 sigsetmask. 9169 9170 * src/gnutls.c (ssl_connect_wget): Remove call to deprecated function 9171 `gnutls_certificate_type_set_priority'. 9172 9173 * src/Makefile.am (version.c): Don't invoke hg to set version string. 9174 91752011-08-11 Giuseppe Scrivano <gscrivano@gnu.org> 9176 9177 * bootstrap.conf (gnulib_modules): Add `sigprocmask'. 9178 9179 * configure.ac: Do not hardcode GNU TLS and OpenSSL libraries. 9180 9181 * bootstrap.conf (gnulib_modules): Include module iconv. 9182 9183 * configure.ac: Allow --with-libgnutls-prefix and 9184 --with-libssl-prefix 9185 Suggested by: Karl Berry <karl@freefriends.org> 9186 9187 * build-aux/bzr-version-gen (TAG): Consider only the last tag. 9188 91892011-08-10 Giuseppe Scrivano <gscrivano@gnu.org> 9190 9191 Fix a linker error on systems with an older gnutls version. 9192 * src/gnutls.c (ssl_connect_wget) 9193 [HAVE_GNUTLS_PRIORITY_SET_DIRECT]: Use gnutls_priority_set_direct. 9194 [! HAVE_GNUTLS_PRIORITY_SET_DIRECT]: Use gnutls_protocol_set_priority. 9195 Reported by: Karl Berry <karl@freefriends.org> 9196 91972011-08-10 Giuseppe Scrivano <gscrivano@gnu.org> 9198 9199 * configure.ac: Print usage string for --with-ssl. 9200 Reported by: Karl Berry <karl@freefriends.org> 9201 9202 * configure.ac: Check for `gnutls_priority_set_direct' when gnutls is 9203 used. 9204 Reported by: Karl Berry <karl@freefriends.org> 9205 92062011-08-09 Giuseppe Scrivano <gscrivano@southpole.se> 9207 9208 * build-aux/bzr-version-gen: Fix some portability issues. 9209 92102011-08-06 Jochen Roderburg <Roderburg@Uni-Koeln.DE> 9211 9212 * src/host.c (lookup_host): Ensure it doesn't print more IPs than available 9213 ones. 9214 92152011-08-06 Giuseppe Scrivano <gscrivano@gnu.org> 9216 9217 * src/init.c (defaults): Set default value for show_all_dns_entries. 9218 9219 * src/host.c (lookup_host): If `showalldnsentries' is used then print all 9220 the IP corresponding to a DNS entry. 9221 * src/init.c (commands): Add `showalldnsentries'. 9222 Suggested by: Witold Baryluk <baryluk@smp.if.uj.edu.pl> 9223 9224 * src/http.c (gethttp): Add the Cache-Control HTTP header when --no-cache 9225 is specified. 9226 Reported by: Коренберг Марк <socketpair@gmail.com>. 9227 92282011-08-06 Giuseppe Scrivano <gscrivano@gnu.org> 9229 9230 * doc/wget.texi (Wgetrc Commands): Document show_all_dns_entries. 9231 9232 * doc/Makefile.am (wget.pod): Pass the VERSION value to texi2pod. 9233 9234 * doc/texi2pod.pl: Update from GCC. 9235 92362011-08-05 Giuseppe Scrivano <gscrivano@gnu.org> 9237 9238 * src/utils.c (acceptable): Accept always the file if it is the specified 9239 output destination. 9240 Reported by: Shai Berger <shai@platonix.com> 9241 92422011-08-05 Giuseppe Scrivano <giuseppe@southpole.se> 9243 9244 * src/gnutls.c (ssl_connect_wget): Use `gnutls_priority_set_direct' instead 9245 of the deprecated `gnutls_protocol_set_priority'. 9246 92472011-08-02 Giuseppe Scrivano <giuseppe@southpole.se> 9248 9249 * src/cookies.c (parse_set_cookie): If the value is quoted, do not modify 9250 it. 9251 Reported by: Nirgal Vourgère <jmv_deb@nirgal.com> 9252 92532011-07-29 Giuseppe Scrivano <giuseppe@southpole.se> 9254 9255 * src/log.c (logprintf): Exit immediately on a SIGPIPE error. 9256 Reported by: Noèl Köthe <noel@debian.org>. 9257 92582011-07-28 Noèl Köthe <noel@debian.org> (tiny change) 9259 9260 * doc/wget.texi (HTTP Options): Fix typo. 9261 92622011-07-26 Giuseppe Scrivano <giuseppe@southpole.se> 9263 9264 * src/retr.c (retrieve_url): Do not register redirects when in spider mode. 9265 92662011-07-26 Giuseppe Scrivano <giuseppe@southpole.se> 9267 9268 * doc/wget.info (cookies): Remove reference to --cookies. 9269 Reported by: Noèl Köthe. 9270 92712011-07-26 Carlos Martín Nieto <carlos@cmartin.tk> (tiny change) 9272 9273 * src/init.c (home_dir): Allocate path buffer dinamically. 9274 92752011-07-20 Merinov Nikolay <kim.roader@gmail.com> 9276 9277 * src/iri.c (remote_to_utf8): Add test for non-ASCII symbols with 9278 UTF-8 URI encoding. 9279 * src/res.c (res_retrieve_file): Fix url_parse call. 9280 92812011-07-05 Giuseppe Scrivano <gscrivano@gnu.org> 9282 9283 * doc/wget.texi (Recursive Retrieval Options): Make clearer that recursion, 9284 by default, uses 5 levels. 9285 Reported by: Marc Deop <damnshock@gmail.com>. 9286 92872011-06-08 Giuseppe Scrivano <giuseppe@southpole.se> 9288 9289 * src/retr.c (retrieve_from_file): Parse the url careless if IRI is enabled. 9290 Reported by: Volker Kuhlmann <list0570@paradise.net.nz>. 9291 92922011-06-03 Merinov Nikolay <kim.roader@gmail.com> 9293 9294 * tests/Test-idn-cmd-utf8.px: Added test for idn with utf-8 local encoding. 9295 * tests/Test-idn-robots-utf8.px: Added test for idn with utf-8 local encoding 9296 and robots.txt file. 9297 * tests/Makefile.am, run-px: Add new tests. 92982011-05-26 Steven Schweda <sms@antinode.info> 9299 * src/connect.c [HAVE_SYS_SOCKET_H]: Include <sys/socket.h>. 9300 [HAVE_SYS_SELECT_H]: Include <sys/select.h>. 9301 93022011-05-25 Giuseppe Scrivano <gscrivano@gnu.org> 9303 9304 * bootstrap.conf (gnulib_modules): Add `strerror_r-posix'. 9305 93062011-05-24 Giuseppe Scrivano <gscrivano@gnu.org> 9307 9308 * src/retr.c (fd_read_body): Define max. 9309 93102011-05-23 Giuseppe Scrivano <gscrivano@gnu.org> 9311 9312 * src/retr.c (fd_read_body): Be sure the buffer size is at least 8Kb. 9313 BUFSIZ may assume very small values with a negative impact on the 9314 performances. 9315 9316 * src/mswindows.h [NEED_GAI_STRERROR]: remove definition for gai_strerror. 9317 93182011-05-19 Giuseppe Scrivano <gscrivano@gnu.org> 9319 9320 * COPYING: Fix the copyright years. 9321 Reported by: Brett Smith <brett@fsf.org>. 9322 93232011-05-15 Ray Satiro <raysatiro@yahoo.com> 9324 9325 * src/connect.c (select_fd) [WINDOWS]: Ensure the socket is blocking. 9326 * src/mswindows.h: Add declaration for set_windows_fd_as_blocking_socket. 9327 * src/mswindows.c (set_windows_fd_as_blocking_socket): New function. 9328 9329 * src/openssl.c (openssl_read): Prevent loops on read errors. 9330 93312011-04-24 Giuseppe Scrivano <gscrivano@gnu.org> 9332 9333 * src/html-url.c: Include "exists.h". 9334 * src/gnutls.c (wgnutls_peek): Remove local variable `ret'. 9335 93362011-04-21 Daniel Manrique <roadmr@tomechangosubanana.com> (tiny change) 9337 * src/main.c (main): Set exit status when invalid host name given in 9338 command line. 9339 * src/html-url.c (get_urls_file): Set exit status when invalid host 9340 name given in input file. 9341 93422011-04-19 Ray Satiro <raysatiro@yahoo.com> 9343 9344 * configure.ac: Adjust indentation. 9345 93462011-04-19 Giuseppe Scrivano <gscrivano@gnu.org> 9347 9348 * tests/Makefile.am (LIBS): Add $(LIB_CLOCK_GETTIME). 9349 93502011-04-19 Giuseppe Scrivano <gscrivano@gnu.org> 9351 9352 * src/gnutls.c: Do not include <fcntl.h>. 9353 * src/gnutls.c (wgnutls_peek): Ensure there is data available before attempt 9354 a read on the blocking socket. 9355 9356 * src/Makefile.am (LIBS): Add $(LIB_CLOCK_GETTIME) 9357 * src/utils.c: Include <sys/stat.h>. Do not include <sys/time.h>. 9358 (touch): Use `futimens' instead of `utimes'. 9359 9360 * src/mswindows.h: Do not include <direct.h>. Remove macro definition for 9361 mkdir. 9362 93632011-04-19 Giuseppe Scrivano <gscrivano@gnu.org> 9364 9365 * bootstrap.conf (gnulib_modules): Add `mkdir'. 9366 93672011-04-18 Giuseppe Scrivano <gscrivano@gnu.org> 9368 9369 * src/utils.c: Include <sys/time.h>. Do not include <sys/utime.h>. 9370 (touch): Use `utimes' instead of `utime'. 9371 9372 * src/openssl.c (openssl_read): Fix build error. 9373 93742011-04-17 Giuseppe Scrivano <gscrivano@gnu.org> 9375 9376 * src/wget.h [HAVE_LIBSSL32]: Define HAVE_SSL. 9377 9378 * src/gnutls.c (wgnutls_peek): Use correctly FIONBIO codes under Mingw32. 9379 Reported by: Ray Satiro <raysatiro@yahoo.com> 9380 93812011-04-17 Giuseppe Scrivano <gscrivano@gnu.org> 9382 9383 * configure.ac: Do not check the host_os twice and if windres is 9384 available. 9385 Reported by: Ray Satiro <raysatiro@yahoo.com> 9386 93872011-04-16 Ray Satiro <raysatiro@yahoo.com> 93882011-04-16 Giuseppe Scrivano <gscrivano@gnu.org> 9389 9390 * configure.ac: Detect dynamically linked OpenSSL libraries under 9391 mingw32. 9392 93932011-04-14 Giuseppe Scrivano <gscrivano@gnu.org> 9394 9395 * bootstrap: Update from gnulib. 9396 9397 * bootstrap.conf (gnulib_modules): Add `pipe' and `sigpipe'. 9398 9399 * .cvsignore: Remove file. 9400 * .hgignore: Likewise. 9401 * .symlinks: Likewise. 9402 9403 * bootstrap.conf (gnulib_modules): Add `mbtowc and `unlocked-io'. 9404 94052011-04-13 Giuseppe Scrivano <gscrivano@gnu.org> 9406 9407 * src/openssl.c (openssl_poll): Check if the specified timeout is zero after 9408 SSL_pending. 9409 (openssl_peek): Make the call non-blocking. 9410 94112011-04-11 Cristian Rodríguez <crrodriguez@opensuse.org> (tiny change) 9412 9413 * src/openssl.c (ssl_init) [! OPENSSL_NO_SSL2]: Use SSLv2 only when 9414 available. 9415 94162011-04-07 Ray Satiro <raysatiro@yahoo.com> (tiny change) 9417 9418 (wgnutls_read): Check for the GNUTLS_E_AGAIN return code in the recv 9419 tight loop. 9420 (wgnutls_write): Likewise. 9421 (wgnutls_peek): Likewise. 9422 94232011-04-07 Giuseppe Scrivano <gscrivano@gnu.org> 9424 9425 * src/gnutls.c (wgnutls_peek): New local variable `read'. 9426 Use `read' instead of `ret' to store the number of read bytes. 9427 Reported by: Ray Satiro <raysatiro@yahoo.com> 9428 94292011-04-07 Giuseppe Scrivano <gscrivano@gnu.org> 9430 9431 * src/gnutls.c (ssl_init): Allow X509 v1 certificates. 9432 Suggested by: Ray Satiro <raysatiro@yahoo.com> 9433 9434 (wgnutls_peek): Remove tight loop around gnutls_record_recv. 9435 94362011-04-04 Giuseppe Scrivano <gscrivano@gnu.org> 9437 9438 * tests/Makefile.am (LIBS): Remove @LIBSSL@ @W32LIBS@ 9439 94402011-04-04 Giuseppe Scrivano <gscrivano@gnu.org> 9441 9442 * src/openssl.c [WINDOWS]: Include <w32sock.h>. 9443 (openssl_read): Retry the read on SSL_ERROR_WANT_READ. 9444 9445 * src/host.c [WINDOWS]: Include <winsock2.h> and <ws2tcpip.h>. 9446 Suggested by: Ray Satiro <raysatiro@yahoo.com>. 9447 9448 * src/Makefile.am (LIBS): Remove @LIBSSL@ @W32LIBS@ 9449 94502011-04-04 Giuseppe Scrivano <gscrivano@gnu.org> 9451 9452 * configure.ac: Use AC_CHECK_LIB to look for the openssl library. 9453 94542011-04-03 Giuseppe Scrivano <gscrivano@gnu.org> 9455 9456 * src/gnutls.c: Include <fcntl.h>. 9457 (wgnutls_peek): Make the socket non blocking before attempt a read. 9458 9459 * src/gnutls.c: Include <sys/ioctl.h>. 9460 (wgnutls_peek) [F_GETFL]: Use fcntl. 9461 (wgnutls_peek) [! F_GETFL]: Use ioctl. 9462 9463 94642011-04-03 Giuseppe Scrivano <gscrivano@gnu.org> 9465 9466 * bootstrap.conf (gnulib_modules): Add `fcntl'. 9467 9468 (gnulib_modules): Add `ioctl'. 9469 94702011-03-31 Giuseppe Scrivano <gscrivano@gnu.org> 9471 9472 * src/recur.c (download_child_p): When --no-parent is used, check that the 9473 ports are the same only in case the same protocol is used. 9474 Reported by: Karl Berry <karl@freefriends.org> 9475 9476 * src/res.c (res_parse): Add new line to debug messages. 9477 94782011-03-26 Giuseppe Scrivano <gscrivano@gnu.org> 9479 9480 * configure.ac: Fix the gnutls detection. 9481 94822011-03-21 Giuseppe Scrivano <gscrivano@gnu.org> 9483 9484 * src/iri.h (parse_charset) [!ENABLE_IRI]: Use the parameter to avoid a 9485 compiler warning. 9486 9487 * src/iri.h: Declare `dummy_iri' as extern not static. 9488 * src/main.c [!ENABLE_IRI]: Define `dummy_iri'. 9489 (main) [!ENABLE_IRI]: Initialize `dummy_iri'. 9490 94912011-03-21 Giuseppe Scrivano <gscrivano@gnu.org> 9492 9493 * doc/wget.texi: Do not cite the current maintainer. 9494 Reported by: Micah Cowan <micah@cowan.name>. 9495 94962011-03-21 Giuseppe Scrivano <gscrivano@gnu.org> 9497 9498 * bootstrap: Update from gnulib. 9499 95002011-03-19 Giuseppe Scrivano <gscrivano@gnu.org> 9501 9502 * bootstrap.conf (buildreq): Update build prerequisites list. 9503 95042011-03-11 Giuseppe Scrivano <gscrivano@gnu.org> 9505 9506 * src/ftp.c (getftp): Fix some memory leaks. 9507 * src/ftp-ls.c (ftp_parse_winnt_ls): Likewise. 9508 Reported by: Zhenbo Xu <zhenbo1987@gmail.com>. 9509 95102011-03-02 Tomasz Buchert <tomek.buchert@gmail.com> (tiny change) 9511 9512 * src/http.c (ensure_extension): Do not adjust the extension if the file 9513 ends in .htm. 9514 95152011-02-22 Steven Schubiger <stsc@member.fsf.org> 9516 9517 * src/http.c (gethttp, http_loop): Move duplicated code which is run 9518 when an existing file is not to be clobbered to a function. 9519 (get_file_flags): New static function. 9520 95212011-02-22 Gilles Carry <gilles.carry@st.com> 9522 9523 * src/main.c (prompt_for_password): Use stderr instead of stdout 9524 to prompt password. This allows to use --output-document=- and 9525 --ask-password simultaneously. Without this, redirecting stdout 9526 makes password prompt invisible and mucks up payload such as in 9527 this example: 9528 wget --output-document=- --ask-password -user=foo \ 9529 http://foo.com/tarball.tgz | tar zxf - 9530 95312010-12-28 Adrien Nader <adrien@notk.org> (tiny change) 9532 9533 * src/main.c [WINDOWS]: Include <io.h> and <fcntl.h>. 9534 (main) [WINDOWS]: Set the stdout file mode to binary. 9535 Submitted also by: Martin Panter <vadmium@gmail.com> 9536 95372010-12-22 Giuseppe Scrivano <gscrivano@gnu.org> 9538 9539 * doc/wget.texi (HTTP Options): Remove sentence which doesn't reflect 9540 the wget behaviour when -k -K are used with -E. 9541 Reported by: pike-wget@kw.nl. 9542 95432010-12-10 Evgeniy Philippov <egphilippov@googlemail.com> (tiny change) 9544 9545 * src/main.c (main): Initialize `total_downloaded_bytes'. 9546 95472010-12-09 Giuseppe Scrivano <gscrivano@gnu.org> 9548 9549 * src/main.c (main): If --no-clobber and --convert-links are used at the 9550 same time, use only the latter. 9551 Reported by: Romain Vimont <rom@rom1v.com> 9552 95532010-12-07 Jessica McKellar <jesstess@mit.edu> (tiny change) 9554 9555 * vms/WGET.HLP: Make help message clearer. 9556 95572010-12-07 Jessica McKellar <jesstess@mit.edu> (tiny change) 9558 9559 * src/main.c: Make help message clearer. 9560 95612010-12-02 Giuseppe Scrivano <gscrivano@gnu.org> 9562 9563 * src/build_info.c.in: Do not list md5. 9564 95652010-12-01 Giuseppe Scrivano <gscrivano@gnu.org> 9566 9567 * src/cmpt.c: Include <unistd.h> inconditionally. 9568 * src/connect.c: Likewise. 9569 * src/convert.c: Likewise. 9570 * src/ftp-basic.c: Likewise. 9571 * src/ftp-ls.c: Likewise. 9572 * src/ftp.c: Likewise. 9573 * src/gnutls.c: Likewise. 9574 * src/http.c: Likewise. 9575 * src/init.c: Likewise. 9576 * src/log.c: Likewise. 9577 * src/main.c: Likewise. 9578 * src/openssl.c: Likewise. 9579 * src/progress.c: Likewise. 9580 * src/ptimer.c: Likewise. 9581 * src/recur.c: Likewise. 9582 * src/retr.c: Likewise. 9583 * src/url.c: Likewise. 9584 * src/utils.c: Likewise. 9585 9586 * src/retr.c (fd_read_body): Dinamically allocate `dlbuf'. 9587 95882010-11-27 Reza Snowdon <vivi@mage.me.uk> 9589 9590 * src/init.c (initialize): If 'ok' is not zero; exit, as this 9591 indicates there was a problem parsing 'SYSTEM_WGETRC'. 9592 Fixes bug #20370. 9593 95942010-11-22 Giuseppe Scrivano <gscrivano@gnu.org> 9595 9596 Revert last commit. 9597 * src/ftp.c (getftp): When count > 0, don't append to the existing file. 9598 * src/http.c (gethttp): Likewise. 9599 96002010-11-21 Giuseppe Scrivano <gscrivano@gnu.org> 9601 9602 * src/ftp.c (getftp): If `count' is bigger than zero, try to resume the 9603 download, not restart it. 9604 * src/http.c (gethttp): Likewise. 9605 Suggested by: Evgeny Kapun <abacabadabacaba@gmail.com>. 9606 96072010-11-20 Filipe Brandenburger <filbranden@gmail.com> (tiny change) 9608 9609 * src/http.c (gethttp): Repeat a POST request on a 307 response. 9610 * src/retr.c (retrieve_url): Use NEWLOCATION_KEEP_POST. 9611 * src/wget.h: Define NEWLOCATION_KEEP_POST. 9612 96132010-11-19 Giuseppe Scrivano <gscrivano@gnu.org> 9614 9615 * src/ftp.c (getftp): Accept new argument `count'. When `count' is 9616 bigger than zero, assume the file can be overwritten. 9617 (ftp_loop_internal): Pass new argument `count' to `getftp'. 9618 9619 * src/http.c (gethttp): Accept new argument `count'. When `count' is 9620 bigger than zero, assume the file can be overwritten. 9621 (http_loop): Pass new argument `count' to `gethttp'. 9622 Reported by: Evgeny Kapun <abacabadabacaba@gmail.com>. 9623 96242010-10-26 Giuseppe Scrivano <gscrivano@gnu.org> 9625 9626 * doc/wget.texi (Download Options): Remove unclear statement about the 9627 --waitretry option. 9628 Reported by: Manfred Koizar <mkoi-pg@aon.at>. 9629 96302010-10-24 Jessica McKellar <jesstess@mit.edu> (tiny change) 9631 9632 * src/main.c (main): Print the total download time as part of the 9633 summary for downloads using the recursive or page requisites 9634 options. Fixes bug #21359. 9635 96362010-10-24 Jessica McKellar <jesstess@mit.edu> (tiny change) 9637 9638 * NEWS: Mention the change to the the summary for recursive downloads. 9639 96402010-10-24 Giuseppe Scrivano <gscrivano@gnu.org> 9641 9642 * src/gnutls.c (wgnutls_peek): Do not return an error when 9643 `gnutls_record_recv' fails but some data is already available. 9644 96452010-10-23 Giuseppe Scrivano <gscrivano@gnu.org> 9646 9647 * tests/Makefile.am (LIBS): Remove @LIBGNUTLS@ and use @W32LIBS@ as last 9648 component. 9649 96502010-10-23 Giuseppe Scrivano <gscrivano@gnu.org> 9651 9652 * src/Makefile.am (LIBS): Remove @LIBGNUTLS@ and use @W32LIBS@ as last 9653 component. 9654 9655 * src/gnutls.c (wgnutls_peek): Block until data is available. 9656 96572010-10-23 Giuseppe Scrivano <gscrivano@gnu.org> 9658 9659 * configure.ac: Add check for libgpg-error and libgcrypt. 9660 96612010-10-21 Giuseppe Scrivano <gscrivano@gnu.org> 9662 9663 * src/retr.c (retrieve_url): Do not register HTML files twice. 9664 Reported by: Manfred Koizar <mkoi-pg@aon.at>. 9665 96662010-10-18 Manfred Koizar <mkoi-pg@aon.at> (tiny change) 9667 9668 * src/html-url.c (tag_handle_link): Do not assume external links type 9669 to be always "text/html". 9670 96712010-10-16 Giuseppe Scrivano <gscrivano@gnu.org> 9672 9673 * src/connect.c (socket_ip_address): Initialize `sockaddr' to zero. 9674 * src/ftp-basic.c (ftp_epsv): Remove dead assignment to `s'. 9675 * src/ftp-ls.c (ftp_parse_vms_ls): Remove dead assignment to `len'. 9676 * src/http.c (skip_short_body): Remove dead assignment to `ret'. 9677 * src/init.c (wgetrc_user_file_name): Remove dead assignment to `home'. 9678 * src/main.c (main): Silent warning reported by clang. 9679 (http_loop): Silent warning reported by clang. 9680 * src/retr.c (retrieve_url): Likewise. 9681 * src/url.c (init_seps): Remove dead assignment to `p'. 9682 96832010-10-11 Steven Schubiger <stsc@member.fsf.org> 9684 9685 * src/ftp.c (getftp): Initialize `targ'. 9686 96872010-10-11 Giuseppe Scrivano <gscrivano@gnu.org> 9688 9689 * src/ftp.c (getftp): Fix indentation. 9690 96912010-10-08 Ivanov Anton <x86mail@gmail.com> (tiny change) 9692 9693 * src/html-url.c (check_style_attr): Skip quotes when they are present. 9694 96952010-10-06 Giuseppe Scrivano <gscrivano@gnu.org> 9696 9697 * src/main.c (main): Remove unused variable `status'. 9698 96992010-09-25 Merinov Nikolay <kim.roader@gmail.com> 9700 9701 * src/init.c: Add "unlink" command into command list. 9702 * src/main.c: Add "unlink" option into option_data list. 9703 * src/options.h: Adding unlink field into struct options. 9704 * src/wget.h: Addind UNLINKERR error into uerr_t enum. 9705 * src/exits.c (get_status_for_err): define status for UNLINKERR. 9706 * src/ftp.c (getftp): unlink file if exists, instead clobbering. 9707 (ftp_loop_internal): processing UNLINKERR. 9708 * src/http.c (gethttp): unlink file if exists, instead clobbering. 9709 (http_loop): processing UNLINKERR. 9710 97112010-09-25 Merinov Nikolay <kim.roader@gmail.com> 9712 9713 * doc/wget.texi (Download Options): Document --unlink option. 9714 97152010-09-24 Dennis, CHENG Renquan <crquan@fedoraproject.org> 9716 9717 Fix problem when content-disposition is used with recursive downloading. 9718 * src/url.h (url_file_name): Add a new argument `replaced_filename'. 9719 * src/url.c (url_file_name): Likewise. 9720 * src/http.c (parse_content_disposition): Do not add a prefix to the return 9721 value. 9722 (test_parse_content_disposition): Adjust tests. 9723 (gethttp): Pass additional parameter to `url_file_name'. 9724 (http_loop): Likewise. 9725 * src/ftp.c (ftp_loop_internal, ftp_get_listing, ftp_retrieve_list) 9726 (ftp_loop): Likewise. 9727 97282010-09-14 Giuseppe Scrivano <gscrivano@gnu.org> 9729 9730 * src/convert.c (local_quote_string): Accept new parameter `no_html_quote'. 9731 Inhibit HTML quoting when `no_html_quote'. 9732 (convert_links): Disable HTML quoting in CSS files. 9733 Reported by: Manuel Reinhardt <reinhardt@syslab.com>. 9734 97352010-09-13 Giuseppe Scrivano <gscrivano@gnu.org> 9736 9737 * doc/wget.texi (Recursive Accept/Reject Options): Remove superfluous dot. 9738 Reported by: Snader_LB. 9739 97402010-09-12 Mike Frysinger <vapier@gentoo.org> 9741 9742 Fix some tests failures. 9743 * tests/Test-iri-forced-remote.px: Use --trust-server-names to the cmdline 9744 variable. 9745 * tests/Test-iri-list.px: Likewise. 9746 * tests/Test-iri.px: Likewise. 9747 97482010-09-12 Giuseppe Scrivano <gscrivano@gnu.org> 9749 9750 * src/main.c (print_help): Align --trust-server-names help text with 9751 the rest of the text. 9752 Suggested by: Mike Frysinger <vapier@gentoo.org>. 9753 97542010-09-06 Giuseppe Scrivano <gscrivano@gnu.org> 9755 9756 * lib/Makefile.am: Fix typo. 9757 97582010-08-20 Giuseppe Scrivano <gscrivano@gnu.org> 9759 9760 * src/convert.c: Include "iri.h". 9761 (convert_links_in_hashtable): Parse the url, if 9762 necessary, before check if it is present in the dowloaded url 9763 map. 9764 Reported by: <sk.random@gmail.com>. 9765 97662010-08-09 Giuseppe Scrivano <gscrivano@gnu.org> 9767 9768 Fix a problem with HTTP/1.0 proxies. 9769 * src/http.c (gethttp): Specify the connection header when keep alive 9770 connections are not used. 9771 9772 Use persistent connections with proxies supporting them. 9773 * src/http.c (gethttp): Specify Proxy-Connection to the HTTP proxy. 9774 97752010-08-08 Reza Snowdon <vivi@mage.me.uk> 9776 9777 * src/main.c (main): inserted 'defaults'. 9778 Added additional 'getopt_long' while loop to search and apply a 9779 user specified config file before any other options. 9780 New variables 'retconf', 'use_userconfig', 9781 'confval', 'userrc_ret', 'config_opt'. 9782 * src/init.c: Include stdbool.h. 9783 (commands): Added config details. 9784 (defaults): Removed static. 9785 (wgetrc): Removed static. 9786 (initialize): Removed 'defaults ()', 9787 changed 'int ok' to 'bool ok'. 9788 * src/options.h: New variable 'choose_config'. 9789 * src/init.h (defaults): exported function. 9790 (run_wgetrc): exported function. 9791 97922010-08-08 Reza Snowdon <vivi@mage.me.uk> 9793 * doc/wget.texi: Added information about the config option to the 9794 'Overview' section and a description of the option in 9795 'Logging and Input File Options'. 9796 97972010-08-08 Giuseppe Scrivano <gscrivano@gnu.org> 9798 9799 * Makefile.am (EXTRA_DIST): Remove configure.bat. 9800 98012010-08-06 Giuseppe Scrivano <gscrivano@gnu.org> 9802 9803 * src/css-url.c (get_uri_string): Skip empty urls. 9804 98052010-07-30 Giuseppe Scrivano <gscrivano@gnu.org> 9806 9807 * src/html-url.h (struct map_context): Remove member `tail'. 9808 9809 * src/html-url.c (append_url): Append the new url ordered by `position'. 9810 (get_urls_html): Do not initialize `ctx.tail'. 9811 9812 * src/css-url.c (get_urls_css_file): Do not initialize `ctx.tail'. 9813 98142010-07-29 Giuseppe Scrivano <gscrivano@gnu.org> 9815 9816 * src/gnutls.c (wgnutls_peek): Don't read more data if the buffered peek 9817 data is sufficient. 9818 98192010-07-28 Giuseppe Scrivano <gscrivano@gnu.org> 9820 9821 * src/http.h (http_loop): Add new argument `original_url' 9822 * src/http.c (http_loop): Add new argument `original_url'. Use 9823 `original_url' to get a filename if `trustservernames' is false. 9824 9825 * src/init.c (commands): Add "trustservernames". 9826 9827 * src/options.h (library): Add variable `trustservernames'. 9828 9829 * src/main.c (option_data): Add trust-server-names. 9830 (print_help): Describe --trust-server-names. 9831 9832 * src/retr.c (retrieve_url): Pass new argument to `http_loop'. 9833 98342010-07-28 Alon Bar-Lev <alon.barlev@gmail.com> (tiny change) 9835 9836 * doc/texi2pod.pl: Use the warnings module only when it is available. 9837 98382010-07-25 John Trengrove <jtrengrove@gmail.com> (tiny change) 9839 9840 * src/ftp.h: Added enum `parsetype'. Modified struct to hold parsetype. 9841 9842 * src/ftp-ls.c (ftp_parse_unix_ls): Default to TT_DAY. Change to TT_HOUR_MIN 9843 if hours/minutes parsed. 9844 (ftp_parse_winnt_ls): Default to TT_HOUR_MIN. 9845 (ftp_parse_vms_ls): Default to TT_HOUR_MIN. 9846 (ftp_index): Print only if fileinfo struct value ttype set to TT_HOUR_MIN. 9847 98482010-07-24 Giuseppe Scrivano <gscrivano@gnu.org> 9849 9850 * configure.bat: Remove file. 9851 98522010-07-20 Leonid Petrov <nouser@lpetrov.net> 9853 9854 * src/ftp.c (getftp): Don't attempt to retrieve the file if it is already 9855 completely. 9856 (ftp_loop_internal): Force the length to be zero for symlinks. 9857 98582010-07-20 Alan Jenkins <alan-jenkins@tuffmail.co.uk> (tiny change) 9859 9860 * src/http.c (gethttp): Check content-length was set before trying to 9861 compare it with the already downloded filesize. 9862 98632010-07-18 Giuseppe Scrivano <gscrivano@gnu.org> 9864 9865 * src/http.c (gethttp): If -N is used, don't exit immediately if the content 9866 length is less or equal than the existing file size. Specify "Range" 9867 only if -N is not used. 9868 Reported by: Caleb Cushing <xenoterracide@gmail.com>. 9869 98702010-07-14 Giuseppe Scrivano <gscrivano@gnu.org> 9871 9872 * src/ftp.c (max): Remove definition. 9873 (getftp): New variable `got_expected_bytes'. Let `expected_bytes' be 9874 the value SIZE returns, otherwise use the bytes count returned by RETR. 9875 Suggested by Daniel Stenberg <daniel@haxx.se>. 9876 98772010-07-14 Giuseppe Scrivano <gscrivano@gnu.org> 9878 9879 * src/ftp.c (max): Add definition. 9880 (getftp): Consider for `expected_bytes' the greatest value between the 9881 bytes count returned by SIZE and the bytes count returned by RETR. 9882 Reported by: Jozua <jozua@sparky.za.net>. 9883 98842010-07-11 Giuseppe Scrivano <gscrivano@gnu.org> 9885 9886 * src/http.c (http_loop): New variable `force_full_retrieve'. If the remote 9887 file is newer that the local one then inhibit -c. 9888 Reported by: Caleb Cushing <xenoterracide@gmail.com>. 9889 98902010-07-11 Giuseppe Scrivano <gscrivano@gnu.org> 9891 9892 * configure.ac (AC_CHECK_SIZEOF): Quote argument. 9893 Reported by: Jochen Roderburg <Roderburg@Uni-Koeln.DE>. 9894 98952010-07-09 Giuseppe Scrivano <gscrivano@gnu.org> 9896 9897 * src/css-url.c (get_urls_css_file): Use `wget_read_file' instead of 9898 `read_file'. Use `wget_read_file_free' instead of `read_file_free'. 9899 * src/convert.c (convert_links): Likewise. 9900 * src/html-url.c (get_urls_html, get_urls_file): Likewise. 9901 * src/res.c (res_parse_from_file): Likewise. 9902 9903 * src/utils.h: Rename `read_file' to `wget_read_file'. Rename 9904 `read_file_free' to `wget_read_file_free'. 9905 9906 * src/utils.c (wget_read_file): Renamed from `read_file'. 9907 (wget_read_file_free): Renamed from `read_file_free'. 9908 99092010-07-09 Giuseppe Scrivano <gscrivano@gnu.org> 9910 9911 * bootstrap.conf (gnulib_modules): Add `vasprintf'. Remove `asprintf'. 9912 99132010-07-09 Giuseppe Scrivano <gscrivano@gnu.org> 9914 9915 * bootstrap.conf (buildreq): Relax gettext version to 0.17. 9916 99172010-07-05 Giuseppe Scrivano <gscrivano@gnu.org> 9918 9919 * src/gnutls.c (ssl_init): New local variables `ca_directory' and `dir'. 9920 Load default root certificates under the `ca_directory' directory. 9921 99222010-07-05 Giuseppe Scrivano <gscrivano@gnu.org> 9923 9924 * bootstrap.conf (gnulib_modules): Add `asprintf'. 9925 99262010-07-03 Giuseppe Scrivano <gscrivano@gnu.org> 9927 9928 * src/gnutls.c (ssl_connect_wget): New local variable `allowed_protocols'. 9929 Honor the --secure-protocol flag. 9930 99312010-06-22 Giuseppe Scrivano <gscrivano@gnu.org> 9932 9933 * configure.ac: By default use GNU TLS not OpenSSL. 9934 99352010-06-20 Giuseppe Scrivano <gscrivano@gnu.org> 9936 9937 * src/main.c (print_help): Fix help string for --random-wait. Its range is 9938 [0.5*wait, 1.5*wait) not [0, 2*wait). 9939 Reported by: Tom Mizutani <gombei1970@gmail.com>. 9940 99412010-06-17 Giuseppe Scrivano <gscrivano@gnu.org> 9942 9943 * windows: Remove directory. 9944 * Makefile.am (SUBDIRS): Remove windows. 9945 * configure.ac: Don't generate windows/Makefile. 9946 99472010-06-15 Giuseppe Scrivano <gscrivano@gnu.org> 9948 9949 * src/gnutls.c [WIN32]: Include "w32sock.h". 9950 (FD_TO_SOCKET): Add definition. 9951 (ssl_connect_wget): Get the real socket handle by FD_TO_SOCKET. 9952 Define FD_TO_SOCKET if it is not yet defined. 9953 99542010-06-15 Giuseppe Scrivano <gscrivano@gnu.org> 9955 9956 * m4/wget.m4 (WGET_STRUCT_SOCKADDR_STORAGE): Guard header inclusions. 9957 (TYPE_STRUCT_SOCKADDR_IN6): Likewise. 9958 (MEMBER_SIN6_SCOPE_ID): Likewise. 9959 (PROTO_INET6): Likewise. 9960 9961 * configure.ac: Don't check for `getaddrinfo'. 9962 9963 * bootstrap.conf (gnulib_modules): Add `getaddrinfo' module. 9964 99652010-06-14 Giuseppe Scrivano <gscrivano@gnu.org> 9966 9967 * src/gnutls.c: Include <stdlib.h>. 9968 (struct wgnutls_transport_context): Remove `peekstart'. 9969 (ssl_connect_wget): Renamed from `ssl_connect'. 9970 (wgnutls_poll): New variable `ctx'. 9971 (wgnutls_read): Don't use `ctx->peekstart'. 9972 (wgnutls_peek): Likewise. Don't attempt to read if there is not 9973 ready data. 9974 99752010-06-14 Giuseppe Scrivano <gscrivano@gnu.org> 9976 * src/http.c (http_loop): Always send a HEAD request when -N is used 9977 together with --content-disposition. 9978 Reported by: Jochen Roderburg <Roderburg@Uni-Koeln.DE>. 9979 99802010-06-10 Muthu Subramanian K <muthusuba@gmail.com> (tiny change) 9981 9982 * src/http.c (http_loop): Increase `total_downloaded_bytes' by 9983 `hstat.rd_size', not `hstat.len'. 9984 99852010-06-10 Giuseppe Scrivano <gscrivano@gnu.org> 9986 9987 * src/main.c (print_version): Drop the current maintainer line. 9988 99892010-06-10 Giuseppe Scrivano <gscrivano@gnu.org> 9990 9991 * src/Makefile.am (build_info.c): Generate the `build_info.c' file under 9992 the build directory. 9993 Patch by: Daniel Stenberg <daniel@haxx.se>. 9994 99952010-06-10 Giuseppe Scrivano <gscrivano@gnu.org> 9996 9997 * configure.ac (AM_INIT_AUTOMAKE): Remove dist-bzip2 dist-lzma from 9998 automake options. 9999 Reported by: Daniel Stenberg <daniel@haxx.se>. 10000 100012010-06-10 Giuseppe Scrivano <gscrivano@gnu.org> 10002 10003 * bootstrap.conf (buildreq): Add definition. 10004 100052010-06-04 Giuseppe Scrivano <gscrivano@gnu.org> 10006 10007 * tests/Test--no-content-disposition-trivial.px: Use /usr/bin/env to find the 10008 perl interpreter. 10009 * tests/Test--no-content-disposition.px: Likewise. 10010 * tests/Test--spider-fail.px: Likewise. 10011 * tests/Test--spider-r--no-content-disposition-trivial.px: Likewise. 10012 * tests/Test--spider-r--no-content-disposition.px: Likewise. 10013 * tests/Test--spider-r-HTTP-Content-Disposition.px: Likewise. 10014 * tests/Test--spider-r.px: Likewise. 10015 * tests/Test--spider.px: Likewise. 10016 * tests/Test-E-k-K.px: Likewise. 10017 * tests/Test-E-k.px: Likewise. 10018 * tests/Test-HTTP-Content-Disposition-1.px: Likewise. 10019 * tests/Test-HTTP-Content-Disposition-2.px: Likewise. 10020 * tests/Test-HTTP-Content-Disposition.px: Likewise. 10021 * tests/Test-N--no-content-disposition-trivial.px: Likewise. 10022 * tests/Test-N--no-content-disposition.px: Likewise. 10023 * tests/Test-N-HTTP-Content-Disposition.px: Likewise. 10024 * tests/Test-N-current.px: Likewise. 10025 * tests/Test-N-no-info.px: Likewise. 10026 * tests/Test-N-old.px: Likewise. 10027 * tests/Test-N-smaller.px: Likewise. 10028 * tests/Test-N.px: Likewise. 10029 * tests/Test-O--no-content-disposition-trivial.px: Likewise. 10030 * tests/Test-O--no-content-disposition.px: Likewise. 10031 * tests/Test-O-HTTP-Content-Disposition.px: Likewise. 10032 * tests/Test-O-nc.px: Likewise. 10033 * tests/Test-O-nonexisting.px: Likewise. 10034 * tests/Test-O.px: Likewise. 10035 * tests/Test-Restrict-Lowercase.px: Likewise. 10036 * tests/Test-Restrict-Uppercase.px: Likewise. 10037 * tests/Test-auth-basic.px: Likewise. 10038 * tests/Test-auth-no-challenge-url.px: Likewise. 10039 * tests/Test-auth-no-challenge.px: Likewise. 10040 * tests/Test-auth-retcode.px: Likewise. 10041 * tests/Test-auth-with-content-disposition.px: Likewise. 10042 * tests/Test-c-full.px: Likewise. 10043 * tests/Test-c-partial.px: Likewise. 10044 * tests/Test-c-shorter.px: Likewise. 10045 * tests/Test-c.px: Likewise. 10046 * tests/Test-cookies-401.px: Likewise. 10047 * tests/Test-cookies.px: Likewise. 10048 * tests/Test-ftp-bad-list.px: Likewise. 10049 * tests/Test-ftp-iri-disabled.px: Likewise. 10050 * tests/Test-ftp-iri-fallback.px: Likewise. 10051 * tests/Test-ftp-iri-recursive.px: Likewise. 10052 * tests/Test-ftp-iri.px: Likewise. 10053 * tests/Test-ftp-pasv-fail.px: Likewise. 10054 * tests/Test-ftp-recursive.px: Likewise. 10055 * tests/Test-ftp.px: Likewise. 10056 * tests/Test-i-ftp.px: Likewise. 10057 * tests/Test-i-http.px: Likewise. 10058 * tests/Test-idn-cmd.px: Likewise. 10059 * tests/Test-idn-headers.px: Likewise. 10060 * tests/Test-idn-meta.px: Likewise. 10061 * tests/Test-idn-robots.px: Likewise. 10062 * tests/Test-iri-disabled.px: Likewise. 10063 * tests/Test-iri-forced-remote.px: Likewise. 10064 * tests/Test-iri-list.px: Likewise. 10065 * tests/Test-iri-percent.px: Likewise. 10066 * tests/Test-iri.px: Likewise. 10067 * tests/Test-k.px: Likewise. 10068 * tests/Test-meta-robots.px: Likewise. 10069 * tests/Test-nonexisting-quiet.px: Likewise. 10070 * tests/Test-noop.px: Likewise. 10071 * tests/Test-np.px: Likewise. 10072 * tests/Test-proxied-https-auth.px: Likewise. 10073 * tests/Test-proxy-auth-basic.px: Likewise. 10074 * tests/Test-restrict-ascii.px: Likewise. 10075 Reported by sci-fi@hush.ai. 10076 100772010-06-04 Giuseppe Scrivano <gscrivano@gnu.org> 10078 10079 * build-aux/build_info.pl: Use /usr/bin/env to find the perl 10080 interpreter. 10081 * util/paramcheck.pl: Likewise. 10082 * util/rmold.pl: Likewise. 10083 Reported by sci-fi@hush.ai. 10084 100852010-06-03 Giuseppe Scrivano <gscrivano@gnu.org> 10086 10087 * src/http.c (http_loop): Do not send a HEAD request before the GET request 10088 when --content-disposition is used. 10089 Reported by: alex_wh@mail.ru. 10090 100912010-06-03 Giuseppe Scrivano <gscrivano@gnu.org> 10092 10093 * configure.ac (W32LIBS): Remove -lwsock32. 10094 100952010-06-03 Giuseppe Scrivano <gscrivano@gnu.org> 10096 10097 * bootstrap.conf (gnulib_modules): Add iconv-h. 10098 100992010-05-31 Giuseppe Scrivano <gscrivano@gnu.org> 10100 10101 * src/sysdep.h (_SVID_SOURCE): Remove definition. 10102 (_BSD_SOURCE): Remove definition. 10103 101042010-05-31 Giuseppe Scrivano <gscrivano@gnu.org> 10105 10106 * src/recur.c (retrieve_tree): Remove variable `up_error_code'. 10107 10108 * src/iri.c (open_locale_to_utf8): Remove function. 10109 101102010-05-31 Giuseppe Scrivano <gscrivano@gnu.org> 10111 10112 * src/html-parse.c (map_html_tags): Fix condition for closed tag. Handle 10113 the case '>' is not specified after '/'. 10114 101152010-05-31 Giuseppe Scrivano <gscrivano@gnu.org> 10116 10117 * src/css.l: Use option "nounput". 10118 (YY_NO_INPUT): Add macro definition. 10119 101202010-05-30 Giuseppe Scrivano <gscrivano@gnu.org> 10121 10122 * src/html-parse.c (NAME_CHAR_P): Consider '<' an invalid character. 10123 (advance_declaration): Close the tag if '<' is found. 10124 (map_html_tags): Likewise. 10125 101262010-05-29 Giuseppe Scrivano <gscrivano@gnu.org> 10127 10128 * tests/Makefile.am (EXTRA_DIST): Add Test-auth-retcode.px. 10129 10130 * tests/run-px (tests): Likewise. 10131 10132 * tests/Test-auth-retcode.px: New file. 10133 101342010-05-27 Giuseppe Scrivano <gscrivano@gnu.org> 10135 10136 * src/main.c (print_usage): Accept a new parameter `error'. 10137 (main): Print diagnostic messages to stderr, not stdout. 10138 101392010-05-27 Giuseppe Scrivano <gscrivano@gnu.org> 10140 10141 * src/main.c (main): Exit with failure when -k is specified and -O is not 10142 a regular file. 10143 101442010-05-27 Giuseppe Scrivano <gscrivano@gnu.org> 10145 10146 * src/http.c (gethttp): Consider new cookies retrieved when the 10147 authorization fails. 10148 101492010-05-27 Giuseppe Scrivano <gscrivano@gnu.org> 10150 10151 * src/Makefile.am (wget_SOURCES): Remove `snprintf.c'. 10152 10153 * src/snprintf.c: Remove file. 10154 101552010-05-27 Giuseppe Scrivano <gscrivano@gnu.org> 10156 10157 * doc/wget.texi (Download Options): Document that -k can be used with -O 10158 only with regular files. 10159 101602010-05-27 Giuseppe Scrivano <gscrivano@gnu.org> 10161 10162 * bootstrap.conf (gnulib_modules): Add `snprintf' module. 10163 10164 * configure.ac: Remove check for the `snprintf' function. 10165 101662010-05-25 Giuseppe Scrivano <gscrivano@gnu.org> 10167 10168 * src/host.c (sufmatch): Do not consider zero length entries. 10169 10170 * src/http.c (H_10X): New macro. 10171 (gethttp): Silently ignore 1xx responses. 10172 101732010-05-24 Giuseppe Scrivano <gscrivano@gnu.org> 10174 10175 * src/iri.h (dummy_iri): Define static. 10176 10177 * src/css-tokens.h (css_tokens): Remove variable. 10178 101792010-05-23 Giuseppe Scrivano <gscrivano@gnu.org> 10180 10181 * src/http.c (http_atotm): Count the NUL character when copying the locale 10182 string. 10183 Reported by: Florian Weimer <fw@deneb.enyo.de> 10184 101852010-05-16 Giuseppe Scrivano <gscrivano@gnu.org> 10186 10187 * tests/Makefile.am (../md5/libmd5.a): Remove rule. 10188 (LDADD): Remove MD5_LDADD. 10189 101902010-05-16 Giuseppe Scrivano <gscrivano@gnu.org> 10191 10192 * src/Makefile.am (LDADD): Remove MD5_LDADD. 10193 (MD5_LDADD): Remove definition. 10194 (AM_CPPFLAGS): Remove MD5_CPPFLAGS. 10195 (version.c): Remove dependency from MD5_LDADD. 10196 (../md5/libmd5.a): Remove rule. 10197 10198 * src/ftp-opie.c: Include "md5.h". Do not include "gen-md5.h". 10199 (skey_response): New variable ctx. Use md5 functions from the gnulib 10200 module instead of functions defined previously in the "gen-md5.h" file. 10201 10202 * src/gen-md5.h: Remove file. 10203 * src/gen-md5.c: Likewise. 10204 10205 * src/http.c: Include "md5.h". Do not include "gen-md5.h". 10206 (digest_authentication_encode): New variable ctx. Use md5 functions 10207 from the gnulib module instead of functions defined previously in the 10208 "gen-md5.h" file. 10209 102102010-05-16 Giuseppe Scrivano <gscrivano@gnu.org> 10211 10212 * md5: Remove directory. 10213 10214 * bootstrap.conf (gnulib_modules): Add crypto/md5. 10215 10216 * configure.ac: Remove any check for md5 libraries. 10217 10218 * Makefile.am (ACLOCAL_AMFLAGS): Remove -I md5/m4. 10219 (SUBDIRS): Remove md5. 10220 102212010-05-15 Giuseppe Scrivano <gscrivano@gnu.org> 10222 10223 * src/Makefile.am: Quote any path using $(top_srcdir) or $(top_builddir). 10224 (version.c): Remove dependency from configure.ac and Makefile.am. 10225 10226 * src/css.l: Include "wget.h". 10227 102282010-05-15 Giuseppe Scrivano <gscrivano@gnu.org> 10229 10230 * bootstrap.conf (gnulib_modules): Add "getopt-gnu". Remove "getopt". 10231 102322010-05-14 Giuseppe Scrivano <gscrivano@gnu.org> 10233 10234 * bootstrap (gnulib_path): Default to "gnulib" if it doesn't have a 10235 value. Redirect "git clone" stderr to stdout. 10236 102372010-05-09 Giuseppe Scrivano <gscrivano@gnu.org> 10238 10239 * build-aux/bzr-version-gen: New file. 10240 10241 * Makefile.am (EXTRA_DIST): Add .version. 10242 (BUILT_SOURCES): New defition. 10243 (.version): New rule. 10244 (dist-hook): Likewise. 10245 10246 * configure.ac (AC_INIT): Use build-aux/bzr-version-gen to generate the 10247 version string. 10248 102492010-05-08 Giuseppe Scrivano <gscrivano@gnu.org> 10250 10251 * tests/Makefile.am: Update copyright years. 10252 102532010-05-08 Giuseppe Scrivano <gscrivano@gnu.org> 10254 10255 * src/Makefile.am: Update copyright years. 10256 * src/cmpt.c: Likewise. 10257 * src/connect.h: Likewise. 10258 * src/convert.c: Likewise. 10259 * src/convert.h: Likewise. 10260 * src/cookies.c: Likewise. 10261 * src/cookies.h: Likewise. 10262 * src/css-tokens.h: Likewise. 10263 * src/css-url.c: Likewise. 10264 * src/css-url.h: Likewise. 10265 * src/css.l: Likewise. 10266 * src/exits.c: Likewise. 10267 * src/exits.h: Likewise. 10268 * src/ftp-basic.c: Likewise. 10269 * src/ftp-ls.c: Likewise. 10270 * src/ftp-opie.c: Likewise. 10271 * src/ftp.c: Likewise. 10272 * src/ftp.h: Likewise. 10273 * src/gen-md5.c: Likewise. 10274 * src/gen-md5.h: Likewise. 10275 * src/gettext.h: Likewise. 10276 * src/gnutls.c: Likewise. 10277 * src/hash.c: Likewise. 10278 * src/hash.h: Likewise. 10279 * src/host.c: Likewise. 10280 * src/host.h: Likewise. 10281 * src/html-parse.c: Likewise. 10282 * src/html-parse.h: Likewise. 10283 * src/html-url.c: Likewise. 10284 * src/html-url.h: Likewise. 10285 * src/http-ntlm.c: Likewise. 10286 * src/http-ntlm.h: Likewise. 10287 * src/http.c: Likewise. 10288 * src/http.h: Likewise. 10289 * src/init.c: Likewise. 10290 * src/init.h: Likewise. 10291 * src/iri.c: Likewise. 10292 * src/iri.h: Likewise. 10293 * src/log.c: Likewise. 10294 * src/log.h: Likewise. 10295 * src/main.c: Likewise. 10296 * src/mswindows.c: Likewise. 10297 * src/mswindows.h: Likewise. 10298 * src/netrc.c: Likewise. 10299 * src/netrc.h: Likewise. 10300 * src/openssl.c: Likewise. 10301 * src/options.h: Likewise. 10302 * src/progress.c: Likewise. 10303 * src/progress.h: Likewise. 10304 * src/ptimer.c: Likewise. 10305 * src/ptimer.h: Likewise. 10306 * src/recur.c: Likewise. 10307 * src/recur.h: Likewise. 10308 * src/res.c: Likewise. 10309 * src/res.h: Likewise. 10310 * src/retr.c: Likewise. 10311 * src/retr.h: Likewise. 10312 * src/spider.c: Likewise. 10313 * src/spider.h: Likewise. 10314 * src/ssl.h: Likewise. 10315 * src/sysdep.h: Likewise. 10316 * src/test.c: Likewise. 10317 * src/test.h: Likewise. 10318 * src/url.c: Likewise. 10319 * src/url.h: Likewise. 10320 * src/utils.c: Likewise. 10321 * src/utils.h: Likewise. 10322 * src/wget.h: Likewise. 10323 103242010-05-08 Giuseppe Scrivano <gscrivano@gnu.org> 10325 10326 * doc/Makefile.am: Update copyright years. 10327 10328 * doc/fdl.texi: Likewise. 10329 10330 * doc/texi2pod.pl: Likewise. 10331 10332 * doc/wget.texi: Likewise. 10333 103342010-05-08 Giuseppe Scrivano <gscrivano@gnu.org> 10335 10336 * Makefile.am: Update copyright years. 10337 10338 * build-aux/build_info.pl: Likewise. 10339 10340 * configure.ac: Likewise. 10341 10342 * configure.bat: Likewise. 10343 10344 * doc/Makefile.am: Likewise. 10345 10346 * doc/fdl.texi: Likewise. 10347 10348 * doc/texi2pod.pl: Likewise. 10349 10350 * doc/wget.texi: Likewise. 10351 10352 * m4/exitfail.m4: Likewise. 10353 10354 * m4/getpagesize.m4: Likewise. 10355 10356 * m4/wchar.m4: Likewise. 10357 10358 * m4/wctype.m4: Likewise. 10359 10360 * m4/wget.m4: Likewise. 10361 10362 * md5/Makefile.am: Likewise. 10363 10364 * md5/dummy.c: Likewise. 10365 10366 * md5/m4/00gnulib.m4: Likewise. 10367 10368 * md5/m4/gnulib-cache.m4: Likewise. 10369 10370 * md5/m4/gnulib-common.m4: Likewise. 10371 10372 * md5/m4/gnulib-comp.m4: Likewise. 10373 10374 * md5/m4/gnulib-tool.m4: Likewise. 10375 10376 * md5/m4/include_next.m4: Likewise. 10377 10378 * md5/m4/longlong.m4: Likewise. 10379 10380 * md5/m4/md5.m4: Likewise. 10381 10382 * md5/m4/multiarch.m4: Likewise. 10383 10384 * md5/m4/stddef_h.m4: Likewise. 10385 10386 * md5/m4/stdint.m4: Likewise. 10387 10388 * md5/m4/wchar.m4: Likewise. 10389 10390 * md5/m4/wchar_t.m4: Likewise. 10391 10392 * md5/m4/wint_t.m4: Likewise. 10393 10394 * md5/md5.h: Likewise. 10395 10396 * md5/stddef.in.h: Likewise. 10397 10398 * md5/stdint.in.h: Likewise. 10399 10400 * md5/wchar.in.h: Likewise. 10401 10402 * msdos/config.h: Likewise. 10403 10404 * msdos/msdos.c: Likewise. 10405 10406 * po/POTFILES.in: Likewise. 10407 10408 * util/Makefile.am: Likewise. 10409 10410 * util/paramcheck.pl: Likewise. 10411 10412 * util/rmold.pl: Likewise. 10413 104142010-05-07 Giuseppe Scrivano <gscrivano@gnu.org> 10415 10416 * tests/Makefile.am (LIBS): Add definition. 10417 (LDADD): Add LIBS. 10418 104192010-05-07 Giuseppe Scrivano <gscrivano@gnu.org> 10420 10421 * src/gnutls.c (wgnutls_close): Use always `close', not `closesocket'. 10422 * src/openssl.c (openssl_close): Use always `close', not `closesocket'. 10423 (ssl_connect_wget): Get the real socket handle by FD_TO_SOCKET. 10424 Define FD_TO_SOCKET if it is not yet defined. 10425 * src/Makefile.am (libunittest_a_CPPFLAGS): Add -I$(top_builddir)/lib. 10426 * src/mswindows.h: Always include <winsock2.h> and <ws2tcpip.h>. Do not 10427 include <winsock.h>. 10428 [! INHIBIT_WRAP]: Remove macro's socket, bind, connect, accept, recv, 10429 send, select, getsockname, getpeername, setsockopt, closesocket. 10430 Remove wrapped_socket, wrapped_bind, wrapped_connect, wrapped_listen, 10431 wrapped_accept, wrapped_recv, wrapped_send, wrapped_select, 10432 wrapped_getsockname, wrapped_getpeername, wrapped_setsockopt, 10433 wrapped_closesocket prototypes. 10434 * src/mswindows.c: Remove wrapped_socket, wrapped_bind, wrapped_connect, 10435 wrapped_listen, wrapped_accept, wrapped_recv, wrapped_send, 10436 wrapped_select, wrapped_getsockname, wrapped_getpeername, 10437 wrapped_setsockopt, wrapped_closesocket functions. Remove WRAP macro. 10438 * src/host.h [WINDOWS]: Include <winsock2.h> not <winsock.h>. 10439 * src/connect.c: Include <sys/socket.h> and <sys/select.h> on any platform, 10440 gnulib ensures they exist. Remove `read', `write', `close' macros. 10441 * src/Makefile.am: Copy build_info.c.in only if we are working in a VPATH. 10442 (AM_CPPFLAGS): Add directory with generated gnulib files. 10443 104442010-05-07 Giuseppe Scrivano <gscrivano@gnu.org> 10445 10446 * configure.ac: Don't call macro WGET_SOCKLEN_T. 10447 (W32LIBS): Add -lws2_32. 10448 10449 * Makefile.am (EXTRA_DIST): Remove autogen.sh. 10450 10451 * bootstrap.conf (gnulib_modules): Use new modules from gnulib: accept, 10452 bind, close, connect, getpeername, getsockname, listen, setsockopt. 10453 10454 * m4/wget.m4 (WGET_SOCKLEN_T): Remove macro. 10455 10456 * po/wget.pot: Remove. 10457 104582010-05-07 Giuseppe Scrivano <gscrivano@gnu.org> 10459 10460 * configure.ac (ALL_LINGUAS): Remove. 10461 104622010-05-06 Giuseppe Scrivano <gscrivano@gnu.org> 10463 10464 * src/Makefile.am (build_info.c): Generate build_info.c in the builddir, 10465 not srcdir. 10466 104672010-05-06 Giuseppe Scrivano <gscrivano@gnu.org> 10468 10469 * bootstrap: New file. 10470 * bootstrap.conf: New file. 10471 * lib/Makefile.am: include gnulib.mk. 10472 * autogen.sh: Removed. 10473 * GNUmakefile: Likewise. 10474 * INSTALL: Likewise. 10475 * build-aux/announce-gen: Likewise. 10476 * build-aux/compile: Likewise. 10477 * build-aux/config.guess: Likewise. 10478 * build-aux/config.rpath: Likewise. 10479 * build-aux/config.sub: Likewise. 10480 * build-aux/depcomp: Likewise. 10481 * build-aux/gnupload: Likewise. 10482 * build-aux/install-sh: Likewise. 10483 * build-aux/mdate-sh: Likewise. 10484 * build-aux/missing: Likewise. 10485 * build-aux/mkinstalldirs: Likewise. 10486 * build-aux/texinfo.tex: Likewise. 10487 * build-aux/update-copyright: Likewise. 10488 * build-aux/useless-if-before-free: Likewise. 10489 * build-aux/vc-list-files: Likewise. 10490 * build-aux/ylwrap: Likewise. 10491 * lib/DESCRIP_DEPS.MMS: Likewise. 10492 * lib/DESCRIP_MODS.MMS: Likewise. 10493 * lib/DESCRIP_SRC.MMS: Likewise. 10494 * lib/alloca.c: Likewise. 10495 * lib/alloca.in.h: Likewise. 10496 * lib/c-ctype.c: Likewise. 10497 * lib/c-ctype.h: Likewise. 10498 * lib/config.charset: Likewise. 10499 * lib/errno.in.h: Likewise. 10500 * lib/error.c: Likewise. 10501 * lib/error.h: Likewise. 10502 * lib/exitfail.c: Likewise. 10503 * lib/exitfail.h: Likewise. 10504 * lib/fseeko.c: Likewise. 10505 * lib/getdelim.c: Likewise. 10506 * lib/getline.c: Likewise. 10507 * lib/getopt.c: Likewise. 10508 * lib/getopt.in.h: Likewise. 10509 * lib/getopt1.c: Likewise. 10510 * lib/getopt_int.h: Likewise. 10511 * lib/getpagesize.c: Likewise. 10512 * lib/getpass.c: Likewise. 10513 * lib/getpass.h: Likewise. 10514 * lib/gettext.h: Likewise. 10515 * lib/intprops.h: Likewise. 10516 * lib/localcharset.c: Likewise. 10517 * lib/localcharset.h: Likewise. 10518 * lib/lseek.c: Likewise. 10519 * lib/mbrtowc.c: Likewise. 10520 * lib/mbsinit.c: Likewise. 10521 * lib/memchr.c: Likewise. 10522 * lib/memchr.valgrind: Likewise. 10523 * lib/quote.c: Likewise. 10524 * lib/quote.h: Likewise. 10525 * lib/quotearg.c: Likewise. 10526 * lib/quotearg.h: Likewise. 10527 * lib/realloc.c: Likewise. 10528 * lib/ref-add.sin: Likewise. 10529 * lib/ref-del.sin: Likewise. 10530 * lib/stdbool.in.h: Likewise. 10531 * lib/stddef.in.h: Likewise. 10532 * lib/stdint.in.h: Likewise. 10533 * lib/stdio-impl.h: Likewise. 10534 * lib/stdio-write.c: Likewise. 10535 * lib/stdio.in.h: Likewise. 10536 * lib/stdlib.in.h: Likewise. 10537 * lib/str-two-way.h: Likewise. 10538 * lib/strcasecmp.c: Likewise. 10539 * lib/strcasestr.c: Likewise. 10540 * lib/streq.h: Likewise. 10541 * lib/strerror.c: Likewise. 10542 * lib/string.in.h: Likewise. 10543 * lib/strings.in.h: Likewise. 10544 * lib/strncasecmp.c: Likewise. 10545 * lib/unistd.in.h: Likewise. 10546 * lib/verify.h: Likewise. 10547 * lib/wchar.in.h: Likewise. 10548 * lib/wctype.in.h: Likewise. 10549 * lib/xalloc-die.c: Likewise. 10550 * lib/xalloc.h: Likewise. 10551 * lib/xmalloc.c: Likewise. 10552 * m4/00gnulib.m4: Likewise. 10553 * m4/alloca.m4: Likewise. 10554 * m4/codeset.m4: Likewise. 10555 * m4/errno_h.m4: Likewise. 10556 * m4/error.m4: Likewise. 10557 * m4/extensions.m4: Likewise. 10558 * m4/fseeko.m4: Likewise. 10559 * m4/getdelim.m4: Likewise. 10560 * m4/getline.m4: Likewise. 10561 * m4/getopt.m4: Likewise. 10562 * m4/getpass.m4: Likewise. 10563 * m4/gettext.m4: Likewise. 10564 * m4/glibc21.m4: Likewise. 10565 * m4/gnulib-cache.m4: Likewise. 10566 * m4/gnulib-common.m4: Likewise. 10567 * m4/gnulib-comp.m4: Likewise. 10568 * m4/gnulib-tool.m4: Likewise. 10569 * m4/iconv.m4: Likewise. 10570 * m4/include_next.m4: Likewise. 10571 * m4/inline.m4: Likewise. 10572 * m4/lib-ld.m4: Likewise. 10573 * m4/lib-link.m4: Likewise. 10574 * m4/lib-prefix.m4: Likewise. 10575 * m4/localcharset.m4: Likewise. 10576 * m4/locale-fr.m4: Likewise. 10577 * m4/locale-ja.m4: Likewise. 10578 * m4/locale-zh.m4: Likewise. 10579 * m4/longlong.m4: Likewise. 10580 * m4/lseek.m4: Likewise. 10581 * m4/malloc.m4: Likewise. 10582 * m4/mbrtowc.m4: Likewise. 10583 * m4/mbsinit.m4: Likewise. 10584 * m4/mbstate_t.m4: Likewise. 10585 * m4/memchr.m4: Likewise. 10586 * m4/mmap-anon.m4: Likewise. 10587 * m4/multiarch.m4: Likewise. 10588 * m4/nls.m4: Likewise. 10589 * m4/po.m4: Likewise. 10590 * m4/progtest.m4: Likewise. 10591 * m4/quote.m4: Likewise. 10592 * m4/quotearg.m4: Likewise. 10593 * m4/realloc.m4: Likewise. 10594 * m4/stdbool.m4: Likewise. 10595 * m4/stddef_h.m4: Likewise. 10596 * m4/stdint.m4: Likewise. 10597 * m4/stdio_h.m4: Likewise. 10598 * m4/stdlib_h.m4: Likewise. 10599 * m4/strcase.m4: Likewise. 10600 * m4/strcasestr.m4: Likewise. 10601 * m4/strerror.m4: Likewise. 10602 * m4/string_h.m4: Likewise. 10603 * m4/strings_h.m4: Likewise. 10604 * m4/unistd_h.m4: Likewise. 10605 * m4/wchar_t.m4: Likewise. 10606 * m4/wint_t.m4: Likewise. 10607 * m4/xalloc.m4: Likewise. 10608 * maint.mk: Likewise. 10609 * po/Makefile.in.in: Likewise. 10610 * po/Makevars: Likewise. 10611 * po/Rules-quot: Likewise. 10612 * po/be.po: Likewise. 10613 * po/bg.po: Likewise. 10614 * po/boldquot.sed: Likewise. 10615 * po/ca.po: Likewise. 10616 * po/cs.po: Likewise. 10617 * po/da.po: Likewise. 10618 * po/de.po: Likewise. 10619 * po/el.po: Likewise. 10620 * po/en_GB.po: Likewise. 10621 * po/eo.po: Likewise. 10622 * po/es.po: Likewise. 10623 * po/et.po: Likewise. 10624 * po/eu.po: Likewise. 10625 * po/fi.po: Likewise. 10626 * po/fr.po: Likewise. 10627 * po/ga.po: Likewise. 10628 * po/gl.po: Likewise. 10629 * po/he.po: Likewise. 10630 * po/hr.po: Likewise. 10631 * po/hu.po: Likewise. 10632 * po/id.po: Likewise. 10633 * po/it.po: Likewise. 10634 * po/ja.po: Likewise. 10635 * po/lt.po: Likewise. 10636 * po/nb.po: Likewise. 10637 * po/nl.po: Likewise. 10638 * po/pl.po: Likewise. 10639 * po/pt.po: Likewise. 10640 * po/pt_BR.po: Likewise. 10641 * po/quot.sed: Likewise. 10642 * po/ro.po: Likewise. 10643 * po/ru.po: Likewise. 10644 * po/sk.po: Likewise. 10645 * po/sl.po: Likewise. 10646 * po/sr.po: Likewise. 10647 * po/sv.po: Likewise. 10648 * po/tr.po: Likewise. 10649 * po/uk.po: Likewise. 10650 * po/vi.po: Likewise. 10651 * po/zh_CN.po: Likewise. 10652 * po/zh_TW.po: Likewise. 10653 106542010-05-05 Giuseppe Scrivano <gscrivano@gnu.org> 10655 10656 * src/http.c (gethttp): Give a nicer message on a malformed status line. 10657 106582010-05-04 Giuseppe Scrivano <gscrivano@gnu.org> 10659 10660 * src/http.c (gethttp): Check `resp_status' return code and handle 10661 errors. 10662 106632010-05-04 Giuseppe Scrivano <gscrivano@gnu.org> 10664 10665 * AUTHORS: Added myself. 10666 106672010-05-03 Giuseppe Scrivano <gscrivano@gnu.org> 10668 10669 * configure.ac: Fix a sanity check by the AC_CONFIG_SRCDIR macro. 10670 106712010-05-01 Giuseppe Scrivano <gscrivano@gnu.org> 10672 10673 * src/http.c (request_send): Specify 1.1 as HTTP version for requests. 10674 (skip_short_body): Accept new parameter `chunked'. New variable 10675 `remaining_chunk_size'. Handle the chunked transfer encoding. 10676 (gethttp): New variable `chunked_transfer_encoding`. Set `keepalive' 10677 by default to true. Check if the server is using the chunked transfer 10678 encoding. 10679 10680 * src/retr.h: Define `rb_chunked_transfer_encoding'. 10681 10682 * src/retr.c (fd_read_body): New variable `chunked'. New variable 10683 `remaining_chunk_size'. Handle the chunked transfer encoding. 10684 106852010-05-01 Giuseppe Scrivano <gscrivano@gnu.org> 10686 10687 * NEWS: Mention support for HTTP/1.1. 10688 106892010-03-04 Steven Schubiger <stsc@member.fsf.org> 10690 10691 * src/ftp.c (ftp_loop_internal): Omit input file from being 10692 deleted after retrieval. 10693 10694 * src/retr.c (input_file_url): New function. 10695 10696 * src/retr.h: Add declaration for input_file_url. 10697 106982010-03-02 Steven Schubiger <stsc@member.fsf.org> 10699 10700 * src/retr.c (retrieve_from_file): Improve checking for a URL 10701 by invoking url_valid_scheme instead of url_has_scheme. 10702 10703 * src/url.c (url_valid_scheme): New function. 10704 10705 * src/url.h: Add declaration for url_valid_scheme. 10706 107072010-03-02 Steven Schubiger <stsc@member.fsf.org> 10708 10709 * src/retr.c (retrieve_from_file): Free memory of input file. 10710 107112010-03-01 Steven Schubiger <stsc@member.fsf.org> 10712 10713 * tests/Test-i-ftp.px: Test --input-file in conjunction with FTP. 10714 * tests/run-px, Makefile.am (EXTRA_DIST): Added Test-i-ftp.px. 10715 107162010-03-01 Steven Schubiger <stsc@member.fsf.org> 10717 10718 * src/retr.c (retrieve_url): Retrieve the local filename from ftp_loop. 10719 (retrieve_from_file): Return if there's no input file. 10720 10721 * src/ftp.c (ftp_loop_internal): Duplicate the local filename into 10722 retrieve_url's scope when a valid reference is being passed. 10723 (ftp_loop): Call ftp_loop_internal here with passing a 10724 reference to the local filename, elsewhere with NULL. 10725 10726 * src/ftp.h: Adjust declaration of ftp_loop. 10727 107282010-02-26 Steven Schubiger <stsc@member.fsf.org> 10729 10730 * tests/Test-i-http.px: Test --input-file in conjunction with HTTP. 10731 * tests/run-px, Makefile.am (EXTRA_DIST): Added Test-i-http.px. 10732 107332010-02-25 Steven Schubiger <stsc@member.fsf.org> 10734 10735 * tests/FTPServer.pm (FTPServer::new): Substitute port placeholders 10736 in content of files to be retrieved via FTP. 10737 107382010-01-27 Paul Townsend <aab@purdue.edu> (tiny change) 10739 10740 * src/retr.c (fd_read_body): Be sure to measure timer when time has 10741 elapsed, too, not just when we've made progress. 10742 107432010-01-13 Micah Cowan <micah@cowan.name> 10744 10745 * src/openssl.c: Fixed some mixed declarations-and-code. 10746 107472010-01-09 Micah Cowan <micah@cowan.name> 10748 10749 * src/init.c, main.c, http.c, ftp.c, options.h: Renamed 10750 --no-match-server-timestamps to --no-use-server-timestamps, and 10751 add it to print_help. 10752 107532010-01-09 Micah Cowan <micah@cowan.name> 10754 10755 * doc/wget.texi (Download Options): Documented 10756 --no-use-server-timestamps. 10757 107582010-01-09 Jeremy Olexa <darkside@gentoo.org> (tiny change) 10759 10760 * src/init.c: Deal with systems which provide PATH_MAX in 10761 sys/param.h rather than limits.h. 10762 107632010-01-09 David Holman <holman.david@gmail.com> (tiny change) 10764 10765 * src/init.c, main.c, http.c, ftp.c, options.h: Added support for 10766 --no-match-server-timestamps. 10767 107682009-12-03 Peter Rosin <peda@lysator.liu.se> 10769 10770 * src/snprintf.c (dopr): Output %p as unsigned. 10771 107722009-10-24 Petr Pisar <petr.pisar@atlas.cz> 10773 10774 * src/openssl.c: Implement support for (multiple) subjectAltNames in 10775 X509 certificates, not just the commonName. 10776 107772009-10-14 Steven Schubiger <stsc@member.fsf.org> 10778 10779 * tests/Test-E-k-K.px, Test-cookies-401.px, Test-ftp-bad-list.px, 10780 Test-iri-list.px, Test-iri.px: Removed -d from invocation. 10781 Patch by Mike Frysinger. 10782 107832009-10-09 Steven Schweda <sms@antinode.info> 10784 10785 * src/utils.c: Added characters " : \ | to the list of normal 10786 caret-escaped (ODS5) characters in the char_prop[] table. 10787 107882009-10-09 Steven Schweda <sms@antinode.info> 10789 10790 * New VMS MMS/MMK builders, to accommodate the new source tree 10791 structure: 10792 lib/DESCRIP_DEPS.MMS Dependencies (lib) 10793 lib/DESCRIP_MODS.MMS Modules (lib) 10794 lib/DESCRIP_SRC.MMS Main (lib) 10795 md5/DESCRIP_DEPS.MMS Dependencies (md5) 10796 md5/DESCRIP_MODS.MMS Modules (md5) 10797 md5/DESCRIP_SRC.MMS Main (md5) 10798 src/DESCRIP_DEPS.MMS Dependencies (src) 10799 src/DESCRIP_MODS.MMS Modules (src) 10800 src/DESCRIP_SRC.MMS Main (src) 10801 vms/DESCRIP.MMS Main (global) 10802 vms/DESCRIP_MKDEPS.MMS Dependency generator 10803 vms/DESCRIP_SRC.MMS Main (main) 10804 vms/DESCRIP_SRC_CMN.MMS Main (common) 10805 vms/DESCRIP_SRC_FLAGS.MMS Compiler and linker flags 10806 vms/COLLECT_DEPS.COM Dependency processor 10807 vms/CONFIG_EXTRACT.COM Extract AC_INIT from configure.ac 10808 vms/WGET_MULTINET.OPT Link options for (old) MultiNet 10809 vms/WGET_SSL_HP.OPT Link options for HP SSL 10810 vms/WGET_SSL_O.OPT Link options for OpenSSL 10811 10812 * Other VMS-specific files: 10813 vms/alloca.h Dummy alloca.h. 10814 vms/config.h_vms Manually crafted config.h 10815 vms/stdint.h Dummy stdint.h 10816 vms/vms.h Declarations, prototypes for vms.c 10817 vms/vms_ip.h Helper for netdb.h 10818 vms/VMS_NOTES.TXT Instructions, notes 10819 vms/WGET.HLP Basic VMS HELP 10820 108212009-10-09 Micah Cowan <micah@cowan.name> 10822 10823 * src/main.c: Fix declaration of compiled_features. 10824 10825 * src/build_info.c.in: Adapt to new input format. Added a check for 10826 large-file support. Replaced the "openssl" and "gnutls" 10827 advertisements with a single "ssl/foo" advertisement. 10828 108292009-10-09 Micah Cowan <micah@cowan.name> 10830 10831 * build_aux/build_info.pl: Reworked the input format. Eliminated 10832 support, and need, for arbitrary #if blocks. Introduced 10833 "choices", and explicitly open the .c file rather than print to 10834 STDOUT, so we avoid creating the file if we find problems with 10835 the input. Options are advertised in alphabetical order. 10836 108372009-09-30 Micah Cowan <micah@cowan.name> 10838 10839 * src/sysdep.h: Unconditionally include stdbool.h (gnulib has it for 10840 systems that don't supply it.) 10841 10842 * src/vms.c: Added functions vms_basename(), used to extract the 10843 bare executable name from argv[0], and vms_getpass(), a 10844 VMS-specific replacement for GNU getpass(). 10845 10846 vms.c: Added global string constants: compilation_string 10847 (NULL), link_string (NULL), and version_string (real). 10848 108492009-09-27 Micah Cowan <micah@cowan.name> 10850 10851 * tests/Test-idn-cmd.px, Test-idn-headers.px, Test-idn-meta.px, 10852 Test-idn-robots.px, Test-proxy-auth-basic.px: Removed --debug from 10853 invocation (in case it wasn't built with --debug support). 10854 108552009-09-24 Steven Schweda <sms@antinode.info> 10856 10857 * src/main.c (print_version): Remove VMS-conditional build info 10858 string; the new VMS builders use OS_TYPE. 10859 10860 * src/ftp.c (getftp): Fix accidental use of target -> targ. 10861 108622009-09-24 Micah Cowan <micah@cowan.name> 10863 10864 * vms/vms.c: Moved to src/src.c. 10865 108662009-09-24 Micah Cowan <micah@cowan.name> 10867 10868 * tests/Test-ftp-iri-disabled.px: Fix name "Test-ftp-iri" -> 10869 "test-ftp-iri-disabled" 10870 10871 * tests/Test-ftp-iri-fallback.px: Fix name "Test-ftp-iri" -> 10872 "test-ftp-iri-fallback" 10873 108742009-09-24 Micah Cowan <micah@cowan.name> 10875 10876 * src/vms.c: Moved from vms/vms.c. 10877 10878 * src/sysdep.h: Use proper prototypes for snprintf, vsnprintf (thanks 10879 to Steven Schweda). 10880 108812009-09-24 Micah Cowan <micah@cowan.name> 10882 10883 * src/host.c (host_errstr): host_errstr should return const char *. 10884 108852009-09-22 Micah Cowan <micah@cowan.name> 10886 10887 * src/Makefile.am (version.c): Explicitly tell Mercurial where the 10888 top-source repository should be, so it doesn't accidentally use 10889 the repository for a containing directory (for instance, if the 10890 user's home directory is managed by a Mercurial repo). Also 10891 ensures we find the repository, even if the build directory is 10892 outside the source directory. 10893 10894 * src/wget.h: define WINDOWS if _WIN32 or __WIN32__ is defined, but 10895 not __CYGWIN__. 10896 10897 * src/mswindows.c (xsleep): Check for availability of the sleep 10898 function, in addition to the usleep function. 10899 (get_winsock_error, windows_strerror): Removed (gnulib already 10900 supplies this functionality). 10901 10902 * src/mswindows.h [NEED_GAI_STRERROR]: define gai_strerror 10903 to (gnulib's) strerror, rather than windows_strerror. Removed 10904 error macro definitions provided by gnulib. 10905 (windows_strerror): Removed (gnulib already supplies this 10906 functionality). 10907 10908 * src/host.c: Don't declare h_errno when building on Windows. 10909 10910 * src/Makefile.am (LIBS): Added @W32LIBS@. 10911 (EXTRA_wget_SOURCES): Removed (it's in LIBOBJ now). 10912 (version.c): Removed dependency on $(LDADD), since it may include 10913 dependencies that are not part of the Wget sources (-lwsock32, for 10914 instance). 10915 10916 * src/openssl.c (ssl_check_certificate): Avoid reusing the same buffer 10917 space for successive quoted arguments. Thanks to Steven Schweda 10918 for pointing out the problem. 10919 109202009-09-22 Micah Cowan <micah@cowan.name> 10921 10922 * configure.ac: Added "sleep" and "symlink" to AC_CHECK_FUNCS, 10923 removing the hard-coded definition of HAVE_SYMLINK. When running 10924 on MinGW, compile mswindows.c, and link against libwsock32. 10925 109262009-09-22 Arvind Jamuna Dixit <ardsrk@gmail.com> 10927 10928 * src/http.c (extract_param, parse_content_disposition): Support 10929 RFC 2231 while parsing Content-Disposition header 10930 109312009-09-21 Micah Cowan <micah@cowan.name> 10932 10933 * vms/VMS-WGET.COM: "the the" -> "the". 10934 10935 * po/POTFILES.in: Removed some files that are not using gettext. 10936 10937 * po/*.po: Updated from translationproject.org. 10938 109392009-09-21 Micah Cowan <micah@cowan.name> 10940 10941 * src/progress.c (update_speed_ring): "the the" -> "the". 10942 10943 * src/css-url.c, iri.c, mswindows.c: Removed assert.h inclusion (not 10944 using it). 10945 109462009-09-20 Micah Cowan <micah@cowan.name> 10947 10948 * INSTALL: Various minor adjustments to bring it up to date. 10949 109502009-09-11 Steven Schweda <sms@antinode.info> 10951 10952 * src/utils.c, utils.h (fopen_excl): Make second argument an int, 10953 rather than a bool (so it can handle the appropriate VMS version 10954 of the flag). 10955 10956 * src/main.c (print_version): Don't print LOCALEDIR unless NLS is 10957 enabled. 10958 10959 * src/http.c (gethttp): Pass FOPEN_BIN_FLAG, instead of true. 10960 10961 * src/ftp.c (ftp_retrieve_glob): Cast strcmp to assign to cmp, for a 10962 silly HP build environment. 10963 109642009-09-09 Micah Cowan <micah@cowan.name> 10965 10966 * configure.ac: Add bz2 and lzma dists. 10967 109682009-09-08 Steven Schubiger <stsc@member.fsf.org> 10969 10970 * src/main.c, init.c: Mark the --preserve-permissions and 10971 --html-extension option as deprecated. 10972 109732009-09-08 Micah Cowan <micah@cowan.name> 10974 10975 * po/*.po: Updated from translationproject.org. 10976 109772009-09-07 Micah Cowan <micah@cowan.name> 10978 10979 * tests/run-px: Exit with a failure if there were any tests with 10980 "unknown" exit statuses. 10981 10982 * tests/Test-auth-with-content-disposition.px: New. Test Content-Disposition 10983 support when HTTP authentication is required. 10984 * tests/run-px, Makefile.am (EXTRA_DIST): Added 10985 Test-auth-with-content-disposition.px. 10986 10987 * tests/FTPServer.pm (FTPServer::run): Pass "server behavior" information to 10988 newly-constructed FTPPaths object. 10989 (FTPPaths::initialize): Accept "server behavior" hash. 10990 (FTPPaths::_format_for_list): If server behavior has "bad_list" 10991 set, then always report 0 for the size. 10992 * tests/Test-ftp-bad-list.px: Added. Attempts to reproduce bug 10993 22403... but doesn't. 10994 * tests/run-px, Makefile.am (EXTRA_DIST): Added Test-ftp-bad-list.px. 10995 109962009-09-07 Micah Cowan <micah@cowan.name> 10997 10998 * Makefile.am (distuninstallcheck_listfiles): Don't complain if 10999 /usr/share/info/dir and /etc/wgetrc are left behind after an 11000 uninstall. 11001 11002 * po/Rules-quot (mostlyclean-quot): Add en_US.po for remvoal by 11003 mostlyclean. 11004 (en_US.po-update): Behave properly for VPATH builds. 11005 110062009-09-06 Micah Cowan <micah@cowan.name> 11007 11008 * tests/WgetTest.pm.in (_setup): Don't expect error codes from 11009 _setup_server; none are returned. 11010 (quotechar, _show_diff): Added facilities for expounding on where 11011 output didn't match expectations. 11012 (_verify_download): Use _show_diff. 11013 11014 * tests/FTPTest.pm (_setup_server): Pass value of server_behavior to 11015 FTPServer initialization. 11016 11017 * tests/Test-ftp-pasv-fail.px: Added. 11018 * tests/run-px, Makefile.am (EXTRA_DIST): Added Test-ftp-pasv-fail.px. 11019 11020 * tests/WgetTest.pm.in: Added "server_behavior" to the set of accepted 11021 initialization values. 11022 * tests/FTPServer.pm (__open_data_connection): Add "server_behavior" to 11023 the set of accepted initialization values. 11024 (run): Honor the 'fail_on_pasv' server behavior setting, to 11025 trigger the Wget getftp glitch. 11026 110272009-09-06 Micah Cowan <micah@cowan.name> 11028 11029 * src/ftp.c (getftp, ftp_loop_internal): Separate "len" input/output 11030 parameter (with different meanings for input and output), into two 11031 separate parameters, one input (passed_expected_bytes) and one 11032 output (qtyread). Fixes bug #26870. 11033 110342009-09-06 Gisle Vanem <gvanem@broadpark.no> 11035 11036 * msdos/Makefile.WC: Added compilation of new file msdos.c. 11037 Simplified; no need to have explicit rules for files in ./lib and 11038 ./md5. Just use the suffix search path mechanism in wmake. 11039 110402009-09-06 Gisle Vanem <gvanem@broadpark.no> 11041 11042 * msdos/Makefile.DJ: Added compilation of new file msdos.c. 11043 110442009-09-05 Steven Schubiger <stsc@member.fsf.org> 11045 11046 * tests/run-px: Introduce two new diagnostics: Skip and Unknown. 11047 11048 * tests/WgetFeature.pm (import): Parse the version output of Wget 11049 and assert the availability of a feature. 11050 11051 * tests/WgetFeature.cfg: Messages to be printed in absence of a 11052 required feature. 11053 11054 * tests/Test-ftp-iri-disabled.px, Test-ftp-iri-fallback.px, 11055 Test-ftp-iri-recursive.px, Test-ftp-iri.px, Test-idn-cmd.px, 11056 Test-idn-headers.px, Test-idn-meta.px, Test-idn-robots.px, 11057 Test-iri-forced-remote.px, Test-iri-list.px, 11058 Test-iri-percent.px, Test-iri.px: Use WgetFeature.pm to 11059 check for the presence of the IDN/IRI feature. 11060 11061 * tests/Test-proxied-https-auth.px: Replace grepping for a feature 11062 with loading WgetFeature.pm at compile-time. 11063 11064 * tests/Makefile.am: Add WgetFeature.pm and WgetFeature.cfg 11065 to EXTRA_DIST. 11066 110672009-09-05 Steven Schubiger <stsc@member.fsf.org> 11068 11069 * src/retr.h: Declare set_local_file() to avoid build warnings. 11070 110712009-09-05 Micah Cowan <micah@cowan.name> 11072 11073 * tests/Test-ftp-recursive.px: Added. 11074 * tests/run-px, Makefile.am (EXTRA_DIST): Added Test-ftp-recursive.px. 11075 11076 * tests/FTPTest.pm (_setup_server): Don't construct the "input" 11077 directory's contents, just pass the URLs structure to 11078 FTPServer->new. 11079 * tests/FTPServer.pm: Rewrote portions, so that the server now uses the 11080 information from the %urls hash directly, rather than reading from 11081 real files. Added an FTPPaths package to the file. 11082 110832009-09-05 Micah Cowan <micah@cowan.name> 11084 11085 * configure.ac: If we can't find idna.h, check to see if it's 11086 because we need to add /usr/include/idn to the inclusion 11087 path (for OpenSolaris). 11088 110892009-09-05 Gisle Vanem <gvanem@broadpark.no> 11090 11091 * src/connect.c, init.c, main.c, openssl.c, options.h: Replace 11092 "ifdef MSDOS" with "ifdef USE_WATT32" since DOS-targets in fact 11093 use the Watt-32 tcp/ip stack. 11094 110952009-09-05 Gisle Vanem <gvanem@broadpark.no> 11096 11097 * msdos/config.h: Added 'HAVE_ALLOCA_H' for Watcom 1.5+. Added 11098 'USE_WATT32' since all DOS-targets use the Watt-32 tcp/ip stack. 11099 Added meaningless dummy LOCALEDIR. 11100 11101 * msdos/Makefile.WC: A much needed update. Added rules for many files 11102 in ./lib, css.c and version.c. 11103 11104 * msdos/Makefile.DJ: A much needed update. Added rules for css.c and 11105 version.c. 11106 111072009-09-04 Steven Schubiger <stsc@member.fsf.org> 11108 11109 * configure.ac: Place gl_EARLY and md5_EARLY before the gettext 11110 macros in order to silence autoconf warnings. 11111 111122009-09-04 Micah Cowan <micah@cowan.name> 11113 11114 * tests/WgetTest.pm.in (run): Error-checking improvements. 11115 111162009-09-04 Micah Cowan <micah@cowan.name> 11117 11118 * src/Makefile.am: Move build_info.c to wget_SOURCES from 11119 nodist_wget_SOURCES, reduce dependencies, and invoke build_info.pl 11120 in its new home, $(top_srcdir)/build-aux. 11121 111222009-09-04 Micah Cowan <micah@cowan.name> 11123 11124 * doc/wget.texi (Time-Stamping): "older" -> "not newer". 11125 11126 * doc/Makefile.am (install.man, install.wgetrc): Use $(mkinstalldirs), 11127 not $(top_srcdir)/mkinstalldirs. 11128 111292009-09-04 Micah Cowan <micah@cowan.name> 11130 11131 * Makefile.am (EXTRA_DIST): build_info.pl -> 11132 build-aux/build_info.pl 11133 11134 * build-aux/build_info.pl: Moved from top directory. 11135 11136 * md5/*: Updated md5 from gnulib. 11137 11138 * configure.ac: Configured build-aux/ as auxiliarry directory. 11139 11140 * build-aux/compile, build-aux/config.guess, 11141 build-aux/config.rpath, build-aux/config.sub, build-aux/depcomp, 11142 build-aux/install-sh, build-aux/link-warning.h, 11143 build-aux/mdate-sh, build-aux/missing, build-aux/mkinstalldirs, 11144 build-aux/texinfo.tex, build-aux/useless-if-before-free, 11145 build-aux/vc-list-files, build-aux/ylwrap: Moved from top 11146 directory. 11147 11148 * build-aux/announce-gen: Imported from gnulib. 11149 * build-aux/update-copyright: Imported from gnulib. 11150 * build-aux/gnupload: Imported from gnulib. 11151 * lib/Makefile.am, m4/gnulib-cache.m4, m4/gnulib-comp.m4: Adjusted 11152 for announce-gen, update-copyright, and gnupload. 11153 111542009-09-03 gettextize <bug-gnu-gettext@gnu.org> 11155 11156 * m4/gettext.m4: Upgrade to gettext-0.17. 11157 * m4/iconv.m4: Upgrade to gettext-0.17. 11158 * m4/lib-link.m4: Upgrade to gettext-0.17. 11159 * m4/po.m4: Upgrade to gettext-0.17. 11160 11161 * po/Makefile.in.in: Upgrade to gettext-0.17. 11162 11163 * configure.ac (AM_GNU_GETTEXT_VERSION): Bump to 0.17. 11164 111652009-09-03 Micah Cowan <micah@cowan.name> 11166 11167 * src/ftp-ls.c (ftp_parse_vms_ls): Replace use of localtime_r with 11168 localtime, as not all platforms have localtime_r. 11169 11170 * src/Makefile.am (wget_SOURCES): Rearranged some of the file order, 11171 so .c files and .h files are apart. Added gettext.h, so that it 11172 shows up in the dist. 11173 111742009-09-03 Micah Cowan <micah@cowan.name> 11175 11176 * NEWS: Give credit to jff for SSL security fix, call attention to 11177 IRI support's dependence on libidn and libiconv, and note that 11178 --html-extension is still accepted, though deprecated. 11179 11180 * lib/*, m4/*: Updated gnulib. 11181 * lib/getpagesize.c, lib/memchr.c, lib/memchr.valgrind, 11182 lib/stddef.in.h, lib/str-two-way.h, lib/strcasecmp.c, 11183 lib/strcasestr.c, lib/strings.in.h, lib/strncasecmp.c, 11184 m4/getpagesize.m4, m4/memchr.m4, m4/mmap-anon.m4, 11185 m4/stddef_h.m3, m4/strcase.m4, m4/strcasestr.m4, 11186 m4/strings_h.m4, m4/wchar_t.m4: Added, via gnulib --import 11187 strcasestr. 11188 11189 * configure.ac: Move AM_GNU_GETTEXT below AC_AIX, to shut up 11190 autoconf warnings. 11191 111922009-09-02 Micah Cowan <micah@cowan.name> 11193 11194 * tests/Makefile.am (unit-tests): explicit dependency is 11195 unnecessary (and harmful, as it overrides the automatic one). 11196 111972009-09-02 Micah Cowan <micah@cowan.name> 11198 11199 * src/gettext.h: Refreshed from gettext 0.17. 11200 11201 * src/test.c: Added definition of program_name variable, required by 11202 lib/error.c (libgnu.a). Doesn't cause problems until you try to 11203 build on a non-GNU system... 11204 11205 * src/build_info.c.in: Removed useless "+gettext" feature ad. 11206 112072009-09-02 Micah Cowan <micah@cowan.name> 11208 11209 * po/Rules-quot (en_US.po-update): Remove use of GNU make's 11210 non-portable $^ variable. 11211 112122009-09-01 Steven Schubiger <stsc@member.fsf.org> 11213 11214 * tests/Makefile.am: Add Test-cookies.px, Test-cookies-401.px 11215 and Test-restrict-ascii.px to EXTRA_DIST. 11216 112172009-09-01 Micah Cowan <micah@cowan.name> 11218 11219 * tests/Makefile.am (../src/libunittest.a): Make it a phony target, 11220 so we always make sure to get up-to-date unit-test runs. 11221 112222009-08-31 Steven Schubiger <stsc@member.fsf.org> 11223 11224 * tests/Makefile.am: Add Test-k.px to EXTRA_DIST. 11225 112262009-08-29 Steven Schubiger <stsc@member.fsf.org> 11227 11228 * tests/run-px: Add Test-k.px to the list. 11229 11230 * tests/Test-k.px: Test escaping of semicolons in local file strings. 11231 112322009-08-29 Steven Schubiger <stsc@member.fsf.org> 11233 11234 * src/convert.c (local_quote_string): Percent-encode semicolons 11235 in local file strings. 11236 112372009-08-27 Micah Cowan <micah@cowan.name> 11238 11239 * tests/run-px: Added Test-cookies.px, Test-cookies-401.px 11240 11241 * tests/Test-cookies.px: Basic testing to make sure Wget doesn't send 11242 cookies; no path/domain checking. 11243 11244 * tests/Test-cookies.px: Test to make sure Wget heeds cookies when they 11245 are sent with a 401 response (#26775). 11246 11247 * tests/HTTPServer.pm (send_response): Don't try to substitute port in 11248 response body, if there isn't one. 11249 (verify_request_headers): Avoid uninitialized warning when an 11250 expected header isn't provided by Wget. 11251 112522009-08-27 Micah Cowan <micah@cowan.name> 11253 11254 * tests/WgetTest.pm.in (run): Shift the errcode right by 8 binary places. 11255 11256 * tests/Test--spider-fail.px, Test--spider-r--no-content-disposition.px, 11257 Test--spider-r--no-content-disposition-trivial.px, 11258 Test--spider-r-HTTP-Content-Disposition.px, Test--spider-r.px, 11259 Test-O-nonexisting.px, Test-cookies-401.px, 11260 Test-nonexisting-quiet.px: Adjusted "expected error code"; Wget's 11261 exit codes have changed. 11262 112632009-08-27 Micah Cowan <micah@cowan.name> 11264 11265 * src/wget.h (uerr_t): added new VERIFCERTERR code for SSL certificate 11266 problems. Marked exit codes that are defined but never used (at 11267 least, the ones I could find). 11268 11269 * src/retr.c, retr.h (retrieve_url): Added a new boolean argument to 11270 determine whether an exit status should be recorded. 11271 (retrieve_from_file): Adjust to new retrieve_url signature. 11272 11273 * src/res.c (res_retrieve_file): Don't have retrieve_url record an 11274 exit status for robots.txt. 11275 11276 * src/recur.c (retrieve_tree): Adjust to new retrieve_url signature. 11277 11278 * src/main.c (main): Use the exit status stored by retrieve_url. 11279 11280 * src/http.c (gethttp): Distinguish certificate verification problems 11281 from SSL connection issues. 11282 (http_loop): Handle newly-created VERIFCERTERR error code. 11283 11284 * src/exits.c, exits.h: Newly added. 11285 11286 * src/Makefile.am (wget_SOURCES): Add exits.c and exits.h. 11287 112882009-08-27 Micah Cowan <micah@cowan.name> 11289 11290 * src/http.c (gethttp): Make sure Wget heeds cookies when they 11291 are sent with a 401 response; or any other sort of response for 11292 that matter (#26775). 11293 112942009-08-27 Micah Cowan <micah@cowan.name> 11295 11296 * doc/texi2pod.pl: Handle @asis in table-element formatting. 11297 11298 * doc/wget.texi (Exit Status): Document new exit codes. 11299 113002009-08-27 Micah Cowan <micah@cowan.name> 11301 11302 * NEWS: Mention the changes to exit codes. 11303 113042009-08-27 Micah Cowan <micah@cowan.name> 11305 11306 * NEWS: Add mention of the NUL characters SSL security fix. 11307 113082009-08-19 Micah Cowan <micah@cowan.name> 11309 11310 * src/openssl.c (ssl_check_certificate): Only warn about an attack if 11311 the hostname would otherwise have matched. Also some formatting 11312 cleanup. 11313 113142009-08-19 Joao Ferreira <joao@joaoff.com> 11315 11316 * src/openssl.c (ssl_check_certificate): Detect embedded NUL 11317 characters in the SSL certificate common name. 11318 113192009-08-17 Tony Lewis <tlewis@exelana.com> 11320 11321 * src/http.c (gethttp): Ensure that we parse Content-Length before we 11322 attempt to refer to its value. Without this fix, NTLM support was 11323 completely buggered. #27192 11324 113252009-08-09 Michael Baeuerle <michael.baeuerle@gmx.net> 11326 11327 * src/ftp.c: #include <strings.h> for strcasecmp. 11328 113292009-08-02 Micah Cowan <micah@cowan.name> 11330 11331 * doc/wget.texi (Option Syntax): "This is a complete equivalent of" -> 11332 "This is completely equivalent to". Thanks to Reuben Thomas for 11333 catching this. 11334 113352009-07-28 Micah Cowan <micah@cowan.name> 11336 11337 * src/main.c (option_data): Rename --html-extension to 11338 --adjust-extension. 11339 (print_help): Ditto. 11340 11341 * src/options.h (struct option): Rename html_extension to 11342 adjust_extension. 11343 * src/http.c (gethttp): Ditto. 11344 * src/convert.c (local_quote_string): Ditto. 11345 11346 * src/init.c (commands): Add "adjustextension", and reflect rename 11347 change for opt.adjust_extension, for both "adjustextension" and 11348 "htmlextension". 11349 113502009-07-28 Micah Cowan <micah@cowan.name> 11351 11352 * doc/wget.texi (Download Options): Document "lowercase", "uppercase", 11353 and the new "ascii" specifier for --restrict-file-names. 11354 (HTTP Options): Rename --html-extension to --adjust-extension. 11355 (Wgetrc Commands): Rename html_extension to adjust_extension. 11356 113572009-07-28 Micah Cowan <micah@cowan.name> 11358 11359 * NEWS: Mention some more previously undocumented items, the 11360 new "ascii" specifer for --restrict-file-names, and the renaming 11361 of --html-extension to --adjust-extension. 11362 113632009-07-27 Petr Pisar <petr.pisar@atlas.cz> 11364 11365 * src/main.c (print_help): Fixed a couple typos. 11366 113672009-07-27 Petr Pisar <petr.pisar@atlas.cz> 11368 11369 * po/Makevars (MSGID_BUGS_ADDRESS): Fixed. 11370 113712009-07-27 Micah Cowan <micah@cowan.name> 11372 11373 * tests/Test-restrict-ascii.px: New. 11374 11375 * tests/run-px: Added Test-restrict-ascii.px. 11376 113772009-07-27 Micah Cowan <micah@cowan.name> 11378 11379 * src/options.h (struct options): Added restrict_files_nonascii 11380 boolean field. 11381 11382 * src/url.c (FILE_CHAR_TEST): Add check for chars outside the ASCII 11383 range. 11384 11385 * src/init.c (defaults): Add restrict_files_nonascii to initialization. 11386 (cmd_spec_restrict_file_names): Allow parsing of "ascii" keyword. 11387 113882009-07-27 Marcel Telka <marcel@telka.sk> 11389 11390 * src/iri.c (do_conversion): Typo: invalide -> invalid 11391 113922009-07-26 Micah Cowan <micah@cowan.name> 11393 11394 * tests/Test-ftp-iri.px, Test-ftp-iri-fallback.px, 11395 Test-ftp-iri-recursive.px, Test-ftp-iri-disabled.px, 11396 Test-idn-cmd.px, Test-idn-robots.px: Adjust wget invocations, 11397 replacing --locale with --local-encoding. 11398 113992009-07-26 Micah Cowan <micah@cowan.name> 11400 11401 * src/main.c (option_data): Rename --locale option to --local-encoding 11402 (print_help): Document --no-iri, --local-encoding, and 11403 --remote-encoding, within usage message. Remove defunct 11404 --preserve-permissions. 11405 114062009-07-26 Micah Cowan <micah@cowan.name> 11407 11408 * doc/wget.texi (Download Options): Change --iri item to --no-iri; 11409 rename --locale to --local-encoding. 11410 (Wgetrc Commands): Document iri, local_encoding, remote_encoding, 11411 ask_password, auth_no_challenge, and keep_session_cookies. 11412 114132009-07-23 Micah Cowan <micah@cowan.name> 11414 11415 * src/progress.c (get_eta): Change "Translation note" in comment to 11416 "TRANSLATORS", so it actually appears in wget.pot. 11417 114182009-07-10 Micah Cowan <micah@cowan.name> 11419 11420 * util/paramcheck.pl (find_documentation): Added. 11421 (emit_undocumented_opts): Check for documentation in both TexInfo 11422 and --help string. 11423 114242009-07-07 Steven Schubiger <stsc@member.fsf.org> 11425 11426 * tests/Makefile.am: Add IDN/IRI test files and Test-meta-robots.px 11427 to EXTRA_DIST. 11428 114292009-07-06 Micah Cowan <micah@cowan.name> 11430 11431 * src/main.c (print_help): Improve documentation of --base. 11432 114332009-07-06 Micah Cowan <micah@cowan.name> 11434 11435 * doc/wget.texi (Logging and Input File Options): Alter description of 11436 --input-file, implying that --force-html isn't necessary when the 11437 input is in HTML file. Improve accuracy of --base description. 11438 (Wgetrc Commands): Improve accuracy of "base" description. 11439 (HTTP Options): Clarify operation of --post-file. 11440 114412009-07-05 Petr Pisar <petr.pisar@atlas.cz> 11442 11443 * src/main.c (print_version): Mark initial line for translation, along 11444 with (env), (user), and (system). Change copyright year to 2009. 11445 11446 * src/http.c (http_loop): Space after colon. 11447 11448 * src/gnutls.c (ssl_check_certificate): Use quote function, rather 11449 than explicit quotes. 11450 114512009-07-05 Micah Cowan <micah@cowan.name> 11452 11453 * tests/Test-meta-robots.px: Added. 11454 11455 * tests/run-px: Add Test-meta-robots.px to the list. 11456 114572009-07-05 Micah Cowan <micah@cowan.name> 11458 11459 * src/html-url.c (tag_handle_meta): Handle meta name="robots" 11460 properly: deal with whitespace, commas after... 11461 11462 * src/netrc.c (parse_netrc): Rename local-scope variable "quote" to 11463 "qmark", to avoid conflict with the function name. 11464 114652009-07-05 Micah Cowan <micah@cowan.name> 11466 11467 * src/Makefile.am (version.c): Add dependency on configure.ac. 11468 11469 * src/iri.c: Mark some strings for translation. 11470 114712009-07-05 Micah Cowan <micah@cowan.name> 11472 11473 * po/Rules-quot: Added targets to build en@{quot,boldquot}.po 11474 11475 * po/POTFILES.in: Added src/gnutls.c, src/iri.c. 11476 11477 * po/*.po: Updated translations from TP. New translation: 11478 Lithuanian. 11479 11480 * lib/*, md5/*: Updated gnulib. 11481 114822009-07-04 Steven Schweda <sms@antinode.info> 11483 11484 * vms/COLLECT_DEPS.COM, vms/config.h_vms, vms/decc_ver.c, 11485 vms/DESCRIP_CONFIG.MMS, vms/DESCRIP_DEPS.MMS, 11486 vms/DESCRIP_MKDEPS.MMS, vms/DESCRIP.MMS, vms/DESCRIP_SRC.MMS, 11487 vms/vms.c, vms/vms.h, vms/vms_ip.h, vms/vms_name_fix.sh, 11488 vms/VMS_NOTES.TXT, vms/VMS-WGET.COM, vms/WGET.HLP, 11489 vms/WGET_MULTINET.OPT, vms/WGET.OPT, vms/WGET_SSL_HP.OPT, 11490 vms/WGET_SSL.OPT: Added. 11491 114922009-07-04 Steven Schweda <sms@antinode.info> 11493 11494 * src/wget.h (ORIG_SFX): Macro added, to supply an alternative "_orig" 11495 suffix on VMS. 11496 11497 * src/connect.c, host.c, host.h, main.c: Include "vms_ip.h" rather 11498 than <netdb.h> on VMS systems. 11499 11500 * src/convert.c (write_backup_file): Use "_orig" rather than ".orig" 11501 on VMS. 11502 11503 * src/ftp-basic.c (ftp_list): Don't use LIST -a on VMS servers. 11504 11505 * src/ftp.c [__VMS]: Include "vms.h" 11506 * src/ftp.c (getftp): Disable some unhelpful "for VMS" code. Pass the 11507 OS type to ftp_list. 11508 (getftp) [__VMS]: Alter the filename as required, and invoke fopen 11509 with extra optional arguments. 11510 (ftp_retrieve_list): Set permissions before setting the times. 11511 11512 * src/ftp-ls.c [__VMS]: Various improvements. 11513 11514 * src/http.c (SET_USER_AGENT): Added. Include operating-system info in 11515 the User-Agent header. 11516 (gethttp): Use ORIG_SFX macro. 11517 (gethttp) [__VMS]: invoke fopen with extra arguments to 11518 communicate file type. 11519 (http_loop): Add cast to time_t. 11520 11521 * src/init.c (wgetrc_user_file_name) [__VMS]: Adjustments for where to 11522 find the .wgetrc. 11523 11524 * src/log.c: Adjustments to improve handling of log files on VMS. 11525 11526 * src/main.c [__VMS]: Added --ftp-stmlf option (and associated 11527 documentation). Adjust description of backup-suffixes, as they now 11528 differ for VMS. 11529 (print_help, print_version): Include OS type in version 11530 information. 11531 (main) [__VMS]: Invoke fopen with extra options, to specify file 11532 type information. 11533 11534 * src/netrc.c (search_netrc) [__VMS]: Fix .netrc-finding. 11535 11536 * src/openssl.c, openssl.h (ssl_connect_wget): Renamed from ssl_connect. 11537 11538 * src/options.h (struct options): Add ftp_stmlf field. 11539 11540 * src/retr.c (write_data) [__VMS]: Avoid fflush. 11541 11542 * src/url.c [__VMS]: Include vms.h. 11543 * src/url.c (url_file_name) [__VMS]: Handle naming as required for VMS. 11544 11545 * src/utils.c [__VMS]: Include vms.h. Various added facilities for VMS 11546 needs. 11547 115482009-07-04 Steven Schubiger <stsc@member.fsf.org> 11549 11550 * src/url.c (url_parse): If an URL scheme is invalid, distinguish 11551 between an unsupported or missing scheme. 11552 11553 * src/url.c: Add a "missing scheme" entry to parse_errors. 11554 115552009-07-04 Micah Cowan <micah@cowan.name> 11556 11557 * src/main.c (print_version): Allow localization of the version-info 11558 labels, eschew attempts at alignment (which is complicated when 11559 handling translated strings), and avoid using printf() with 11560 variable-stored format strings that lack conversion 11561 specifications. 11562 (format_and_print_line): For similar reasons, don't calculate 11563 line-continuation tabulation based on the number of bytes in a 11564 string. 11565 115662009-07-03 Micah Cowan <micah@cowan.name> 11567 11568 * tests/Test-ftp-iri-disabled.px, Test-iri-disabled.px: 11569 --iri=no --> --no-iri 11570 115712009-07-03 Micah Cowan <micah@cowan.name> 11572 11573 * src/iri.h (iri_dup): Provide macro definition for when IRIs are 11574 disabled. 11575 11576 * src/Makefile.am (LIBS): Added @LIBICONV@. 11577 (wget_SOURCES): Added iri.h. 11578 (EXTRA_wget_SOURCES): Added iri.c, so it gets packaged even if IRI 11579 support was disabled. 11580 115812009-07-03 Micah Cowan <micah@cowan.name> 11582 11583 * doc/wget.texi (Download Options): --iri=no --> --no-iri 11584 (Contributors): Add Saint Xavier. 11585 115862009-07-03 Micah Cowan <micah@cowan.name> 11587 11588 * configure.ac: Ensure LIBICONV is empty if IRIs are disabled. 11589 11590 * AUTHORS: Added Ted Mielczarek and Saint Xavier. 11591 11592 * NEWS: Added items for IRI support, new --version information. 11593 115942009-07-02 Micah Cowan <micah@cowan.name> 11595 11596 * src/recur.c (url_enqueue): Quote enqueue/dequeue debug messages. 11597 11598 * src/html-url.c (append_url): Change "merge()" quoting style from 11599 locale_quoting_style to escape_quoting_style. 11600 116012009-07-01 Steven Schubiger <stsc@member.fsf.org> 11602 11603 * src/Makefile.am: Add a rule to generate build_info.c and list 11604 the build_info.c.in file in EXTRA_DIST. Adjust elsewhere 11605 where needed. 11606 11607 * src/build_info.c: Remove this static source file. 11608 11609 * src/build_info.c.in: Data for generation of build_info.c. 11610 116112009-07-01 Steven Schubiger <stsc@member.fsf.org> 11612 11613 * Makefile.am: Add build_info.pl to EXTRA_DIST. 11614 11615 * build_info.pl: Generate build_info.c from data. 11616 116172009-07-01 Micah Cowan <micah@cowan.name> 11618 11619 * tests/HTTPServer.pm (send_response): Invocation of 11620 verify_request_headers, to support testing of Wget-sent header 11621 values. 11622 (verify_request_headers): Added. 11623 11624 * tests/Test-iri.px: Added verification checks for Referer values. 11625 116262009-07-01 Micah Cowan <micah@cowan.name> 11627 11628 * src/retr.c (retrieve_url): Use the existing "redirect" label, 11629 instead of superfluous "second_try". Removed no-longer-accurate 11630 debug statement. Use the "newloc" parameter to store the fallback 11631 URL, when IRI version was rejected. 11632 11633 * src/recur.c (retrieve_tree): Always use the parsed URL for tracking 11634 the Referer, since that's the one we actually requested (if 11635 there's a difference in terms of percent-encodings and such). 11636 116372009-06-29 Micah Cowan <micah@cowan.name> 11638 11639 * tests/WgetTest.pm.in (_cleanup): Allow cleanup of test directories to 11640 be skipped at user discretion. 11641 11642 * tests/run-px, Test-iri-percent.px, Test-ftp-iri-recursive.px: Added 11643 test for percent-coded value preservation, FTP recursion when IRI 11644 support's on. 11645 116462009-06-29 Micah Cowan <micah@cowan.name> 11647 11648 * src/html-url.c (append_url): Quote some more arguments that might 11649 contain characters that are inappropriate to display for the 11650 current locale. 11651 11652 * src/retr.c (retrieve_from_file): Be sure to pass iri information 11653 when parsing an input-fle url, and be sure to hand a clean iri 11654 struct, off to retrieve_tree and retrieve_url. 11655 11656 * src/iri.c, iri.h (iri_dup): Added. 11657 11658 * src/retr.c (retrieve_url): Re-parse for IRI fallback. 11659 11660 * src/main.c (main): Set up iri before the url_parse invocation (so we 11661 can use it). 11662 116632009-06-20 Micah Cowan <micah@cowan.name> 11664 11665 * doc/wget.texi (Contributors): Added Jay Krell. 11666 116672009-06-20 Jay Krell <jay.krell@cornell.edu> 11668 11669 * src/sysdep.h (_ALL_SOURCE): (small change) Define the _ALL_SOURCE 11670 macro on INTERIX systems. (I switched the location from ftp.c to 11671 sysdep.h --mjc) 11672 116732009-06-15 Micah Cowan <micah@cowan.name> 11674 11675 * src/ftp.c (getftp): If we can't accept the connection, return 11676 CONERROR, not whatever the contents of err happens to be. Fixes 11677 bug #25015. 11678 11679 * src/retr.c (fd_read_body): Make both args to progress_create 11680 consistent, resulting in an accurate progress display. Fixes bug 11681 #24948. 11682 116832009-06-14 Phil Pennock <mutt-dev@spodhuis.org> (tiny change) 11684 * src/host.h: Declare `is_valid_ip_address'. 11685 * src/host.c (is_valid_ip_address): New function. 11686 * src/http.c (gethttp): Specify the hostname to ssl_connect_wget. 11687 * src/gnutls.c (ssl_connect_wget): Specify the server name. 11688 * src/openssl.c (ssl_connect_wget): Likewise. 11689 * src/ssl.h: Change method signature for ssl_connect_wget. 11690 116912009-06-14 Micah Cowan <micah@cowan.name> 11692 11693 * tests/Makefile.am (EXTRA_DIST): Include all the tests, run-px, and 11694 certs/, to make distcheck happy. 11695 116962009-06-14 Micah Cowan <micah@cowan.name> 11697 11698 * src/Makefile.am (wget_SOURCES): css-tokens.h needs to ship with 11699 dist, too. 11700 117012009-06-14 Micah Cowan <micah@cowan.name> 11702 11703 * po/Makefile.in.in (distclean): remove en_US.po, too. 11704 11705 * Makefile.am: Include md5 as a subdir unconditionally. 11706 It may result in useless compilation, and additional risk of 11707 breaking a build of something that isn't actually needed, but 11708 otherwise it's too much of a hassle to manage a failure-free 11709 distcheck. 11710 117112009-06-14 Micah Cowan <micah@cowan.name> 11712 11713 * doc/Makefile.am (wget.pod): $(srcdir)/version.texi -> version.texi 11714 117152009-06-13 Micah Cowan <micah@cowan.name> 11716 11717 * src/init.c: Rename setval_internal_wrapper to setval_internal_tilde, 11718 ensure we don't "replace" the tilde unless it's actually 11719 present. Clean up some minor GNU style issues. 11720 117212009-06-13 Julien Pichon <julienpichon7@gmail.com> 11722 11723 * src/init.c: Handle tilde-expansion in wgetrc commands, without 11724 resorting to setting/unsetting globals to change behavior in one 11725 call location. 11726 117272009-06-12 Micah Cowan <micah@cowan.name> 11728 11729 * src/host.c: Include <sys/types.h> before <sys/socket.h>. Not 11730 required by POSIX any more, but some older systems (such as 11731 FreeBSD 4.1) still need it, and it doesn't seem like it could 11732 hurt... 11733 11734 * src/build_info.c (library): Handle "https" as a feature in its own 11735 right, apart from "gnutls" and "openssl". 11736 11737 * src/host.c: Declare h_errno if no declaration is provided. Idea 11738 thanks to Maciej W. Rozycki. 11739 117402009-06-12 Micah Cowan <micah@cowan.name> 11741 11742 * doc/wget.texi (Download Options): More accuracy on what happens when 11743 -nd is used with -r or -p. 11744 117452009-06-12 Micah Cowan <micah@cowan.name> 11746 11747 * configure.ac: Check for h_errno declaration. Idea thanks to 11748 Maciej W. Rozycki. 11749 117502009-06-11 Xin Zou <zouxin2008@gmail.com> 11751 11752 * src/http.c (gethttp): Fix some memory leaks. 11753 117542009-06-11 Micah Cowan <micah@cowan.name> 11755 11756 * src/http.c (http_atotm): Handle potential for setlocale's return 11757 value to be static storage. Thanks to Benjamin Wolsey 11758 <bwy@benjaminwolsey.de>. 11759 11760 * src/sysdep.h: Need NAMESPACE_TWEAKS on non-Linux glibc-based 11761 systems, too. Thanks to Robert Millan. 11762 117632009-06-11 Micah Cowan <micah@cowan.name> 11764 11765 * doc/wget.texi (Contributors): Added Xin Zou, Benjamin Wolsley, and 11766 Robert Millan. 11767 117682009-06-11 Joao Ferreira <joao@joaoff.com> 11769 11770 * doc/wget.texi (Option Syntax): Fixed contradictory and confusing 11771 explanation of --folow-ftp and negation. 11772 117732009-06-11 Benjamin Wolsey <bwy@benjaminwolsey.de> 11774 11775 * tests/Test-proxied-https-auth.px: Take an optional argument for the 11776 top source directory, so we can find the cert and key. 11777 11778 * tests/run-px: Provide the top source directory as an argument, so 11779 scripts can find their way around. 11780 117812009-06-10 Micah Cowan <micah@cowan.name> 11782 11783 * doc/sample.wgetrc: Add "https_proxy" to the proxy examples. Thanks 11784 to Martin Paul <martin@par.univie.ac.at> for the suggestion. 11785 117862009-05-28 Steven Schubiger <stsc@member.fsf.org> 11787 11788 * src/ftp.c (ftp_get_listing): Update the "listing file" 11789 string after calling ftp_loop_internal(). 11790 117912009-05-27 Steven Schubiger <stsc@member.fsf.org> 11792 11793 * src/ftp.c (ftp_get_listing): Duplicate the "listing file" 11794 string to avoid memory corruption when FOPEN_EXCL_ERR is 11795 encountered. 11796 117972009-05-17 Steven Schubiger <stsc@member.fsf.org> 11798 11799 * src/progress.c (eta_to_human_short): Fix the remaining hours 11800 to be displayed. Spotted by Tadeu Martins (#26411). 11801 118022009-04-24 Micah Cowan <micah@cowan.name> 11803 11804 * src/hash.c: Change stdint.h inclusion to use HAVE_STDINT_H, not C99 11805 check. 11806 11807 * src/connect.c: stdint.h inclusion added. 11808 11809 Thanks to Markus Duft <mduft@gentoo.org> for a similar patch. 11810 118112009-04-20 Micah Cowan <micah@cowan.name> 11812 11813 * src/Makefile.am (version.c): Fix unportable use of "echo -n". 11814 118152009-04-13 Steven Schubiger <stsc@member.fsf.org> 11816 11817 * src/ftp.c (ftp_retrieve_list): Move the duplicated code that 11818 determines the local file to a function. 11819 11820 * src/http.c (http_loop): Likewise. 11821 11822 * src/retr.c (set_local_file): New function. 11823 118242009-04-11 Steven Schubiger <stsc@member.fsf.org> 11825 11826 * tests/run-px: Skip testing with real rc files by setting 11827 SYSTEM_WGETRC and WGETRC to /dev/null. 11828 118292009-04-11 Steven Schubiger <stsc@member.fsf.org> 11830 11831 * src/init.c (initialize): Run a custom SYSTEM_WGETRC when 11832 provided as an environment variable. 11833 118342009-03-03 Steven Schubiger <stsc@member.fsf.org> 11835 11836 * src/ftp.c, src/http.c, src/main.c, src/recur.h, 11837 tests/Makefile.am: Update the copyright years. 11838 118392009-02-27 Steven Schubiger <stsc@member.fsf.org> 11840 11841 * src/ftp.c (ftp_loop_internal): Don't claim for FTP retrievals 11842 when writing to standard output either that the document 11843 has been saved. Addresses bug #20520 again. 11844 118452009-02-27 Gisle Vanem <gvanem@broadpark.no> 11846 11847 * src/main.c (main): "freopen (NULL,.." causes an assertion in MSVC 11848 debug-mode. I.e. NULL isn't legal. But the "CONOUT$" device works 11849 fine. 11850 118512009-02-25 Benjamin Wolsey <bwy@benjaminwolsey.de> 11852 11853 * tests/Makefile.am (run-px-tests): Ensure run-px is run from srcdir. 11854 11855 * tests/run-px: Include modules from srcdir. 11856 118572009-02-21 Steven Schubiger <stsc@member.fsf.org> 11858 11859 * src/http.c (http_loop): When a document is written to 11860 standard output, don't claim it has been saved to a file. 11861 Addresses bug #20520. 11862 118632009-02-18 Steven Schubiger <stsc@members.fsf.org> 11864 11865 * src/recur.h: Remove the dangling declaration for recursive_cleanup(). 11866 118672009-02-01 Gerardo E. Gidoni <gerel@gnu.org> 11868 11869 * src/main.c, recur.c, recur.h, res.c, retr.c, retr.h: restructured code to 11870 avoid multiple 'url_parse' calls. 11871 118722009-01-23 Steven Schubiger <stsc@members.fsf.org> 11873 11874 * util/freeopts, util/rmold.pl, util/trunc.c: Remove 11875 unnecessary whitespace. 11876 118772008-12-04 Micah Cowan <micah@cowan.name> (not copyrightable) 11878 11879 * tests/run-px, Test-idn-robots.px: Added test for robots-file 11880 downloads. 11881 11882 * tests/Test-idn-cmd.px, Test-idn-meta.px, Test-idn-headers.px: 11883 Fix test names. 11884 118852008-11-27 Saint Xavier <wget@sxav.eu> 11886 11887 * src/http.c (gethttp): Move authentication code before filename 11888 allocation avoiding fallbacking on default filename because 11889 "Content-Disposition" header wasn't present before authentcation 11890 has been completed. Fixes bug #24862. 11891 118922008-11-26 Micah Cowan <micah@cowan.name> (not copyrightable) 11893 11894 * tests/Test-ftp-iri-disabled.px, Test-ftp-iri-fallback.px, 11895 Test-ftp-iri.px, Test-idn-cmd.px, Test-idn-headers.px, 11896 Test-idn-meta.px, Test-iri-disabled.px, 11897 Test-iri-forced-remote.px, Test-iri-list.px, Test-iri.px: More 11898 module-scope warnings. 11899 119002008-11-25 Steven Schubiger <stsc@members.fsf.org> 11901 11902 * tests/WgetTest.pm.in: Remove the magic interpreter line; 11903 replace -w with lexical warnings. 11904 119052008-11-16 Steven Schubiger <stsc@members.fsf.org> 11906 11907 * src/main.c: Declare and initialize the numurls counter. 11908 11909 * src/ftp.c, http.c: Make the counter visible here and use it. 11910 11911 * src/options.h: Remove old declaration from options struct. 11912 119132008-11-15 Steven Schubiger <stsc@members.fsf.org> 11914 11915 * src/init.c (defaults): Set default waitretry value. 11916 119172008-11-15 Steven Schubiger <stsc@members.fsf.org> 11918 11919 * doc/sample.wgetrc: Comment the waitretry "default" value, 11920 because there is a global one now. 11921 11922 * doc/wget.texi (Download Options): Mention the global 11923 default value. 11924 119252008-11-14 Steven Schubiger <stsc@members.fsf.org> 11926 11927 * src/main.c (format_and_print_line): Use a custom format 11928 string for printing leading spaces. 11929 119302008-11-13 Steven Schubiger <stsc@members.fsf.org> 11931 11932 * tests/FTPServer.pm, FTPTest.pm, HTTPServer.pm, HTTPTest.pm, 11933 WgetTest.pm.in: Clean up leftover whitespace. 11934 119352008-11-13 Micah Cowan <micah@cowan.name> 11936 11937 * src/http.c (gethttp): Don't do anything when content-length >= our 11938 requested range. 11939 119402008-11-12 Steven Schubiger <stsc@members.fsf.org> 11941 11942 * tests/Test-auth-basic.px, Test-auth-no-challenge.px, 11943 Test-auth-no-challenge-url.px, Test-c-full.px, 11944 Test-c-partial.px, Test-c.px, Test-c-shorter.px, 11945 Test-E-k-K.px, Test-E-k.px, Test-ftp.px, 11946 Test-HTTP-Content-Disposition-1.px, 11947 Test-HTTP-Content-Disposition-2.px, 11948 Test-HTTP-Content-Disposition.px, Test-N-current.px, 11949 Test-N-HTTP-Content-Disposition.px, 11950 Test-N--no-content-disposition.px, 11951 Test-N--no-content-disposition-trivial.px, 11952 Test-N-no-info.px, Test--no-content-disposition.px, 11953 Test--no-content-disposition-trivial.px, Test-N-old.px, 11954 Test-nonexisting-quiet.px, Test-noop.px, Test-np.px, 11955 Test-N.px, Test-N-smaller.px, 11956 Test-O-HTTP-Content-Disposition.px, Test-O-nc.px, 11957 Test-O--no-content-disposition.px, 11958 Test-O--no-content-disposition-trivial.px, 11959 Test-O-nonexisting.px, Test-O.px, 11960 Test-proxy-auth-basic.px, Test-Restrict-Lowercase.px, 11961 Test-Restrict-Uppercase.px, 11962 Test--spider-fail.pxm, Test--spider.px, 11963 Test--spider-r-HTTP-Content-Disposition.px, 11964 Test--spider-r--no-content-disposition.px, 11965 Test--spider-r--no-content-disposition-trivial.px, 11966 Test--spider-r.px: Enforce lexically scoped warnings. 11967 11968 * tests/Test-proxied-https-auth.px, run-px: Place use strict 11969 before use warnings. 11970 119712008-11-12 Steven Schubiger <stsc@members.fsf.org> 11972 11973 * tests/FTPServer.pm, FTPTest.pm, HTTPServer.pm, HTTPTest.pm: 11974 Remove the magic interpreter line, because it cannot be 11975 used fully. Substitute -w with use warnings. 11976 119772008-11-12 Steven Schubiger <stsc@members.fsf.org> 11978 11979 * src/main.c (print_version): Hand the relevant 11980 xstrdup/xfree calls back to format_and_print_line(). 11981 119822008-11-12 Micah Cowan <micah@cowan.name> 11983 11984 * src/ftp-ls.c (ftp_index): HTML-escape dir name in title, h1, a:href. 11985 119862008-11-12 Alexander Belopolsky <alexander.belopolsky@gmail.com> 11987 11988 * src/url.c, url.h (url_escape_unsafe_and_reserved): Added. 11989 11990 * src/ftp-ls.c (ftp_index): URL-escape, rather than HTML-escape, the 11991 filename appearing in the link. 11992 119932008-11-11 Steven Schubiger <stsc@members.fsf.org> 11994 11995 * src/main.c (format_and_print_line): Move both the memory 11996 allocating and freeing bits upwards to print_version(). 11997 119982008-11-11 Micah Cowan <micah@cowan.name> 11999 12000 * tests/HTTPServer.pm (handle_auth): Allow testing of 12001 --auth-no-challenge. 12002 12003 * tests/Test-auth-no-challenge.px, Test-auth-no-challenge-url.px: 12004 Added. 12005 12006 * tests/run-px: Add Test-auth-no-challenge.px, 12007 Test-auth-no-challenge-url.px. 12008 120092008-11-10 Saint Xavier <wget@sxav.eu> 12010 12011 * src/http.c: Make --auth-no-challenge works with user:pass@ in URLs. 12012 120132008-11-10 Micah Cowan <micah@cowan.name> 12014 12015 * doc/Makefile.am (EXTRA_DIST): Removed no-longer-present 12016 README.maint (shouldn't have been there in the first place). 12017 12018 * doc/wget.texi (Mailing Lists): Added information aboug Gmane portal, 12019 added subsection headings. 12020 12021 Update node pointers. 12022 120232008-11-10 Micah Cowan <micah@cowan.name> 12024 12025 * MAILING-LIST: Mention Gmane, introduce subsections. 12026 120272008-11-07 Steven Schubiger <stsc@members.fsf.org> 12028 12029 * tests/run-px: Use some colors for the summary part of the test 12030 output to strengthen the distinction between a successful 12031 or failing run. 12032 120332008-11-06 Steven Schubiger <stsc@members.fsf.org> 12034 12035 * tests/run-px: When executing test scripts, invoke them with the 12036 current perl executable name as determined by env. 12037 120382008-11-06 Micah Cowan <micah@cowan.name> 12039 12040 * tests/run-px: Use strict (thanks Steven Schubiger!). 12041 120422008-11-05 Micah Cowan <micah@cowan.name> 12043 12044 * src/ftp.c (print_length): Should print humanized "size remaining" 12045 only when it's at least 1k. 12046 120472008-11-05 Micah Cowan <micah@cowan.name> 12048 12049 * doc/wget.texi: Move --no-http-keep-alive from FTP Options to HTTP 12050 Options. 12051 (Mailing List): Mention moderation for unsubscribed posts, and 12052 archive location. 12053 120542008-11-05 Micah Cowan <micah@cowan.name> 12055 12056 * MAILING-LIST: Mention moderation for unsubscribed posts, and 12057 archive location. 12058 120592008-11-04 Micah Cowan <micah@cowan.name> 12060 12061 * doc/wget.texi, fdl.texi: Updated to FDL version 1.3. 12062 120632008-10-31 Micah Cowan <micah@cowan.name> 12064 12065 * src/main.c (print_version): Add information about the mailing list. 12066 120672008-10-31 Micah Cowan <micah@cowan.name> 12068 12069 * doc/wget.texi (Mailing List): Update info to reflect change to 12070 bug-wget@gnu.org. 12071 120722008-10-31 Micah Cowan <micah@cowan.name> 12073 12074 * MAILING-LIST: Update information. 12075 12076 * NEWS: Add mention of mailing list move. 12077 120782008-10-31 Alexander Drozdov <dzal_mail@mtu-net.ru> 12079 12080 * src/retr.c (fd_read_hunk): Make assert deal with maxsize == 0. 12081 12082 * src/ftp-ls.c (clean_line): Prevent underflow on empty lines. 12083 120842008-10-26 Gisle Vanem <gvanem@broadpark.no> 12085 12086 * src/main.c (format_and_print_line): Put variables on top of 12087 blocks (not all compilers are C99). Add an extra '\n' if 12088 SYSTEM_WGETRC isn't defined and printed. 12089 120902008-09-30 Steven Schubiger <stsc@members.fsf.org> 12091 12092 * doc/wget.texi (Wgetrc Commands): Add default_page, save_headers, 12093 spider and user_agent to the list of recognized commands. 12094 120952008-09-10 Michael Kessler <kessler.michael@aon.at> 12096 12097 * doc/wget.texi (Robot Exclusion): Fixed typo "downloads" -> 12098 "download" 12099 121002008-09-09 Micah Cowan <micah@cowan.name> 12101 12102 * tests/Test-idn-cmd.px: Added. 12103 12104 * tests/run-px: Added Test-idn-cmd.px. 12105 121062008-09-09 Micah Cowan <micah@cowan.name> 12107 12108 * src/init.c (home_dir): Save the calculated value for home, 12109 to avoid duplicated work on repeated calls. 12110 (wgetrc_file_name) [WINDOWS]: Define and initialize home var. 12111 12112 * src/build_info.c, main.c: Remove unnecessary extern vars 12113 system_wgetrc and locale_dir. 12114 12115 * src/main.c: Define program_name for lib/error.c. 12116 121172008-09-09 Gisle Vanem <gvanem@broadpark.no> 12118 12119 * src/url.c (url_error): Use aprintf, not asprintf. 12120 121212008-09-02 Gisle Vanem <gvanem@broadpark.no> 12122 12123 * src/mswindows.h: Must ensure <stdio.h> is included before 12124 we redefine ?vsnprintf(). 12125 121262008-08-28 Micah Cowan <micah@cowan.name> 12127 12128 * tests/HTTPServer.pm (run): Allow distinguishing between hostnames, 12129 when used as a proxy. 12130 12131 * tests/Test-idn-headers.px, Test-idn-meta.px: Added. 12132 12133 * tests/run-px: Added Test-idn-headers.px, Test-idn-meta.px. 12134 12135 * tests/Test-proxy-auth-basic.px: Use the full URL, rather than just the 12136 path (made necessary by the accompanying change to HTTPServer.pm). 12137 121382008-08-14 Xavier Saint <wget@sxav.eu> 12139 12140 * tests/Test-iri-list.px : Fetch files from a remote list. 12141 121422008-08-08 Steven Schubiger <stsc@members.fsf.org> 12143 12144 * src/main.c, utils.h: Removed some dead conditional DEBUG_MALLOC code. 12145 121462008-08-03 Xavier Saint <wget@sxav.eu> 12147 12148 * tests/Test-iri.px : HTTP recursive fetch for testing IRI support and 12149 fallback. 12150 12151 * tests/Test-iri-disabled.px : Same file structure as Test-iri.px but with 12152 IRI support disabled 12153 12154 * tests/Test-iri-forced-remote.px : There's a difference between ISO-8859-1 12155 and ISO-8859-15 for character 0xA4 (respectively currency sign and 12156 euro sign). So with a forced ISO-8859-1 remote encoding, wget should 12157 see 0xA4 as a currency sign and transcode it correctly in UTF-8 instead 12158 of using the ISO-8859-15 given by the server. 12159 12160 * tests/Test-ftp-iri.px : Give a file to fetch via FTP in a specific locale 12161 and expect wget to fetch the file UTF-8 encoded. 12162 12163 * tests/Test-ftp-iri-fallback.px : Same as above but wget should fallback on 12164 locale encoding to fetch the file. 12165 12166 * tests/Test-ftp-iri.px : Same as Test-ftp-iri.px but with IRI support 12167 disabled. The UTF-8 encoded file should not be retrieved. 12168 121692008-08-03 Xavier Saint <wget@sxav.eu> 12170 12171 * doc/wget.texi : Add option descriptions for the three new 12172 options --iri, --locale and --remote-encoding related to 12173 IRI support. 12174 12175 * doc/sample.wgetrc : Add commented lines for the three new 12176 command iri, locale and encoding related to IRI support. 12177 121782008-08-03 Steven Schubiger <stsc@members.fsf.org> 12179 12180 * src/url.c, url.h (url_error): Better messages for unsupported 12181 schemes, especially https. 12182 12183 * src/html-url.c, recur.c, retr.c: Adjust to new url_error 12184 invocation, and free result. 12185 121862008-08-03 Micah Cowan <micah@cowan.name> 12187 12188 * src/main.c (print_help): Added --default-page. 12189 121902008-08-03 Micah Cowan <micah@cowan.name> 12191 12192 * src/build_info.c, css-url.c: #include wget.h, not config.h. 12193 121942008-08-03 Micah Cowan <micah@cowan.name> 12195 12196 * doc/wget.texi: Don't set UPDATED; already set by version.texi. 12197 (HTTP Options): Add --default-page option. 12198 121992008-08-01 Joao Ferreira <joao@joaoff.com> 12200 12201 * src/init.c, main.c, options.h, url.c: Added option --default-page 12202 to support alternative default names for index.html 12203 122042008-08-01 Joao Ferreira <joao@joaoff.com> 12205 12206 * NEWS: Added option --default-page to support alternative 12207 default names for index.html 12208 122092008-07-17 Steven Schubiger <stsc@members.fsf.org> 12210 12211 * src/retr.c (retrieve_from_file): When given an URL as input file, 12212 use it as baseref if none was specified and treat the input file 12213 as HTML if its content type is text/html. 12214 12215 * src/init.c (cleanup): Free the memory associated with the base 12216 option (when DEBUG_MALLOC is defined). 12217 122182008-07-17 Steven Schubiger <stsc@members.fsf.org> 12219 12220 * doc/wget.texi (Logging and Input File Options): Document 12221 for --input-file and according remote input file URLs, the 12222 implicit enforcement of treating a document as HTML and 12223 the possible baseref assumption. 12224 122252008-07-02 Xavier Saint <wget@sxav.eu> 12226 12227 * src/iri.c, iri.h : New function idn_decode() to decode ASCII 12228 encoded hostname to the locale. 12229 12230 * src/host.c : Show hostname to be resolved both in locale and 12231 ASCII encoded. 12232 122332008-06-30 Micah Cowan <micah@cowan.name> 12234 12235 * NEWS: Entries for 1.11.4. 12236 12237 * AUTHORS: Added Steven Schubiger. 12238 122392008-06-29 Micah Cowan <micah@cowan.name> 12240 12241 * doc/wget.texi <Contributors>: Added Joao Ferreira, Mike Frysinger, 12242 Alain, Guibert, Madhusudan Hosaagrahara, Jim Paris, Kenny 12243 Parnell, Benno Schulenberg, and Pranab Shenoy. Added Steven 12244 Schubiger to the "Special Thanks" section. 12245 122462008-06-28 Steven Schubiger <stsc@members.fsf.org> 12247 12248 * src/retr.c (retrieve_from_file): Allow for reading the links from 12249 an external file (HTTP/FTP). 12250 122512008-06-26 Xavier Saint <wget@sxav.eu> 12252 12253 * src/iri.c, iri.h : New functions locale_to_utf8() and 12254 idn_encode() adding basic capabilities of IRI/IDN. 12255 12256 * src/url.c : Convert URLs from locale to UTF-8 allowing a basic 12257 support of IRI/IDN 12258 122592008-06-26 Xavier Saint <wget@sxav.eu> 12260 12261 * configure.ac : IRIs support required libiconv, check it. 12262 122632008-06-25 Steven Schubiger <stsc@members.fsf.org> 12264 12265 * src/ftp.c (getftp): When spidering a FTP URL, emit a diagnostic 12266 message if the remote file exists. 12267 122682008-06-24 Steven Schubiger <stsc@members.fsf.org> 12269 12270 * src/http.c (http_loop): Replace escnonprint() occurence with 12271 a quotearg_style() call. 12272 122732008-06-24 Micah Cowan <micah@cowan.name> 12274 12275 * src/ftp-ls.c (ftp_index): Don't assume time_t* is compatible with 12276 long*. Fixes crash on Windows, and probably other systems. 12277 122782008-06-22 Steven Schubiger <stsc@members.fsf.org> 12279 12280 * src/http.c: Explicitly initialize and deallocate the message 12281 string used by the -nv --spider functionality. 12282 122832008-06-22 Steven Schubiger <schubiger@gmail.com> 12284 12285 * src/http.c: Make -nv --spider include the file's name when it 12286 exists. 12287 122882008-06-22 Micah Cowan <micah@cowan.name> 12289 12290 * tests/Test-proxied-https-auth.px: Shift exit code so it falls in the 12291 lower bits, and actually fails when it should. Use dynamic port, 12292 instead of static port. Only run the test if our Wget was built 12293 with HTTPS support. 12294 12295 * tests/certs/server-cert.pem, certs/server-key.pem: Apparently failed 12296 to add these from 1.11.x repo. Fixed. 12297 122982008-06-22 Micah Cowan <micah@cowan.name> 12299 12300 * src/Makefile.am (version.c): Fixed version string invocation so it 12301 once again can't result in unterminated strings, made all the 12302 string vars pointers-to-const, and moved line lengths 12303 below 80 (in Makefile.am, not in version.c). 12304 123052008-06-19 Xavier Saint <wget@sxav.eu> 12306 12307 * src/iri.c, iri.h : New function check_encoding_name() as 12308 a preliminary encoding name check. 12309 12310 * src/main.c, iri.c : Make use of check_encoding_name(). 12311 123122008-06-19 Xavier Saint <wget@sxav.eu> 12313 12314 * src/iri.c, iri.h : Add a new function find_locale() to find 12315 out the local system encoding. 12316 12317 * src/main.c : Make use of find_locale(). 12318 123192008-06-19 Xavier Saint <wget@sxav.eu> 12320 12321 * src/iri.c : Include missing stringprep.h file and add a 12322 cast. 12323 12324 * src/init.c : set a default initial value for opt.enable_iri, 12325 opt.locale and opt.encoding_remote. 12326 123272008-06-19 Xavier Saint <wget@sxav.eu> 12328 12329 * src/html-url.c : Add "content-type" meta tag parsing for 12330 retrieving page encoding. 12331 12332 * src/iri.h : Make no-op version of parse_charset() return 12333 NULL. 12334 123352008-06-16 Micah Cowan <micah@cowan.name> 12336 12337 * src/http.c (http_loop): When hstat.len is higher than the 12338 successfully completed content's length, but it's because we 12339 _set_ it that way, don't abort. 12340 123412008-06-14 Xavier Saint <wget@sxav.eu> 12342 12343 * src/iri.c, iri.h : New files. 12344 12345 * src/Makefile.am : Add files iri.h and conditional iri.c. 12346 12347 * src/build_info.c : Add compiled feature "iri". 12348 12349 * src/http.c : include iri.h and parse charset from Content-Type 12350 header. 12351 12352 * src/init.c, main.c, options.h : if an options isn't supported 12353 at compiled time, don't get rid off it and show a dummy 12354 message instead if they are used. 12355 123562008-06-14 Xavier Saint <wget@sxav.eu> 12357 12358 * configure.ac: Add support for IRIs 12359 123602008-06-13 Micah Cowan <micah@cowan.name> 12361 12362 * src/build_info.c: ENABLE_NTLM, not HAVE_NTLM; distinguish OpenSSL 12363 from "ssl". 12364 123652008-06-13 Micah Cowan <micah@cowan.name> 12366 12367 * doc/wget.texi (Mailing List): The wget-notify mailing list no longer 12368 receives commit notifications from the source repository. 12369 (Internet Relay Chat): Activity isn't quite so low any more, 12370 remove notice to that effect. 12371 123722008-06-13 Madhusudan Hosaagrahara <com.gmail.hrmadhu> 12373 12374 * src/Makefile.am, main.c, init.c, init.h, build_info.c: Adds build 12375 information to the --version command line option. Fixes bug 12376 #20636. 12377 123782008-06-12 Micah Cowan <micah@cowan.name> 12379 12380 * tests/FTPServer.pm, FTPTest.pm, HTTPServer.pm, HTTPTest.pm, 12381 Test--no-content-disposition-trivial.px, 12382 Test--no-content-disposition.px, Test--spider-fail.px, 12383 Test--spider-r--no-content-disposition-trivial.px, 12384 Test--spider-r--no-content-disposition.px, 12385 Test--spider-r-HTTP-Content-Disposition.px, Test--spider-r.px, 12386 Test--spider.px, Test-E-k-K.px, Test-E-k.px, 12387 Test-HTTP-Content-Disposition-1.px, 12388 Test-HTTP-Content-Disposition-2.px, 12389 Test-HTTP-Content-Disposition.px, 12390 Test-N--no-content-disposition-trivial.px, 12391 Test-N--no-content-disposition.px, 12392 Test-N-HTTP-Content-Disposition.px, Test-N-current.px, 12393 Test-N-no-info.px, Test-N-old.px, Test-N-smaller.px, Test-N.px, 12394 Test-O--no-content-disposition-trivial.px, 12395 Test-O--no-content-disposition.px, 12396 Test-O-HTTP-Content-Disposition.px, Test-O-nonexisting.px, 12397 Test-O.px, Test-Restrict-Lowercase.px, 12398 Test-Restrict-Uppercase.px, Test-auth-basic.px, Test-c-full.px, 12399 Test-c-partial.px, Test-c.px, Test-ftp.px, 12400 Test-nonexisting-quiet.px, Test-noop.px, Test-np.px, 12401 Test-proxied-https-auth.px, Test-proxy-auth-basic.px, 12402 WgetTest.pm.in: Use whatever ports are available, rather than 12403 hard-coded ones. 12404 12405 * tests/run-px: More summary info, explicit exit code. 12406 12407 * tests/Makefile.am: Reinstate "run-px-tests" as a dependency for the 12408 "check" target. 12409 12410 * tests/WgetTest.pm.in: Draw more attention to the fact that 12411 WgetTest.pm is a generated file. 12412 12413 * tests/Test-proxied-https-auth.px: Better cleanup, so next test can 12414 open the port. 12415 124162008-06-01 Micah Cowan <micah@cowan.name> 12417 12418 * src/main.c [WINDOWS]: Reopen stdout in binary mode, when -O - is 12419 given. 12420 124212008-05-31 Micah Cowan <micah@cowan.name> 12422 12423 * src/html-url.c, http.c: Avoid casts in a couple spots. 12424 124252008-05-31 Micah Cowan <micah@cowan.name> 12426 12427 * tests/Test-N-current.px: Ensure we catch failures. 12428 12429 * tests/Test-N-old.px: Make it test only the timestamp, and not the 12430 content length in addition. 12431 12432 * tests/Test-N-smaller.px, Test-N-no-info.px: added. 12433 12434 * tests/Test-c-partial.px: Improve checking that the file was 12435 partially retrieved, rather than overwritten. 12436 12437 * tests/run-px: Added Test-N-smaller.px, Test-N-no-info.px. 12438 12439 * tests/HTTPServer.pm: Return 416 for fully-retrieved content, rather 12440 than 206 with a zero content-length. 12441 124422008-05-30 Henri Häkkinen <henux@users.sourceforge.net> 12443 12444 * src/cookies.c, ftp-basic.c, hash.c, html-url.c, http-ntlm.c, http.c, 12445 init.c, log.c, main.c, progress.c, ptimer.c, spider.c, url.c, 12446 utils.c: Minor changes to silence warnings when using -Wall. 12447 124482008-05-29 Micah Cowan <micah@cowan.name> 12449 12450 * po/*.po: Updated from TP (the 1.11.3 set). 12451 12452 * po/POTFILES.in: Added some more files from lib/, remove 12453 src/xmalloc.c. 12454 12455 * po/quot.sed, po/boldquot.sed: Automatic handling of quotearg's ` 12456 and '. 12457 124582008-05-26 Steven Schubiger <schubiger@gmail.com> 12459 12460 * src/ftp.c (getftp): Replace last remaining invocation of escnonprint 12461 with gnulib quote. 12462 124632008-05-23 Micah Cowan <micah@cowan.name> 12464 12465 * tests/Test--spider.px: Make test expect 0 return code. 12466 124672008-05-22 Micah Cowan <micah@cowan.name> 12468 12469 * tests/Makefile.am (run-px-tests): Replaced ugly list of tests with 12470 run-px Perl script to manage running them. 12471 12472 * tests/run-px: Added. 12473 12474 * tests/FTPServer.pm (run): Avoid re-forking. Fixes bug #20458. 12475 124762008-05-19 Micah Cowan <micah@cowan.name> 12477 12478 * src/main.c (main): Password prompt should be done only once (not 12479 once per argument), and should be done prior to the background 12480 fork. 12481 124822008-05-17 Steven Schubiger <stsc@members.fsf.org> 12483 12484 * doc/wget.texi (Download Options): Change documentation to reflect 12485 the new default value for --prefer-family. 12486 (Wgetrc Commands): Same, for prefer_family wgetrc command. 12487 124882008-05-17 Steven Schubiger <schubiger@gmail.com> 12489 12490 * src/init.c (defaults): Set the preferred IP family to `none' by 12491 default. 12492 124932008-05-17 Micah Cowan <micah@cowan.name> 12494 12495 * src/main.c (main): Handle Ctrl-D on command-line. 12496 124972008-05-17 Kenny Parnell <k.parnell@gmail.com> 12498 12499 (cmd_spec_prefer_family): Initialize prefer_family to prefer_none. 12500 125012008-05-15 Steven Schubiger <schubiger@gmail.com> 12502 12503 * src/ftp.c (getftp): Verify that the file actually exists in FTP, by 12504 checking it against the listing. 12505 125062008-05-15 Micah Cowan <micah@cowan.name> 12507 12508 * src/main.c (prompt_for_password): Use the quote module. 12509 125102008-05-15 Micah Cowan <micah@cowan.name> 12511 12512 * NEWS: Entry for --ask-password. 12513 125142008-05-14 Micah Cowan <micah@cowan.name> 12515 12516 * src/ftp.c (ftp_retrieve_list): Symlinks and other filenames 12517 should be fully quoted. 12518 125192008-05-14 Joao Ferreira <joao@joaoff.com> 12520 12521 * src/main.c, src/http.c, src/ftp.c: -nc is now working in 12522 conjunction with '-O file'. 12523 125242008-05-12 Micah Cowan <micah@cowan.name> 12525 12526 * src/main.c (main): Downgrade "-N with -O" to a warning, and switch 12527 it off to avoid confusing messages. 12528 125292008-05-12 Micah Cowan <micah@cowan.name> 12530 12531 * doc/wget.texi (Download Options): -N with -O downgraded to a 12532 warning. 12533 125342008-05-12 Micah Cowan <micah@cowan.name> 12535 12536 * NEWS: Translations and -N/-O. 12537 125382008-04-30 Steven Schubiger <stsc@members.fsf.org> 12539 12540 * src/main.c (main): New code that handles prompting for passwords 12541 when specified explicitly via command-line option (using gnulib's 12542 getpass-gnu module). 12543 (main): Include the getpass header. 12544 12545 * src/init.c: Add "ask-password" to the list of recognized commands. 12546 12547 * src/options.h: Add an according boolean member to the options 12548 struct. 12549 12550 * src/sysdep.h: Comment the defines __EXTENSIONS__ and _GNU_SOURCE 12551 out, because they're now defined independently by config.h. 12552 125532008-04-30 Steven Schubiger <stsc@members.fsf.org> 12554 12555 * lib/getdelim.c, lib/getline.c, lib/getpass.c, 12556 lib/getpass.h, lib/realloc.c, lib/stdio.h, 12557 lib/stdio.in.h, lib/stdlib.h, lib/stdlib.in.h: Imported 12558 from gnulib. 12559 * m4/eoverflow.m4, m4/extensions.m4, m4/getdelim.m4, 12560 m4/getline.m4, m4/getpass.m4, m4/malloc.m4, m4/realloc.m4, 12561 m4/stdio_h.m4, m4/stdlib_h.m4: Imported from gnulib. 12562 * md5/stdint.h: Imported from gnulib. 12563 12564 * GNUmakefile: Updated from gnulib. 12565 * lib/Makefile.am, lib/getopt.c, lib/unistd.in.h: Updated 12566 from gnulib. 12567 * m4/gnulib-cache.m4, m4/gnulib-common.m4, m4/gnulib-comp.m4, 12568 m4/include_next.m4, m4/unistd_h.m4: Updated from gnulib. 12569 * md5/Makefile.am, md5/m4/gnulib-cache.m4, md5/m4/gnulib-common.m4, 12570 md5/m4/gnulib-comp.m4, md5/m4/include_next.m4, md5/m4/md5.m4, 12571 md5/m4/stdint.m4, md5/md5.c, md5/md5.h, md5/stdint.in.h, 12572 md5/wchar.in.h: Updated from gnulib. 12573 125742008-04-30 Steven Schubiger <stsc@members.fsf.org> 12575 12576 * doc/wget.texi <Download Options>: Document the --ask-password 12577 option. 12578 125792008-04-30 Micah Cowan <micah@cowan.name> 12580 12581 * src/progress.c (create_image): Fix glitch where too many spaces are 12582 printed on lines that don't display the ETA, in multibyte 12583 locales. 12584 125852008-04-30 Micah Cowan <micah@cowan.name> 12586 12587 * NEWS: Added documentation for changes made in 1.11.2. 12588 125892008-04-27 Rabin Vincent <rabin@rab.in> 12590 12591 * src/http.c (http_loop): Fix return for the case where we don't 12592 download a file because of -nc. 12593 125942008-04-27 Micah Cowan <micah@cowan.name> 12595 12596 * src/url.c (path_simplify): Go back to allowing leading ".." in 12597 paths, but only for FTP URLs. 12598 (test_path_simplify): Add scheme-specificness to tests, adapt for 12599 mu_run_test. 12600 12601 * src/test.c (all_tests): Add test_path_simplify. 12602 12603 * src/main.c (main): Downgrade -r, -p with -O to a warning rather than 12604 an error; elaborate just a bit more for other -O combination 12605 cases. 12606 126072008-04-27 Micah Cowan <micah@cowan.name> 12608 12609 * doc/wget.texi (Download Options) <-O>: Elaborate on why certain 12610 options make poor combinations with -O. 12611 126122008-04-26 Micah Cowan <micah@cowan.name> 12613 12614 * tests/Makefile.am, Test-proxied-https-auth.px: Added a test for 12615 accessing password-protected HTTPS URLs through a proxy (via 12616 CONNECT). 12617 126182008-04-26 Micah Cowan <micah@cowan.name> 12619 12620 * src/http.c (gethttp): Move proxy CONNECT handling to below the 12621 retry_with_auth label, to deal with properly reconnecting to 12622 proxies when we need to authenticate. 12623 126242008-04-25 Micah Cowan <micah@cowan.name> 12625 12626 * src/Makefile.am: -I foo -> -Ifoo. 12627 126282008-04-24 Micah Cowan <micah@cowan.name> 12629 12630 * src/main.c: Revised usage description of --convert-links to apply 12631 to CSS as well as to HTML. 12632 126332008-04-24 Micah Cowan <micah@cowan.name> 12634 12635 * doc/wget.texi: Adjusted documentation to account for CSS support; 12636 added Ted Mielczarek to contributors. 12637 126382008-04-24 Micah Cowan <micah@cowan.name> 12639 12640 * NEWS: Removed info about move to Automake, Gnulib. Added item 12641 about the addition of CSS support. 12642 126432008-04-23 Micah Cowan <micah@cowan.name> 12644 12645 * src/utils.c (test_dir_matches_p): Added a test for the case 12646 described in issue #20518. 12647 126482008-04-22 Ted Mielczarek <ted.mielczarek@gmail.com> 12649 12650 * src/css.lex, css-url.c, css-url.h: Added to implement support for 12651 parsing CSS in Wget. 12652 * src/convert.c: Convert links in CSS files, too. 12653 * src/convert.h (convert_options): Added for options link_css_p, 12654 link_expect_css. 12655 * src/convert.h: Added prototype for new register_css function. 12656 * src/html-parse.c: Added support for parsing element content, in 12657 addition to tag starts and ends. 12658 * src/html-parse.h (taginfo): Added delimiter fields for element 12659 content. 12660 * src/html-url.h: Added. 12661 * src/html-url.c (append_url): No longer internal-linkage only. Now 12662 takes position and size as explicit parameters. 12663 * src/html-url.c: Use new html-url.h header, add support for 12664 handling of "style" HTML attributes. Mark URIs obtained from 12665 link tags with rel="stylesheet" with link_expect_css. Adapt 12666 uses of append_url to supply the newly-added parameters for 12667 position and size. 12668 * src/http.c: Add detection for when the content-type is text/css; 12669 and ensure that such files have the ".css" filename extension, 12670 when --convert-links is active. 12671 * src/recur.h: Remove declarations for functions found in 12672 html-url.c (moved to html-url.h). 12673 * src/recur.c: Add support for culling links from CSS files, too, 12674 and tracking for when we're expecting the file to be CSS (even 12675 when its content type isn't text/css). 12676 * src/retr.c (retrieve_url): Add registration of CSS files. 12677 * src/wget.h: Added TEXTCSS to dt flags enum. 12678 * src/Makefile.am: Added css.lex, css-url.c, css-url.h, html-url.h 12679 to wget_SOURCES. 12680 126812008-04-22 Ted Mielczarek <ted.mielczarek@gmail.com> 12682 12683 * configure.ac: Added check for lex. 12684 126852008-04-22 Steven Schubiger <schubiger@gmail.com> 12686 12687 * src/http.c (print_response_line): Changed to make responses always 12688 be logged, even in --quiet mode, if --server-response was 12689 specified. This is to bring http.c's handling of the situation 12690 in line with ftp.c's. 12691 126922008-04-22 Rabin Vincent <rabin@rab.in> 12693 12694 * src/ftp.c (ftp_get_listing): Only remove .listing if it has been 12695 created. 12696 126972008-04-22 Pranab Shenoy <pranab.loosinit.shenoy@gmail.com> 12698 12699 * src/init.c: Added test_commands_sorted unit test to check is 12700 commands are sorted. Fixes bug #21245. 12701 12702 * src/test.c: Added test_commands_sorted to the test suite. 12703 127042008-04-22 Mike Frysinger <vapier@gentoo.org> 12705 12706 * src/Makefile.am: Move @LIBS@ after other libraries, for better 12707 static-linking support. Fixes bug #22143. 12708 127092008-04-22 Mike Frysinger <vapier@gentoo.org> 12710 12711 * doc/sample.wgetrc: Added prefer_family example. Resolves bug 12712 #22142. 12713 127142008-04-22 Micah Cowan <micah@cowan.name> 12715 12716 * ylwrap: Added via automake -ac. 12717 127182008-04-22 Micah Cowan <micah@cowan.name> 12719 12720 * src/Makefile.am, css.lex, css.l: Renamed css.lex to css.l. 12721 * src/recur.c (retrieve_tree): Fix typo to allow text/css files to 12722 be parsed. 12723 127242008-04-22 Jim Paris <jim@jtan.com> 12725 12726 * src/openssl.c (ssl_init): Enable combined certificate/key in 12727 single file (apparent regression from ~1.9). Resolves issue 12728 #22767. 12729 127302008-04-22 Alain Guibert <alguibert+bts@free.fr> 12731 12732 * src/test.h (mu_run_test): Move declaration before statements, for 12733 C90 conformance. Fixes bug #22789. 12734 127352008-04-16 Steven Schubiger <schubiger@gmail.com> 12736 12737 * src/sysdep.h: Comment the defines __EXTENSIONS__ and _GNU_SOURCE 12738 out, because they're now defined independently by config.h. 12739 127402008-04-16 Steven Schubiger <schubiger@gmail.com> 12741 12742 * src/ftp.c: Use Gnulib's quote function for printing filenames and 12743 such. 12744 * src/connect.c: Likewise. 12745 * src/convert.c: Likewise. 12746 * src/cookies.c: Likewise. 12747 * src/ftp-opie.c: Likewise. 12748 * src/gnutls.c: Likewise. 12749 * src/init.c: Likewise. 12750 * src/log.c: Likewise. 12751 * src/mswindows.c: Likewise. 12752 * src/openssl.c: Likewise. 12753 * src/progress.c: Likewise. 12754 * src/recur.c: Likewise. 12755 * src/res.c: Likewise. 12756 * src/utils.c: Likewise. 12757 127582008-04-14 Steven Schubiger <schubiger@gmail.com> 12759 12760 * src/http.c: Use Gnulib's quote function for printing filenames and 12761 such. 12762 * src/wget.h: #include "quote.h". 12763 127642008-04-14 Micah Cowan <micah@cowan.name> 12765 12766 * GNUmakefile, lib/Makefile.am, lib/error.c, lib/error.h, 12767 lib/exitfail.c, lib/exitfail.h, lib/getopt.c, lib/intprops.h, 12768 lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, 12769 lib/stdlib.in.h, lib/strerror.c, lib/string.in.h, 12770 lib/unistd.in.h, lib/wchar.in.h, lib/wctype.in.h, 12771 lib/xalloc-die.c, lib/xalloc.h, lib/xmalloc.c, m4/error.m4, 12772 m4/exitfail.m4, m4/extensions.m4, m4/gnulib-cache.m4, 12773 m4/gnulib-comp.m4, m4/include_next.m4, m4/inline.m4, 12774 m4/mbrtowc.m4, m4/mbstate_t.m4, m4/quote.m4, m4/quotearg.m4, 12775 m4/stdlib_h.m4, m4/strerror.m4, m4/string_h.m4, m4/unistd_h.m4, 12776 m4/wchar.m4, m4/wctype.m4, m4/wint_t.m4, m4/xalloc.m4, 12777 md5/Makefile.am, md5/m4/gnulib-cache.m4, md5/m4/gnulib-comp.m4, 12778 md5/m4/include_next.m4, md5/m4/md5.m4, md5/m4/stdint.m4, 12779 md5/md5.c, md5/md5.h, md5/stdint.in.h, md5/wchar.in.h: Update 12780 from Gnulib, and add the "quote" module. 12781 127822008-04-12 Rabin Vincent <rabin@rab.in> 12783 12784 * src/mswindows.c (fake_fork_child): Don't create a logfile for 12785 --background when --quiet is used, but not --server-response. 12786 Fixes bug #20917. 12787 12788 * src/utils.c (fork_to_background): Likewise. 12789 127902008-04-12 Micah Cowan <micah@cowan.name> 12791 12792 * src/utils.c (aprintf): Minor formatting changes to Alex's code (80- 12793 column limit, concatenated string literals, avoiding nesting 12794 levels), and removed invocation of free (since we're aborting 12795 anyway). 12796 127972008-04-11 Micah Cowan <micah@cowan.name> 12798 12799 * src/ftp.c (getftp, ftp_loop_internal): Don't append to an existing 12800 .listing when --continue is used. Fixes bug #22825. Thanks to 12801 Rabin Vincent <rabin@rab.in> for pointing the way with a 12802 suggested fix! 12803 128042008-04-11 Micah Cowan <micah@cowan.name> 12805 12806 * doc/wget.texi <Contributors>: Added Julien Buty, Alexander 12807 Dergachev, and Rabin Vincent. 12808 128092008-04-11 Alexander Dergachev <cy6erbr4in@gmail.com> 12810 12811 * src/utils.c (aprintf): Now we are setting limits (1 Mb) for text 12812 buffer when we use non-C99 vsnprintf. 12813 128142008-04-10 Micah Cowan <micah@cowan.name> 12815 12816 * tests/Makefile.am, Test-proxy-auth-basic.px: Added a test for 12817 accessing password-protected URLs through a proxy. 12818 128192008-04-10 Alexander Dergachev <cy6erbr4in@gmail.com> 12820 12821 * src/xmalloc.c, xmalloc.h (memfatal): Now exported; accepts an 12822 "unknown" value for the attempted allocation size. 12823 * src/utils.c (aprintf): Now calls memfatal, instead of aborting. 12824 128252008-03-24 Micah Cowan <micah@cowan.name> 12826 12827 * doc/wget.texi <Types of Fields>: Mentioned various caveats in the 12828 behavior of accept/reject lists, deprecate current 12829 always-download-HTML feature. Added @noindent to a couple of 12830 appropriate spots. 12831 128322008-03-24 Micah Cowan <micah@cowan.name> 12833 12834 * NEWS: Added documentation change re: --no-parents, and various 12835 caveats on accept/reject lists behavior. Rearranged some items in 12836 order of priority. 12837 128382008-03-20 Micah Cowan <micah@cowan.name> 12839 12840 * ABOUT-NLS: Reinstated, but with a message mentioning that 12841 gettext is not included. 12842 * Makefile.am: Removed "test" target; "check" should be used 12843 instead (and "test" was mildly broken, anyway). 12844 128452008-03-19 Micah Cowan <micah@cowan.name> 12846 12847 * src/utils.c (test_dir_matches_p): More tests related for 12848 dir_matches_p. 12849 128502008-03-17 Micah Cowan <micah@cowan.name> 12851 12852 * src/connect.c: Include sys/time.h to support use of the select 12853 function on older systems. 12854 128552008-03-17 Micah Cowan <micah@cowan.name> 12856 12857 * doc/wget.texi <Directory-Based Limits>: Mention importance of 12858 trailing slashes to --no-parents. 12859 128602008-02-14 Micah Cowan <micah@cowan.name> 12861 12862 * ABOUT-NLS: Removed. 12863 128642008-02-11 Benno Schulenberg <bensberg@justemail.net> 12865 12866 * src/http.c: More accurate and descriptive messages for when a file 12867 won't be retrieved during spider-mode. 12868 128692008-02-10 Micah Cowan <micah@cowan.name> 12870 12871 * src/http.c: Added existence_checked member to the http_stat 12872 struct. 12873 (gethttp): Mark hs->existence_checked when we've checked whether 12874 a file-to-download exists; so we don't check it again if the 12875 connection gets lost (and potentially pick a new "unique" name). 12876 This fixes bug 22251. 12877 * src/progress.c (create_image): Add space for an extra column in 12878 the "eta" portion of the progress bar image; to deal with 12879 too-long Czech translation. 12880 * src/main.c, http.c, init.c: Added --auth-no-challenge option, to 12881 bring back 1.10.2 unsafe auth behavior when needed. This fixes 12882 bug #22242. 12883 128842008-02-10 Micah Cowan <micah@cowan.name> 12885 12886 * doc/wget.texi <HTTP Options>: Added documentation of 12887 --auth-no-challenge. 12888 128892008-02-10 Micah Cowan <micah@cowan.name> 12890 12891 * NEWS: Added note re interrupted files resulting in renames, 12892 and new --auth-no-challenge option. 12893 128942008-02-07 Micah Cowan <micah@cowan.name> 12895 12896 * src/progress.c (create_image): Remove assertion on exceeding 12897 screen width, which given the less-than-robust code there, can 12898 be broken by a number of factors (such as large file downloads). 12899 129002008-02-06 Micah Cowan <micah@cowan.name> 12901 12902 * src/progress.c (countcols): Use strlen() when mbtowc or wcwidth 12903 not available (or not using NLS). 12904 * src/utils.c: Ensure we use single-byte separators when not doing 12905 NLS progress-bars. 12906 * src/wget.h: Determine whether to use NLS for progress-bars, based 12907 on whether wcwidth and mbtowc are available. 12908 129092008-02-06 Micah Cowan <micah@cowan.name> 12910 12911 * doc/wget.ṫexi <Overview>: Remove references to no-longer-supported 12912 socks library. 12913 129142008-02-06 Micah Cowan <micah@cowan.name> 12915 12916 * configure.ac (AC_CHECK_FUNCS): Added check for mbtowc. 12917 * NEWS: Added notes regarding fixes for the localized progress 12918 bar and --no-clobber wasted GET request. 12919 * po/be.po: Added from the TP. 12920 129212008-02-03 Micah Cowan <micah@cowan.name> 12922 12923 * src/progress.c (create_image): Use number of characters/columns 12924 consumed, rather than number of bytes, to determine how much of 12925 a line we've used. Fixes assertion errors and field alignment 12926 bugs (#22161, #20481) 12927 (get_eta, count_cols): Added to support the changes for 12928 create_image. 12929 * src/http.c (http_loop): Put no-clobber logic back into http_loop, 12930 before starting to fetch, for when we're not doing 12931 content-disposition. 12932 129332008-02-03 Micah Cowan <micah@cowan.name> 12934 12935 * configure.in: Add checks for wchar.h, wcwidth function (to 12936 support column-counting in progress.c). 12937 * NEWS: Added line for 1.11.1. 12938 * util/README, util/Makefile.am, util/trunc.c: Added a small 12939 utility program to create files of arbitrary size (useful for 12940 testing certain situations with --continue). 12941 129422008-01-31 Micah Cowan <micah@cowan.name> 12943 12944 * util/README, util/dist-wget, util/download-netscape.html, 12945 util/download.html, util/update_po_files.sh, util/wget.spec: 12946 Removed (obsolete and/or incomplete). 12947 * Makefile.am: Removed no-longer-existant util stuff from 12948 extra_DIST (but added the README). 12949 129502008-01-31 Micah Cowan <micah@cowan.name> 12951 12952 * src/http.c (gethttp): Don't derive hs->contlen from possibly 12953 invalid/missing Content-Length; instead, get the appropriate 12954 value from the Content-Range header values. 12955 (parse_content_range): Handle '*' instance-length field. 12956 129572008-01-31 Micah Cowan <micah@cowan.name> 12958 12959 * doc/wget.texi: Ensure that license info appears in the info 12960 version of the manual. 12961 129622008-01-28 Micah Cowan <micah@cowan.name> 12963 12964 * po/en@quot.po, po/en@boldquot.po, po/en_US.po: Updated 12965 translations for copyright year in --version. 12966 * po/Rules-quot: Make en@*-update should create wget.pot. 12967 * configure.ac: Ensure that en_US appears in ALL_LINGUAS exactly 12968 once. 12969 129702008-01-25 Micah Cowan <micah@cowan.name> 12971 12972 * tests/Makefile.am: Updated copyright year. 12973 129742008-01-25 Micah Cowan <micah@cowan.name> 12975 12976 * src/main.c: Added notes to translators regarding (C), diacritics 12977 in names. 12978 * src/Makefile.am, cmpt.c, connect.c, connect.h, convert.c, 12979 cookies.c, cookies.h, ftp-basic.c, ftp-ls.c, ftp-opie.c, ftp.c, 12980 ftp.h, gen-md5.c, gen-md5.h, gnutls.c, hash.c, hash.h, host.c, 12981 host.h, html-parse.c, html-parse.h, html-url.c, http-ntlm.c, 12982 http-ntlm.h, http.c, http.h, init.c, init.h, log.c, log.h, 12983 main.c, mswindows.c, mswindows.h, netrc.c, netrc.h, openssl.c, 12984 options.h, progress.c, progress.h, ptimer.c, ptimer.h, recur.c, 12985 recur.h, res.c, res.h, retr.c, retr.h, spider.c, spider.h, 12986 ssl.h, sysdep.h, test.c, test.h, url.c, url.h, utils.c, 12987 utils.h, wget.h, xmalloc.c, xmalloc.h: Updated copyright year. 12988 129892008-01-25 Micah Cowan <micah@cowan.name> 12990 12991 * msdos/config.h: Updated copyright year. 12992 129932008-01-25 Micah Cowan <micah@cowan.name> 12994 12995 * Makefile.am, NEWS, README, configure.ac, configure.bat, 12996 m4/wget.m4, po/POTFILES.in, util/Makefile.am, util/dist-wget, 12997 util/rmold.pl, files: Updated copyright year. 12998 129992008-01-25 Micah Cowan <micah@cowan.name> 13000 * doc/Makefile.am, wget.texi: Updated copyright year. 13001 130022008-01-24 Micah Cowan <micah@cowan.name> 13003 13004 * configure.ac: Added en_US LINGUA (generated). 13005 * po/Rules-quot: Added rule to copy en_US.po from en@quot.po. 13006 * po/boldquot.sed, po/quot.sed: Translate _all_ apostrophes we 13007 find, not just the ones used for quotes; and add rules to use 13008 the copyight symbol, and write Hrvoje's last name properly. ^_^ 13009 * po/en@quot.po, po/en@boldquot.po: Updated by new rules. 13010 * po/en_US.po: Added. 13011 130122008-01-23 Micah Cowan <micah@cowan.name> 13013 13014 * tests/Makefile.am: Add libmd5 to unit-tests. 13015 130162007-12-10 Micah Cowan <micah@cowan.name> 13017 13018 * src/main.c: The option is --content-disposition, not 13019 --no-content-disposition (at the moment). 13020 130212007-12-10 Micah Cowan <micah@cowan.name> 13022 13023 * doc/wget.texi: Document the --content-disposition option (and not 13024 just the .wgetrc setting). 13025 130262007-12-10 Micah Cowan <micah@cowan.name> 13027 13028 * NEWS: Removed developer-only notices (Autoconf, TODO, PATCHES, 13029 GNUTLS). 13030 130312007-12-08 Hrvoje Niksic <hniksic@xemacs.org> 13032 13033 * src/ftp.c (ftp_retrieve_glob): Print both arguments of fnmatch in 13034 fnmatch error message. 13035 (ftp_retrieve_glob): Don't match with fnmatch if we're only 13036 supposed to get one file. 13037 130382007-12-07 Micah Cowan <micah@cowan.name> 13039 13040 * src/Makefile.am: Plug in vars to include stuff from 13041 $(top_srcdir)/md5 when appropriate. 13042 130432007-12-07 Micah Cowan <micah@cowan.name> 13044 13045 * lib/Makefile.am, lib/c-ctype.c, lib/c-ctype.h, lib/gettext.h, 13046 lib/stdbool.in.h, lib/unistd.in.h, m4/gnulib-cache.m4, 13047 m4/gnulib-common.m4, m4/gnulib-comp.m4, m4/unistd_h.m4: 13048 Updated from gnulib. 13049 * Makefile.am, configure.ac: Plugged in the md5/ stuff. 13050 * lib/md5.c, lib/md5.h, lib/stdint.in.h, lib/wchar.in.h, 13051 m4/longlong.m4, m4/md5.m4, m4/stdint.m4, m4/wchar.m4: Moved to 13052 md5/. 13053 * md5/Makefile.am, md5/dummy.c, md5/m4/gnulib-cache.m4, 13054 md5/m4/gnulib-common.m4, md5/m4/gnulib-comp.m4, 13055 md5/m4/gnulib-tool.m4, md5/m4/include_next.m4, 13056 md5/m4/longlong.m4, md5/m4/md5.m4, md5/m4/stdint.m4, 13057 md5/m4/wchar.m4, md5/md5.c, md5/md5.h, md5/stdint.in.h, 13058 md5/wchar.in.h: Moved/copied from lib/, m4/; updated from 13059 gnulib. 13060 * m4/ulonglong.m4: Removed (via update from gnulib). 13061 130622007-12-06 Micah Cowan <micah@cowan.name> 13063 13064 * doc/wget.texi: "the the" -> "the" 13065 130662007-12-05 Micah Cowan <micah@cowan.name> 13067 13068 * src/utils.c (subdir_p): Handle the case where d1 is "". 13069 * src/convert.c (convert_all_links): Don't return without 13070 deallocating timer. 13071 130722007-12-05 Micah Cowan <micah@cowan.name> 13073 13074 * doc/wget.texi <Wgetrc Commands>: Explicitly mention that 13075 --content-disposition has known issues. 13076 130772007-12-05 Micah Cowan <micah@cowan.name> 13078 13079 * NEWS: Reword warnings regarding --content-disposition. 13080 130812007-11-28 Micah Cowan <micah@cowan.name> 13082 13083 * tests/Makefile.am: Updated license exception for OpenSSL, per the 13084 SFLC. 13085 130862007-11-28 Micah Cowan <micah@cowan.name> 13087 13088 * msdos/config.h: Updated license exception for OpenSSL, per the SFLC. 13089 130902007-11-28 Micah Cowan <micah@cowan.name> 13091 13092 * src/Makefile.am, cmpt.c, connect.c, connect.h, convert.c, 13093 convert.h, cookies.c, cookies.h, ftp-basic.c, ftp-ls.c, 13094 ftp-opie.c, ftp.c, ftp.h, gen-md5.c, gen-md5.h, gnutls.c, 13095 hash.c, hash.h, host.c, host.h, html-parse.c, html-parse.h, 13096 html-url.c, http-ntlm.c, http-ntlm.h, http.c, http.h, init.c, 13097 init.h, log.c, log.h, main.c, mswindows.c, mswindows.h, 13098 netrc.c, netrc.h, openssl.c, options.h, progress.c, progress.h, 13099 ptimer.c, ptimer.h, recur.c, recur.h, res.c, res.h, retr.c, 13100 retr.h, safe-ctype.c, safe-ctype.h, spider.c, spider.h, ssl.h, 13101 sysdep.h, test.c, test.h, url.c, url.h, utils.c, utils.h, 13102 wget.h, xmalloc.c, xmalloc.h: Updated license exception for 13103 OpenSSL, per the SFLC. 13104 131052007-11-28 Micah Cowan <micah@cowan.name> 13106 13107 * Makefile.am, README, autogen.sh, configure.bat, configure.in, 13108 m4/wget.m4, util/Makefile.am, util/dist-wget: Updated license 13109 exception for OpenSSL, per the SFLC. 13110 131112007-10-30 Micah Cowan <micah@cowan.name> 13112 13113 * src/main.c (main): Declare argv parameter as char **argv, rather 13114 than char *const *argv. This fixes usage of getopt_long, 13115 regardless of whether getopt_long has a constified argv or not. 13116 131172007-10-23 Micah Cowan <micah@schmendrick> 13118 13119 * lib/stdbool.in.h, lib/stdint.in.h: gnulib-tool --update. 13120 Includes fix for broken stdbool.h on Tru64. 13121 131222007-10-22 Micah Cowan <micah@cowan.name> 13123 13124 * po/*.po: Refresh from TP and update-po. 13125 * lib/Makefile.am, m4/gnulib-cache.m4, m4/longlong.m4, 13126 m4/ulonglong.m4, maint.mk: gnulib-tool --update. Includes fix 13127 for maint.mk with old versions of gzip. 13128 131292007-10-22 Gisle Vanem <gvanem@broadpark.no> 13130 13131 * src/mswindows.c: Move INHIBIT_WRAP macro definition up with wget.h 13132 inclusion. 13133 131342007-10-18 Steven Schweda <sms@antinode.org> 13135 13136 * src/sysdep.h: #include <stdint.h> as well as <inttypes.h>, to work 13137 around a glitch on Tru64 systems. 13138 131392007-10-18 Micah Cowan <micah@cowan.name> 13140 13141 * tests/Makefile.am: Add dependency for unit_tests on libgnu.a. 13142 131432007-10-18 Micah Cowan <micah@cowan.name> 13144 13145 * src/Makefile.am: version.c should not be distributed. Removed 13146 config-post.h. Add version.c dependency and gnulib include path 13147 for libunittest.a. 13148 * src/sysdep.h: Got contents of config-post.h 13149 * src/config-post.h: Removed. 13150 * src/wget.h: #include "config.h". 13151 * src/alloca.c, cmpt.c, connect.c, convert.c, cookies.c, 13152 ftp-basic.c, ftp-ls.c, ftp-opie.c, ftp.c, gen-md5.c, gnutls.c, 13153 hash.c, host.c, html-parse.c, html-url.c, http-ntlm.c, http.c, 13154 init.c, log.c, main.c, mswindows.c, netrc.c, openssl.c, 13155 progress.c, ptimer.c, recur.c, res.c, retr.c, spider.c, url.c, 13156 utils.c, xmalloc.c: Use wget.h at very top, and instead of 13157 config.h. 13158 131592007-10-18 Micah Cowan <micah@cowan.name> 13160 13161 * po/POTFILES.in: Removed no-longer-existing or generated files. 13162 * autogen.sh: Reinstated, in case we have to do something at 13163 some point other than autoreconf. 13164 * Makefile.am: Put autogen.sh back in EXTRA_DIST. Just in case 13165 someone needs to rebuild configure. 13166 * configure.ac: Removed config-post.h inclusion from bottom of 13167 generated config.h. 13168 131692007-10-16 Micah Cowan <micah@cowan.name> 13170 13171 * README: Draw attention to wiki:PatchGuidelines. 13172 131732007-10-15 Micah Cowan <micah@cowan.name> 13174 13175 * src/Makefile.am: Remove intermediary hg-id file generation, make 13176 version.c-generation more portable. 13177 131782007-10-15 Gisle Vanem <gvanem@broadpark.no> 13179 13180 * msdos/config.h: Added some HAVE_* for djgpp 2.04 and Watcom 1.7+. 13181 13182 * msdos/Makefile.DJ: rewritten for including some files from ../lib. 13183 13184 * msdos/Makefile.WC: Ditto. Handling source-files out-of current 13185 directory makes compliation a bit more painfull. AFAICS, one 13186 must use explicit rules. 13187 131882007-10-14 Micah Cowan <micah@cowan.name> 13189 13190 * src/cmpt.c, cookies.c, ftp-basic.c, ftp-ls.c, ftp.c, hash.c, 13191 host.c, html-parse.c, html-url.c, http-ntlm.c, http.c, init.c, 13192 log.c, main.c, netrc.c, openssl.c, res.c, url.c, utils.c, 13193 wget.h: Replace uses of ISSPACE, etc with c_isspace, etc. 13194 * src/gnu-md5.c, gnu-md5.h: Removed, in deference to gnulib. 13195 * src/Makefile.am: Removed gnu-md5.h from wget_SOURCES. 13196 * src/gen-md5.c: Changed #inclusion of gnu-md5.h to md5.h (gnulib's). 13197 * src/recur.c (download_child_p): Print error if unlink of 13198 robots.txt fails. 13199 * src/main.c (main): --spider or --delete-after now implies 13200 --no-directories (thanks, Josh Williams). 13201 132022007-10-14 Micah Cowan <micah@cowan.name> 13203 13204 * configure.ac: Let gnulib handle builtin MD5 functionality. 13205 * NEWS: Mention gnulib. 13206 132072007-10-14 Joshua David Williams <yurimxpxman@gmail.com> 13208 13209 * src/recur.c (download_child_p): Remove robots.txt if 13210 --delete-after or --spider is on. 13211 132122007-10-13 Micah Cowan <micah@cowan.name> 13213 13214 * src/Makefile.am: Make version.c depend on Wget dependencies (source 13215 files, plus such things as LIBOBJS so we get things like 13216 http-ntlm.c). Removed getopt.[ch], as we're now using gnulib for 13217 these. 13218 132192007-10-13 Micah Cowan <micah@cowan.name> 13220 13221 * doc/wget.texi <Mailing Lists>: Replaced mention of no-longer 13222 included PATCHES file with link to relevant Wgiki page. 13223 * doc/wget.texi <Internet Relay Chat>: Added new section. 13224 132252007-10-13 Micah Cowan <micah@cowan.name> 13226 13227 * GNUMakefile, maint.mk: Added as part of the gnulib-ization. 13228 * Makefile.am: gnulib-ized. 13229 * configure.ac: gnulib-ized. Removed built-in getopt checks. 13230 132312007-10-12 Micah Cowan <micah@cowan.name> 13232 13233 * PATCHES: Removed. 13234 * NEWS: Updated info about source repositories, removal of 13235 PATCHES file. 13236 132372007-10-10 Micah Cowan <micah@cowan.name> 13238 13239 * src/http-ntlm.c: Include openssl/opensslv.h explicitly, instead of 13240 hoping it'll be included by accident in openssl/des.h. 13241 132422007-10-10 Micah Cowan <micah@cowan.name> 13243 13244 * doc/wget.texi <Wgetrc Commands>: Fixed "doewnloads" typo. 13245 132462007-10-09 gettextize <bug-gnu-gettext@gnu.org> 13247 13248 * m4/gettext.m4: New file, from gettext-0.16.1. 13249 * m4/iconv.m4: New file, from gettext-0.16.1. 13250 * m4/lib-ld.m4: Upgrade to gettext-0.16.1. 13251 * m4/lib-link.m4: Upgrade to gettext-0.16.1. 13252 * m4/lib-prefix.m4: Upgrade to gettext-0.16.1. 13253 * m4/nls.m4: New file, from gettext-0.16.1. 13254 * m4/po.m4: New file, from gettext-0.16.1. 13255 * m4/progtest.m4: New file, from gettext-0.16.1. 13256 * po/Makefile.in.in: Upgrade to gettext-0.16.1. 13257 * po/Rules-quot: New file, from gettext-0.16.1. 13258 * po/boldquot.sed: New file, from gettext-0.16.1. 13259 * po/en@boldquot.header: New file, from gettext-0.16.1. 13260 * po/en@quot.header: New file, from gettext-0.16.1. 13261 * po/insert-header.sin: New file, from gettext-0.16.1. 13262 * po/quot.sed: New file, from gettext-0.16.1. 13263 * po/remove-potcdate.sin: New file, from gettext-0.16.1. 13264 132652007-10-09 Micah Cowan <micah@cowan.name> 13266 13267 * src/gettext.h: Imported from /usr/share/gettext, fuller handling 13268 of --disable-nls. 13269 * src/wget.h: Remove logic for handling lack of NLS (now in 13270 gettext.h). 13271 * src/main.c: Use gettext's ENABLE_NLS rather than HAVE_NLS. 13272 * src/Makefile.am: added @LIBINTL@ to LIBS (though it probably 13273 belongs in LDADD, along with everything else currently assigned 13274 to LIBS). 13275 132762007-10-09 Micah Cowan <micah@cowan.name> 13277 13278 * configure.in: Renamed to configure.ac 13279 * configure.ac: Renamed from configure.in. Added invocations of 13280 AM_GNU_GETTEXT, etc. Added en@quot and en@boldquot pseudo-LINGUA 13281 support. 13282 * ABOUT-NLS: Added back in (required by autoreconf :\). 13283 * Makefile.am: Added ABOUT-NLS and msdos/Makefile.WC to EXTRA_DIST. 13284 * m4/wget.m4: Removed no-longer-used NLS stuff. 13285 * Makefile.in.in: Restore previous policy of not updating .po's 13286 unless explicitly asked (via update-po). 13287 132882007-10-09 Gisle Vanem <gvanem@broadpark.no> 13289 13290 * src/mswindows.c: 'argc' and 'argv' in 'windows_main()' are no longer 13291 needed. Hence simply the prototype. Free 'exec_name' at exit. 13292 132932007-10-08 Micah Cowan <micah@cowan.name> 13294 13295 * src/http.c (http_loop): Add send_head_first conditional back 13296 around code that needs it, but not around the last-modified 13297 header-parsing stuff this time. Removed no-longer-useful (was it 13298 ever?) restart_loop boolean, continuing unconditionally at end 13299 of send_head_first conditional block (if we haven't jumped out). 13300 133012007-10-08 Micah Cowan <micah@cowan.name> 13302 13303 * doc/wget.texi: Credit to Ralf Wildenhues for automakifying patches. 13304 133052007-10-08 Micah Cowan <micah@cowan.name> 13306 13307 * AUTHORS: Credit to Ralf Wildenhues for automakifying patches. 13308 133092007-10-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> 13310 13311 * tests/WgetTest.pm.in: wget is built in the build tree. Use an 13312 absolute path to the binary. 13313 * tests/Makefile.in: Removed, replaced by Makefile.am. 13314 * tests/Makefile.am: Converted from Makefile.in. 13315 133162007-10-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> 13317 13318 * po/Makefile.in.in: Since `distdir' is used now, adjust 13319 DISTFILES to the missing ChangeLog file. 13320 Add trivial targets ps, pdf, html. 13321 * Makefile.in: Removed, replaced by Makefile.am. 13322 * Makefile.am: Converted from Makefile.in. 13323 * util/Makefile.in: Removed, replaced by Makefile.am. 13324 * util/Makefile.am: Converted from Makefile.in. 13325 * configure.in: Adjust for automake support. 13326 133272007-10-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> 13328 13329 * doc/Makefile.in: Removed, replaced by Makefile.am. 13330 * doc/Makefile.am: Converted from Makefile.in. 13331 133322007-10-05 Micah Cowan <micah@cowan.name> 13333 13334 * config.guess, config.sub, install-sh: Update from versions 13335 found in /usr/share/automake/. 13336 * autogen.sh: Removed, in favor of just running autoreconf. 13337 133382007-10-04 Micah Cowan <micah@cowan.name> 13339 13340 * src/http.c (http_loop): We've got_name if content_disposition 13341 support isn't on; make sure we continue properly in that case, 13342 even though we're not sending HEAD. 13343 * src/Makefile.in: Removed, replaced by Makefile.am. 13344 * src/Makefile.am: Converted from Makefile.in. 13345 133462007-10-03 Micah Cowan <micah@cowan.name> 13347 13348 * doc/wget.texi <Wgetrc Commands>: Cleaned up alphabetization, 13349 more consistent use of underscores. Added a description of the 13350 content_disposition wgetrc command. 13351 133522007-10-03 Micah Cowan <micah@cowan.name> 13353 13354 * NEWS: Note missing functionality from GnuTLS support. Call out 13355 attention to content_disposition's experimental status. 13356 133572007-10-02 Stephen Gildea <stepheng+wget@gildea.com> 13358 13359 * src/connect.c (connect_to_host): Warn about host lookup failures. 13360 133612007-10-02 Micah Cowan <micah@cowan.name> 13362 13363 * src/ftp.c (getftp, ftp_loop_internal), http.c (http_loop), main 13364 (main): Use datetime_str instead of time_str, for those who have 13365 potentially long-running sessions. Based on suggestions by Saso 13366 Tomat <miskox@hotmail.com> and Steven M. Schweda 13367 <sms@antinode.org>. 13368 * src/http.c (gethttp): Warn about host lookup failures. Adjusted 13369 from Stephen Gildea's patch. 13370 133712007-10-02 Gisle Vanem <gvanem@broadpark.no> 13372 13373 * src/ftp.c: Use "_listing" for MSDOS (".listing" is illegal). 13374 13375 * src/url.c: Update comment for 'filechr_not_windows'. 13376 13377 * src/utils.c: Include <process.h> for 'getpid()' on Watcom. 13378 133792007-10-02 Gisle Vanem <gvanem@broadpark.no> 13380 13381 * msdos/config.h: Removed unused defines, added needed 'HAVE_*' defines. 13382 13383 * msdos/Makefile.DJ: rewritten to be used from './src' directory. 13384 Added '-DOPENSSL_NO_KRB5' for OpenSSL build. Target is 13385 now wget.exe. 13386 13387 * msdos/Makefile.WC: Added for building with OpenWatcom targeting 13388 32-bit DOS (DOS32A extender). 13389 133902007-10-01 Micah Cowan <micah@cowan.name> 13391 13392 * doc/wget.texi: Updated information in Mailing Lists, Reporting 13393 Bugs. Added Web Site section, and add information about Mac OS 13394 X, MS-DOS, and VMS in Portability. 13395 133962007-09-27 Micah Cowan <micah@cowan.name> 13397 13398 * doc/wget.texi: Removed "for more details" from parenthesese 13399 enclosing @pxref{}s, so that texi2pod.pl knows to remove the 13400 whole reference. Made some gramattical improvements, and 13401 strengthened the recommendation to use the info manual instead. 13402 * doc/texi2pod.pl: Brought in some updates from the GCC version. Not 13403 an entire update, since a couple "fixes" there breaks stuff 13404 here. 13405 134062007-09-25 Micah Cowan <micah@cowan.name> 13407 13408 * tests/Makefile.in: Use EXEEXT instead of exeext. 13409 134102007-09-25 Micah Cowan <micah@cowan.name> 13411 13412 * src/Makefile.in: Use EXEEXT instead of exeext. 13413 134142007-09-25 Micah Cowan <micah@cowan.name> 13415 13416 * configure.in: Remove unnecessary heuristic to generate exeext 13417 variable, since AC_PROG_CC and others automatically set EXEEXT. 13418 Pointed out by Steve Kenton <skenton@ou.edu>. 13419 134202007-09-24 Jochen Roderburg <roderburg@uni-koeln.de> 13421 13422 * src/http.c (http_zero): Remove no-longer-used local_size variable. 13423 Fixes bug #21057. 13424 134252007-09-24 Gisle Vanem <giva@bgnett.no> 13426 13427 * src/connect.c, init.c, main.c, openssl.c, options.h, sysdep.h, 13428 url.c, utils.c: Added support for building on MS-DOS. 13429 134302007-09-24 Gisle Vanem <giva@bgnett.no> 13431 13432 * msdos/Makefile.DJ, config.h: Added to support building on MS-DOS via 13433 DJGPP. 13434 134352007-09-12 Micah Cowan <micah@cowan.name> 13436 13437 * src/http.c (http_loop): Remove send_head_first from condition for 13438 parsing timestamp. 13439 134402007-09-12 Micah Cowan <micah@cowan.name> 13441 13442 * doc/wget.texi: Expanded the description of -O. Clarified the 13443 detection of elements as "patterns" versus "suffixes" in -A, 13444 -R. Describe -p in relation to -nc. 13445 134462007-09-12 Micah Cowan <micah@cowan.name> 13447 13448 * AUTHORS: Added... me... 13449 * TODO: file removed, bugtracker is authoritative source for 13450 planned changes. 13451 134522007-08-29 Micah Cowan <micah@cowan.name> 13453 13454 * src/openssl.c (ssl_init): Re un-const-ified the meth local 13455 variable, to match current versions of openssl. 13456 * src/spider.c: Removed visited_url function, as it may be very 13457 inefficient. 13458 (print_broken_links): Removed traversal of referrers, until such 13459 time as a more efficient implementation can be written. 13460 * src/spider.h: Replaced declaration of visited_url with an 13461 empty-bodied, function-like macro. 13462 134632007-08-27 Micah Cowan <micah@cowan.name> 13464 13465 * src/wget.h: Added macro replacement for ngettext, for environs 13466 that lack NLS. 13467 134682007-08-27 Gisle Vanem <giva@bgnett.no> 13469 13470 * src/mswindows.c (run_with_timeout): Ensure that the correct 13471 conversion specification is used for the return result of 13472 the GetLastError function. 13473 * src/getopt.c: Fix missing (but, accidentally, legal) comment 13474 delimiter after licensing text. 13475 * src/recur.c (retrieve_tree): Inserted missing cast for strip_auth. 13476 Includes adjustment by Ralf Wildenhues. 13477 * src/openssl.c (ssl_init): const-ified the meth local variable. 13478 * src/main.c: Include all the static function definitions in the 13479 "#ifndef TESTING" clause, leaving just the definitions for 13480 exec_name (not set), and opt. 13481 * src/utils.c (run_with_timeout): Now returns bool, to align with 13482 declaration in utils.h. 13483 134842007-08-26 Micah Cowan <micah@cowan.name> 13485 13486 * src/spider.c (print_broken_links): Fixed incorrect plurals msgid 13487 usage, switched to use ngettext function. 13488 134892007-08-26 Micah Cowan <micah@cowan.name> 13490 13491 * po/POTFILES.in: Added spider.c. 13492 134932007-08-24 Micah Cowan <micah@cowan.name> 13494 13495 * src/http.c (http_loop): Introduced time_came_from_head boolean 13496 flag, to help avoid parsing the same Last-Modified header twice. 13497 Replaced spidering returns of RETRUNNEEDED for some situations, 13498 to RETROK, as otherwise it will be interpreted as an error. 13499 RETRUNNEEDED appears never to be referenced outside of 13500 http.c (and wget.h), and, when returned by gethttp, is 13501 translated by http_loop to RETROK. 13502 * src/url.c (are_urls_equal): Don't call getchar_from_escaped_string 13503 if u2 is shorter than u1. 13504 (getchar_from_escaped_string): Don't decode reserved characters. 13505 Handle illegally appearing '%'s as literal '%'s. Ensure hex 13506 digits before attempting to decode. 13507 (test_are_urls_equal): Added tests to handle u2 shorter than u1, 13508 and %2f not treated the same as /. 13509 * src/spider.c (in_url_list_p): Don't call are_urls_equal if one of 13510 them is NULL. 13511 135122007-08-24 Micah Cowan <micah@cowan.name> 13513 13514 * po/no.po: removed; replaced by nb.po (per the translation 13515 project coordinator, Benno Schulenberg). 13516 135172007-08-23 Joshua David Williams <yurimxpxman@gmail.com> 13518 13519 * src/spider.c (in_url_list_p): Removed the bool verbose argument 13520 135212007-08-22 Micah Cowan <micah@cowan.name> 13522 13523 * Makefile.in: Exclude .svn directories and below from 13524 distribution. 13525 135262007-08-22 Mauro Tortonesi <mauro@ferrara.linux.it> 13527 13528 * src/http.c (http_loop): Fall back to GET if HEAD fails with a 500 or 501 13529 error code. 13530 135312007-08-21 Mauro Tortonesi <mauro@ferrara.linux.it> 13532 13533 * tests/WgetTest.pm.in: Added support for timestamping of pre-existing 13534 files. 13535 13536 * tests/Test-N-current.px: Fixed broken test logic. 13537 13538 * tests/Makefile.in: Updated list of automatically run tests. 13539 13540 * tests/Test-HTTP-Content-Disposition.px: Added -e contentdisposition=on 13541 option, since now HTTP Content-Disposition header support is turned 13542 off by default. 13543 13544 * tests/Test-HTTP-Content-Disposition-1.px: Ditto. 13545 135462007-08-21 Mauro Tortonesi <mauro@ferrara.linux.it> 13547 13548 * src/http.c (http_loop): Send preliminary HEAD request if -N is given and 13549 the destination file exists already. 13550 135512007-08-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> 13552 13553 * src/url.c (append_uri_pathel): Do not assume dest string to be 13554 zero-terminated. 13555 (test_append_uri_pathel): Terminate string to fix test failure. 13556 135572007-08-10 Mauro Tortonesi <mauro@ferrara.linux.it> 13558 13559 * tests/Test--spider--no-content-disposition-trivial.px: Added new tests for 13560 validation of HTTP Content-Disposition header support logic. In 13561 particular, these tests check wget's behavior for every combination of 13562 --spider [-r] and -e contentdisposition=on/off options. 13563 13564 * tests/Test--spider-r-HTTP-Content-Disposition.px: Ditto. 13565 13566 * tests/Test--spider-HTTP-Content-Disposition.px: Ditto. 13567 13568 * tests/Test--spider--no-content-disposition.px: Ditto. 13569 13570 * tests/Test--spider-r--no-content-disposition-trivial.px: Ditto. 13571 13572 * tests/Test--spider-r--no-content-disposition.px: Ditto. 13573 135742007-08-10 Mauro Tortonesi <mauro@ferrara.linux.it> 13575 13576 * src/http.c (http_loop): Fixed HTTP HEAD requests logic when --spider is 13577 given. 13578 135792007-08-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> 13580 13581 * src/url.c (url_string): Use comparison, not assignment, in 13582 check for auth_mode == URL_AUTH_HIDE_PASSWD. 13583 135842007-08-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> 13585 13586 * m4/wget.m4 (WGET_PROCESS_PO, AM_PATH_PROG_WITH_TEST): Add 13587 missing M4 quotation. Delete serial number. 13588 135892007-08-09 Micah Cowan <micah@cowan.name> 13590 13591 * src/http.c (http_loop): If we got a HEAD and then a GET, and the 13592 GET had a timestamp, use that one, not any we may have gotten 13593 from the HEAD. 13594 135952007-08-09 Micah Cowan <micah@cowan.name> 13596 13597 * NEWS: Timestamping from most recent response. 13598 135992007-08-08 Micah Cowan <micah@cowan.name> 13600 13601 * src/init.c (defaults): Content disposition will not be default, 13602 since it currently results in extra round-trips. 13603 136042007-08-08 Micah Cowan <micah@cowan.name> 13605 13606 * NEWS: Call attention to the fact that Content-Disposition is 13607 not enabled by default. 13608 136092007-08-07 Micah Cowan <micah@cowan.name> 13610 13611 * configure.in: Fix --with-libssl-prefix failure by replacing 13612 usage of sh "if" statement with "AS_IF" macros, to force 13613 AC_REQUIRE'd macros to be expanded before the conditional 13614 statement body. 13615 * NEWS: Note that configure.in now requires autoconf >= 2.61, 13616 to support AS_IF and its expansion of AC_REQUIREs. 13617 136182007-07-31 Micah Cowan <micah@cowan.name> 13619 13620 * src/http.c (gethttp): Set contlen = -1 when we encounter a 13621 negative-valued Content-Length header, so we don't consider it 13622 an internal error later on and call abort(). 13623 136242007-07-29 Micah Cowan <micah@cowan.name> 13625 13626 * src/url.h, url.c (url_string): Replaced bool arg of the url_string 13627 function with enum url_auth_mode, with added option to 13628 completely remove user/pass auth information. 13629 * src/http.c, ftp.c, url.c, recur.c: Adapted call to url_string 13630 function to fit new usage. 13631 * src/recur.c (retrieve_tree): Remove auth info from Referer header. 13632 136332007-07-29 Micah Cowan <micah@cowan.name> 13634 13635 * NEWS: No more auth before challenge. No more auth info in 13636 Referer. New --max-redirect option. 13637 136382007-07-28 Micah Cowan <micah@cowan.name> 13639 13640 * src/options.h, init.c, retr.c, main.c: renamed opt maxredirect 13641 field to max_redirect, for improved consistency. 13642 * src/init.c: changed max_redirect parser from cmd_number_inf to 13643 cmd_number, as infinite redirects may not be appropriate. 13644 Alternatively, if cmd_number_inf should be used, then 13645 opt.max_redirect's value should be checked a bit differently in 13646 retr.c, to allow for the "infinite" meaning of zero. 13647 136482007-07-28 Micah Cowan <micah@cowan.name> 13649 13650 * doc/wget.texi <HTTP Options>: Added --max-redirect option. 13651 136522007-07-25 Micah Cowan <micah@cowan.name> 13653 13654 * tests/HTTPServer.pm (run, send_response): Farmed out some logic from 13655 the run method into a separate one named send_response, which 13656 was then modified to handle simple authentication testing. 13657 (handle_auth): Added to handle simple authentication testing. 13658 (verify_auth_basic): Checks to make sure Basic credentials are 13659 valid. 13660 (verify_auth_digest): Stub added; always fails test. 13661 * tests/Makefile.in: Added Test-auth-basic.px to list of automatically 13662 run tests. 13663 * tests/Test-auth-basic: Simple basic authentication test; mainly just 13664 lets the server do its testing. Its current purpose is just to 13665 ensure that correct basic creds are sent, but never until a 13666 challenge has been sent. 13667 136682007-07-25 Micah Cowan <micah@cowan.name> 13669 13670 * src/http.c (create_authorization_line) 13671 (basic_authentication_encode, known_authentication_scheme_p) 13672 (load_cookies): Moved declarations up. 13673 (basic_authed_hosts): Added. Tracks what hosts have issued Basic 13674 challenge and been given the global username, password. 13675 (maybe_send_basic_creds): Added. Sends Basic creds for hosts that 13676 have issued Basic challenges. 13677 (register_basic_auth_host): Added. Instantiates 13678 basic_authed_hosts if necessary, then registers the host that 13679 has issued a challenge. 13680 (gethttp) <auth>: Only send authentication credentials after 13681 we've received a challenge from that host. This is a stop-gap 13682 fix until a proper fix can be implemented; still isn't quite 13683 right, as we should only be sending credentials automatically 13684 for authenticated paths and below, and not for the entire host. 13685 136862007-07-16 Joshua David Williams <yurimxpxman@gmail.com> 13687 13688 * src/test.h: tests made more verbose; now displays the name 13689 of each test run. 13690 136912007-07-16 Joshua David Williams <yurimxpxman@gmail.com> 13692 13693 * src/options.h: added maxredirect to options struct 13694 * src/init.c: added maxredirect to list of variables 13695 * src/retr.c (retrieve_url): replaced MAX_REDIRECTIONS with opt.maxredirect 13696 * src/main.c: added option --max-redirect 13697 136982007-07-10 Mauro Tortonesi <mauro@ferrara.linux.it> 13699 13700 * tests/Test--no-content-disposition.px: Added new tests for validation of 13701 HTTP Content-Disposition header support logic. In particular, these 13702 tests check wget's behavior for every combination of -N/-O and -e 13703 contentdisposition=on/off options. 13704 13705 * tests/Test--no-content-disposition-trivial.px: Ditto. 13706 13707 * tests/Test-N-HTTP-Content-Disposition.px: Ditto. 13708 13709 * tests/Test-N--no-content-disposition.px: Ditto. 13710 13711 * tests/Test-N--no-content-disposition-trivial.px: Ditto. 13712 13713 * tests/Test-O-HTTP-Content-Disposition.px: Ditto. 13714 13715 * tests/Test-O--no-content-disposition.px: Ditto. 13716 13717 * tests/Test-O--no-content-disposition-trivial.px: Ditto. 13718 137192007-07-10 Mauro Tortonesi <mauro@ferrara.linux.it> 13720 13721 * src/http.c (http_loop): Fixed the HTTP requests logic. Now it skips the 13722 preliminary HEAD request if either -O or --no-content-disposition are 13723 given, and neither --spider and -N are given. 13724 137252007-07-09 Micah Cowan <micah@cowan.name> 13726 13727 * README, util/wget.spec: Removed references to wget.sunsite.dk. 13728 137292007-07-05 Micah Cowan <micah@cowan.name> 13730 13731 * tests/Makefile.in: 13732 Updated GPL reference to version 3 or later, removed FSF 13733 address. 13734 137352007-07-05 Micah Cowan <micah@cowan.name> 13736 13737 * src/cmpt.c, connect.c, connect.h, convert.c, convert.h: 13738 * src/cookies.c, cookies.h, ftp-basic.c, ftp.c, ftp.h, ftp-ls.c: 13739 * src/ftp-opie.c, gen-md5.c, gen-md5.h, getopt.c, getopt.h, gnu-md5.c: 13740 * src/gnu-md5.h, gnutls.c, hash.c, hash.h, host.c, host.h: 13741 * src/html-parse.c, html-parse.h, html-url.c, http.c, http.h: 13742 * src/http-ntlm.c, http-ntlm.h, init.c, init.h, log.c, log.h, main.c: 13743 * src/Makefile.in, mswindows.c, mswindows.h, netrc.c, netrc.h: 13744 * src/openssl.c, options.h, progress.c, progress.h, ptimer.c: 13745 * src/ptimer.h, recur.c, recur.h, res.c, res.h, retr.c, retr.h: 13746 * src/safe-ctype.c, safe-ctype.h, spider.c, spider.h, ssl.h, sysdep.h: 13747 * src/test.c, test.h, url.c, url.h, utils.c, utils.h, wget.h: 13748 * src/xmalloc.c, xmalloc.h: 13749 Updated GPL reference to version 3 or later, removed FSF 13750 address. 13751 137522007-07-05 Micah Cowan <micah@cowan.name> 13753 13754 * doc/fdl.texi: 13755 Changed to match the version in gnulib. 13756 13757 * doc/Makefile.in: 13758 * doc/texi2pod.pl: 13759 * doc/texinfo.tex: 13760 Updated GPL reference to version 3 or later, removed FSF 13761 address. 13762 13763 * doc/wget.texi: 13764 Slightly reworded the FDL license invocation. Replaced the 13765 maintainer reference. Removed the GPL text from the manual. 13766 13767 * doc/gpl.texi: 13768 Removed due to discontinuation of reference in Wget manual. 13769 137702007-07-05 Micah Cowan <micah@cowan.name> 13771 13772 * AUTHORS: 13773 Draw attention to previous maintainers. 13774 13775 * autogen.sh, config.guess, config.sub, configure.bat: 13776 * configure.in, m4/wget.m4, Makefile.in, util/dist-wget: 13777 * util/Makefile.in, util/rmold.pl: 13778 Updated GPL reference to version 3 or later, removed FSF 13779 address. 13780 13781 * README: 13782 Updated reference to maintainer, and updated GPL reference to 13783 version 3 or later. 13784 13785 * COPYING: 13786 Replaced with verson 3. 13787 137882007-07-04 Mauro Tortonesi <mauro@ferrara.linux.it> 13789 13790 * src/http.c (http_loop): Skip HEAD request and start immediately with GET 13791 if -O is given. 13792 137932007-06-14 Mauro Tortonesi <mauro@ferrara.linux.it> 13794 13795 * tests/FTPServer.pm: Added FTP testing support. 13796 13797 * tests/FTPTest.pm: Ditto. 13798 13799 * tests/Test-ftp.px: Ditto. 13800 138012007-02-02 Hrvoje Niksic <hniksic@xemacs.org> 13802 13803 * src/netrc.c: Don't make netrc_list static, as it prevents 13804 compilation with DEBUG_MALLOC. 13805 13806 * src/utils.c (aprintf): Don't use vasprintf when DEBUG_MALLOC is 13807 requested because, in that case, we want the calls to malloc to be 13808 coming from us. 13809 138102007-02-02 Hrvoje Niksic <hniksic@xemacs.org> 13811 13812 * src/http.c (print_server_response): Escape non-printable characters 13813 in server respone. 13814 138152007-01-23 Hrvoje Niksic <hniksic@xemacs.org> 13816 13817 * src/progress.c (create_image): Check for ETA overflow. 13818 (print_row_stats): Ditto. 13819 138202007-01-23 Hrvoje Niksic <hniksic@xemacs.org> 13821 13822 * src/cookies.c (parse_set_cookie): Would erroneously discard cookies 13823 with unparsable expiry time. 13824 138252007-01-09 Steven M. Schweda <sms@antinode.org> 13826 13827 * src/ftp-basic.c (ftp_syst): Fixed segfault if response text is missing. 13828 138292007-01-09 Mauro Tortonesi <mauro@ferrara.linux.it> 13830 13831 * src/init.c (cmd_spec_prefer_family): Small fix to get rid of a gcc 13832 warning about strict-aliasing violation. 13833 138342006-12-29 Gisle Vanem <giva@bgnett.no> 13835 13836 * src/mswindows.c: Avoid a warning if 'ws_hangup()' is unused. 13837 138382006-12-27 Mauro Tortonesi <mauro@ferrara.linux.it> 13839 13840 * src/http.c (parse_content_disposition): Consider directory prefix, if 13841 specified. 13842 138432006-12-22 Mauro Tortonesi <mauro@ferrara.linux.it> 13844 13845 * tests/HTTPTest.pm: Don't ignore initial '/' character in requested URLs. 13846 138472006-11-21 Hrvoje Niksic <hniksic@xemacs.org> 13848 13849 * src/retr.c (retrieve_from_file): Ditto. 13850 (url_uses_proxy): New function. 13851 13852 * src/main.c (main): Don't check for opt.use_proxy when deciding 13853 whether to call retrieve_url or retrieve_tree; check whether the 13854 proxy would be used for *this* URL. 13855 138562006-11-10 Mauro Tortonesi <mauro@ferrara.linux.it> 13857 13858 * tests/Test-np.px: Added test for -np. 13859 13860 * tests/HTTPTest.pm: Ignore initial '/' character in requested URLs. 13861 138622006-10-17 Mike Grant <mggr@pml.ac.uk> 13863 13864 * src/ftp.c (ftp_loop_internal): Would incorrectly skip changing 13865 working directory when retrying after a failed FTP attempt. 13866 Originally reported by Nate Eldredge. 13867 138682006-10-12 Mauro Tortonesi <mauro@ferrara.linux.it> 13869 13870 * tests/Test1.px: Renamed to Test-noop.px. 13871 13872 * tests/Test-noop.px: Ditto. 13873 13874 * tests/Test2.px: Renamed to Test-N.px. 13875 13876 * tests/Test-N.px: Ditto. 13877 13878 * tests/Test3.px: Renamed to Test-nonexisting-quiet.px. 13879 13880 * tests/Test-nonexisting-quiet.px: Ditto. 13881 13882 * tests/Test4.px: Renamed to Test-O-nonexisting.px. 13883 13884 * tests/Test-O-nonexisting.px: Ditto. 13885 13886 * tests/Test5.px: Renamed to Test-HTTP-Content-Disposition.px. 13887 13888 * tests/Test-HTTP-Content-Disposition.px: Ditto. 13889 13890 * tests/Test6.px: Renamed to Test-HTTP-Content-Disposition-1.px. 13891 13892 * tests/Test-HTTP-Content-Disposition-1.px: Ditto. 13893 13894 * tests/Test7.px: Renamed to Test-HTTP-Content-Disposition-2.px. 13895 13896 * tests/Test-HTTP-Content-Disposition-2.px: Ditto. 13897 13898 * tests/Test8.px: Replaced by Test--spider-r.px. 13899 13900 * tests/Test9.px: Renamed to Test-Restrict-Lowercase.px. 13901 13902 * tests/Test-Restrict-Lowercase.px: Ditto. 13903 13904 * tests/Test10.px: Renamed to Test-Restrict-Uppercase.px. 13905 13906 * tests/Test-Restrict-Uppercase.px: Ditto. 13907 13908 * tests/Test--spider.px: Added test for spider mode. 13909 13910 * tests/Test--spider-fail.px: Added failing test for spider mode. 13911 13912 * tests/Test--spider-r.px: Added test for recursive spider mode. 13913 13914 * tests/Test-c.px: Added test for --continue mode. 13915 13916 * tests/Test-c-full.px: Added test for --continue mode. 13917 13918 * tests/Test-c-partial.px: Added test for --continue mode. 13919 13920 * tests/Test-O.px: Added test for -O. 13921 13922 * tests/Test-N-current.px: Added test for -N. 13923 13924 * tests/Test-N-old.px: Added test for -N. 13925 13926 * tests/Test-E-k.px: Added test for -E -k. 13927 13928 * tests/Test-E-k-K.px: Added test for -E -k -K. 13929 139302006-10-12 Mauro Tortonesi <mauro@ferrara.linux.it> 13931 13932 * src/convert.c (downloaded_file): Fixed bug which used to break -E -k -K 13933 mode. 13934 139352006-08-28 Noèl Köthe <noel@debian.org> 13936 13937 * Makefile.in: Fixed a DESTDIR-related bug. 13938 139392006-08-28 Mauro Tortonesi <mauro@ferrara.linux.it> 13940 13941 * src/http.c: #include'd spider.h to get rid of compiler warnings. 13942 13943 * src/main.c: Ditto. 13944 13945 * src/recur.c: Ditto. 13946 139472006-08-24 Mauro Tortonesi <mauro@ferrara.linux.it> 13948 13949 * src/Makefile.in: Added spider.c to the list of files to compile and 13950 spider.h to the list of header files. Updated copyright information. 13951 13952 * src/http.c: Major changes to recursive spider mode. Now for every 13953 resource we are supposed to check, we send a HEAD request to find out 13954 if it exists. If the resource is a HTML file, we retrieve it and parse 13955 it to discover links to other resources. 13956 13957 * src/recur.c: Ditto. 13958 13959 * src/res.c (res_retrieve_file): Disable opt.timestamping and opt.spider 13960 when retrieving robots.txt. Updated copyright information. 13961 13962 * src/convert.c: Moved code tracking broken links to spider.c. 13963 13964 * src/convert.h: Ditto. 13965 13966 * src/spider.c: Created new file to keep track of visited URLs in spider 13967 mode. 13968 13969 * src/spider.h: Ditto. 13970 139712006-08-21 Mauro Tortonesi <mauro@ferrara.linux.it> 13972 13973 * src/http.c: Fixed timestamping-related bug. 13974 139752006-08-17 Mauro Tortonesi <mauro@ferrara.linux.it> 13976 13977 * tests/HTTPServer.pm: Added support for Range header. 13978 139792006-08-16 Mauro Tortonesi <mauro@ferrara.linux.it> 13980 13981 * src/http.c: Fixed bug which broke --continue feature. Now if -c is 13982 given, http_loop sends a HEAD request to find out the destination 13983 filename before resuming download. 13984 139852006-08-08 Hrvoje Niksic <hniksic@xemacs.org> 13986 13987 * src/utils.c (datetime_str): Avoid code repetition with time_str. 13988 139892006-07-21 Hrvoje Niksic <hniksic@xemacs.org> 13990 13991 * src/init.c (commands): Correctly place "contentdisposition". 13992 139932006-07-17 Daniel Richard G. <skunk@iSKUNK.ORG> 13994 13995 * Makefile.in: Added DESTDIR='$(DESTDIR)' to MAKEDEFS. 13996 139972006-07-14 Mauro Tortonesi <mauro@ferrara.linux.it> 13998 13999 * tests/Test4.px: Fixed wrong expected behaviour. 14000 140012006-07-14 Mauro Tortonesi <mauro@ferrara.linux.it> 14002 14003 * src/sysdep.h: If intptr_t isn't defined, simply typedef it to long. 14004 14005 * src/http.c: Added explicit cast to int in logprintf call to remove 14006 compiler warnings on 64-bit platforms. 14007 14008 * src/connect.c: Added a few casts to intptr_t to remove compiler warnings 14009 on 64-bit platforms. 14010 14011 * src/main.c: Disable -r, -p and -N when -O is used. Disable -k when -O is 14012 used and multiple URLs are given. Update maintainer information. 14013 14014 * src/all: Update copyright information. 14015 140162006-07-14 Mauro Tortonesi <mauro@ferrara.linux.it> 14017 14018 * configure.in: Check for intptr_t. 14019 140202006-07-10 Mauro Tortonesi <mauro@ferrara.linux.it> 14021 14022 * doc/wget.texi: Fixed rendering of --no-proxy description in the man 14023 page. Added information about current maintainer. 14024 140252006-07-10 KJKHyperion <hackbunny@reactos.com> 14026 14027 * src/url.c (filechr_table): Mark DEL (0x7f) as a control character 14028 and | as a character Windows can't handle. 14029 140302006-06-28 Mauro Tortonesi <mauro@ferrara.linux.it> 14031 14032 * src/res.c: Implemented is_robots_txt_url function for detection of 14033 robots.txt URLs and related test routine. 14034 14035 * src/res.h: Ditto. 14036 14037 * src/url.c: Implemented are_urls_equal function for URL comparison and 14038 related testing routine. 14039 14040 * src/url.h: Ditto. 14041 14042 * src/convert.c: Fixes for recursive spider mode: don't consider 14043 non-existing robots.txt as a broken link, and use are_urls_equal 14044 instead of strcasecmp for referrer URLs comparison. 14045 14046 * src/test.c: Call tests routines for are_urls_equal and 14047 is_robots_txt_url. 14048 140492006-06-28 Mauro Tortonesi <mauro@ferrara.linux.it> 14050 14051 * doc/wget.texi: Removed invariant status to the GPL and GFDL sections. 14052 Changed UPDATED to Jun 2006. Updated copyright notice to include 2006. 14053 140542006-06-27 Hrvoje Niksic <hniksic@xemacs.org> 14055 14056 * configure.in: We're no longer using strtoimax. 14057 140582006-06-26 Hrvoje Niksic <hniksic@xemacs.org> 14059 14060 * src/wget.h (wgint): Typedef to any 64-bit (or larger) type we can 14061 find, not necessarily off_t or long. 14062 140632006-06-26 Hrvoje Niksic <hniksic@xemacs.org> 14064 14065 * src/cmpt.c (strtoll): Check for overflow and underflow without 14066 relying on (technically) undefined behavior. Don't assume that 14067 strtoll_type is 64 bits wide. 14068 140692006-06-26 Hrvoje Niksic <hniksic@xemacs.org> 14070 14071 * doc/wget.texi (Recursive Accept/Reject Options): Document 14072 --ignore-case. 14073 140742006-06-21 Hrvoje Niksic <hniksic@xemacs.org> 14075 14076 * src/utils.c (base64_encode): Cast void pointer to char * before 14077 doing arithmetic. 14078 140792006-06-20 Hrvoje Niksic <hniksic@xemacs.org> 14080 14081 * src/utils.c (base64_encode): Made TBL const. 14082 (base64_decode): Made the base64_char_to_value table const. 14083 140842006-06-20 Hrvoje Niksic <hniksic@xemacs.org> 14085 14086 * doc/wget.texi (Download Options): Add missing word. 14087 Reported by Adrian Knoth. 14088 140892006-06-19 Hrvoje Niksic <hniksic@xemacs.org> 14090 14091 * src/utils.c (base64_encode): Would read past end of STR. 14092 Reported by rick@eckle.org. 14093 140942006-06-19 Hrvoje Niksic <hniksic@xemacs.org> 14095 14096 * src/utils.c (base64_encode): Made the DATA pointer void * so the 14097 callers can pass it any kind of pointer (including both signed and 14098 unsigned char pointers). 14099 (base64_decode): Ditto for DEST. 14100 141012006-06-13 Mauro Tortonesi <mauro@ferrara.linux.it> 14102 14103 * tests/Test9.px: Added test for --restrict-file-names=lowercase option. 14104 14105 * tests/Test10.px: Added test for --restrict-file-names=uppercase option. 14106 141072006-06-13 Mauro Tortonesi <mauro@ferrara.linux.it> 14108 14109 * src/options.h (struct options): Introduced member restrict_files_case to 14110 keep track of preferences on character case restrictions for 14111 filenames. 14112 14113 * src/init.c: Modified defaults and cmd_spec_restrict_file_names to 14114 support character case restrictions for filenames. Added 14115 test_cmd_spec_restrict_file_names unit test. 14116 14117 * src/url.c: Modified append_uri_pathel to support character case 14118 restrictions for filenames. Added test_append_uri_pathel unit test. 14119 14120 * src/test.c: Added test_cmd_spec_restrict_file_names and 14121 test_append_uri_pathel to the list of unit tests to run. 14122 141232006-06-12 Tony Lewis <tlewis@exelana.com> 14124 14125 * src/main.c: Improved CHEN Peng's patch by proposing a simpler logic. 14126 141272006-06-12 Mauro Tortonesi <mauro@ferrara.linux.it> 14128 14129 * src/retr.c (retrieve_from_file): Use retrieve_tree and automatically 14130 turn on opt.follow_ftp in case of recursive FTP retrieval through HTTP 14131 proxy. 14132 14133 * src/main.c: Automatically turn on opt.follow_ftp in case of recursive 14134 FTP retrieval through HTTP proxy. 14135 141362006-06-12 CHEN Peng <chenpeng@alumni.nus.edu.sg> 14137 14138 * src/main.c: Use retrieve_tree in case of recursive FTP retrieval through 14139 HTTP proxy. 14140 141412006-05-26 Mauro Tortonesi <mauro@ferrara.linux.it> 14142 14143 * tests/HTTPServer.pm: Fixed bug when returning 404. Improved logging. 14144 14145 * tests/Test.pm: Added support for command lines which use an absolute path 14146 for the Wget binary. 14147 141482006-05-26 Mauro Tortonesi <mauro@ferrara.linux.it> 14149 14150 * tests/HTTPServer.pm: Added synchronization between client and server 14151 processes to prevent the test to start before the server is ready. 14152 14153 * tests/HTTPTest.pm: Ditto. 14154 14155 * tests/Test.pm: Ditto. 14156 14157 * tests/Test1.px: Removed unneeded ../src/ from command line. 14158 14159 * tests/Test2.px: Ditto. 14160 14161 * tests/Test3.px: Ditto. 14162 14163 * tests/Test4.px: Ditto. 14164 14165 * tests/Test5.px: Ditto. 14166 14167 * tests/Test6.px: Ditto. 14168 14169 * tests/Test7.px: Ditto. 14170 14171 * tests/Test8.px: Added test for recursive spider mode. 14172 141732006-05-25 Mauro Tortonesi <mauro@ferrara.linux.it> 14174 14175 * src/convert.c: Added mechanisms to keep track broken links. 14176 14177 * src/convert.h: Ditto. 14178 14179 * src/wget.h: Reordered and enumerated uerr_t constants. 14180 14181 * src/recur.c: Fixes to support recursive spider mode. 14182 14183 * src/http.c: Ditto. 14184 14185 * src/main.c: Print broken links in case of recursive spider mode. 14186 14187 * src/retr.c: Changed interface of retrieve_url. 14188 14189 * src/retr.h: Ditto. 14190 14191 * src/ftp.c: Changed interface of ftp_loop. 14192 14193 * src/ftp.h: Ditto. 14194 14195 * src/res.c: Minor change to reflect changes in interface of retrieve_url. 14196 141972006-05-18 Lawrence Jones <lawrence.jones@ugs.com> 14198 14199 * src/ftp-ls.c (ftp_parse_unix_ls): Correct size parsing, add size 14200 and filename debugging output. 14201 142022006-04-28 Mauro Tortonesi <mauro@ferrara.linux.it> 14203 14204 * tests/Test5.px: Added test for HTTP Content-Disposition support. 14205 14206 * tests/Test6.px: Ditto. 14207 14208 * tests/Test7.px: Ditto. 14209 142102006-04-28 Mauro Tortonesi <mauro@ferrara.linux.it> 14211 14212 * src/http.c: If Content-Disposition header is present, allow unique 14213 filename generation unless -nc is given. Permit to disable parsing of 14214 Content-Disposition header. 14215 14216 * src/options.h: Added option --no-content-disposition to disable parsing 14217 of HTTP Content-Disposition header. 14218 14219 * src/init.c: Ditto. 14220 14221 * src/main.c: Ditto. 14222 142232006-04-27 Mauro Tortonesi <mauro@ferrara.linux.it> 14224 14225 * tests/HTTPServer.pm: Serve index.html if no filename is given. 14226 14227 * tests/Test.pm: Added support for pre-existing files. 14228 142292006-04-11 Hrvoje Niksic <hniksic@xemacs.org> 14230 14231 * src/hash.c (TOLOWER): Wrap macro arg in parentheses. 14232 142332006-04-08 Hrvoje Niksic <hniksic@xemacs.org> 14234 14235 * src/http.c (parse_content_disposition): Doc fix. 14236 142372006-03-15 Mauro Tortonesi <mauro@ferrara.linux.it> 14238 14239 * src/utils.c: Restricted operational semantics of frontcmp and proclist 14240 from generic strings to directory names and them to subdir_p and 14241 dir_matches_p respectively. Applied George Ogata's one line patch to 14242 restrict algorithm of subdir_p to full directory name matching. Added 14243 testcases for subdir_p and dir_matches_p. 14244 14245 * src/utils.h: Changed all frontcmp occurrences to subdir_p. 14246 14247 * src/recur.c: Ditto. 14248 14249 * src/test.c: Changed type returned by test functions from char * to const 14250 char *. Added test_subdir_p and test_dir_matches_p to the list of 14251 tests to run. 14252 14253 * src/http.c (test_parse_content_disposition): Changed return type from 14254 char * to const char *. 14255 142562006-03-14 Mauro Tortonesi <mauro@ferrara.linux.it> 14257 14258 * src/recur.c (struct queue_element): Changed type of html_allowed member 14259 to bool. 14260 142612006-03-09 Mauro Tortonesi <mauro@ferrara.linux.it> 14262 14263 * src/ftp.c (ftp_list): Try `LIST -a' command first and revert to `LIST' 14264 in case of failure. 14265 142662006-03-06 Hrvoje Niksic <hniksic@xemacs.org> 14267 14268 * src/hash.c (TOLOWER): Fix definition when STANDALONE. 14269 Reported by Beni Serfaty. 14270 142712006-03-02 Mauro Tortonesi <mauro@ferrara.linux.it> 14272 14273 * src/http.c (http_loop): Fixed recursive HTTP retrieval. 14274 142752006-02-28 Hrvoje Niksic <hniksic@xemacs.org> 14276 14277 * src/url.c (find_last_char): Define in terms of memrchr. 14278 14279 * src/cmpt.c (memrchr): Define it on systems that don't have it. 14280 14281 * src/http.c (extract_param): New function for parsing header values 14282 with parameters. 14283 (parse_content_disposition): Use it. Don't allow slashes and 14284 backslashes in the file name. 14285 142862006-02-28 Hrvoje Niksic <hniksic@xemacs.org> 14287 14288 * src/http.c (extract_param): Declare extern so it can be used from 14289 other files. 14290 (extract_param): Return error for empty name. 14291 142922006-02-28 Hrvoje Niksic <hniksic@xemacs.org> 14293 14294 * configure.in: Check for memrchr. 14295 142962006-02-27 Hrvoje Niksic <hniksic@xemacs.org> 14297 14298 * src/url.c (path_simplify): Don't preserve ".." at beginning of path. 14299 Suggested by Frank McCown. 14300 143012006-02-25 Hrvoje Niksic <hniksic@xemacs.org> 14302 14303 * src/http.c (gethttp): Only use FILE.N.html if FILE.html exists. 14304 143052006-02-09 Hrvoje Niksic <hniksic@xemacs.org> 14306 14307 * src/mswindows.c (run_with_timeout): Made thread_hnd non-static. 14308 143092006-02-05 Hrvoje Niksic <hniksic@xemacs.org> 14310 14311 * src/retr.c (sleep_between_retrievals): Sleep at a minimum of 1/2 of 14312 the specified wait period. 14313 143142006-02-05 Hrvoje Niksic <hniksic@xemacs.org> 14315 14316 * doc/wget.texi (Download Options): Document the modified meaning of 14317 --random-wait. 14318 143192006-02-05 Hrvoje Niksic <hniksic@xemacs.org> 14320 14321 (Download Options): Changed "a recent article" to "a 2001 article" 14322 in the description of --random-wait, since the article in question 14323 is not really recent. 14324 143252006-02-03 Mauro Tortonesi <mauro@ferrara.linux.it> 14326 14327 * src/http.c: Fixed support for Content-Disposition header. 14328 14329 * src/test.c: Added test_parse_content_disposition to the list of unit 14330 tests to run. 14331 143322006-02-03 Hrvoje Niksic <hniksic@xemacs.org> 14333 14334 * src/utils.c (number_to_string): Don't use sprintf for printing 14335 WGINT_MIN; simply divide n by 10 and defer printing the last 14336 digit. 14337 (number_to_string): Removed the SPRINTF_WGINT macro. 14338 143392006-02-02 Hrvoje Niksic <hniksic@xemacs.org> 14340 14341 * src/hash.c: Don't define countof if it's already defined. 14342 14343 * src/hash.c: Obtain the definition of uintptr_t when standalone. 14344 143452006-01-30 Mauro Tortonesi <mauro@ferrara.linux.it> 14346 14347 * src/http.c: Changed output format. Removed excessively verbose debugging 14348 output. 14349 143502006-01-24 Mauro Tortonesi <mauro@ferrara.linux.it> 14351 14352 * tests/HTTPServer.pm: Enhanced logging support. 14353 14354 * tests/HTTPTest.pm: Updated to new test format. 14355 14356 * tests/Test.pm: Improved test setup, verification and cleanup. Major 14357 refactoring. 14358 14359 * tests/Test1.px: Updated to new test format. 14360 14361 * tests/Test2.px: Updated to new test format. 14362 14363 * tests/Test3.px: Added new test for quiet download of nonexistent URL. 14364 14365 * tests/Test4.px: Added new test for quiet download of nonexistent URL with 14366 --output-document option. 14367 143682005-12-07 Mauro Tortonesi <mauro@ferrara.linux.it> 14369 14370 * src/http.c: Fixed pre-download verbose output which was broken by 14371 HTTP code refactoring. 14372 143732005-12-05 Mauro Tortonesi <mauro@ferrara.linux.it> 14374 14375 * tests/HTTPServer.pm: Refactored as a subclass of HTTP::Daemon. 14376 Removed the old run method and renamed the old run_daemon 14377 method to run. Added support for partial 14378 14379 * tests/Testing.pm: Renamed to HTTPTest.pm. 14380 14381 * tests/HTTPTest.pm: Refactored as a subclass of Test. Renamed 14382 Run_HTTP_Test to run, verify_download to _verify_download 14383 and added support for timestamp checking. 14384 14385 * tests/Test.pm: Added Test class as the super class of every 14386 testcase. 14387 14388 * tests/test1: Renamed to Test1.px. 14389 14390 * tests/Test1.px: Refactored as an instance of the HTTPTest class. 14391 14392 * tests/Test2.px: Added -N HTTP test. 14393 143942005-11-23 Mauro Tortonesi <mauro@ferrara.linux.it> 14395 14396 * src/http.c: Refactored HTTP code. If -O is not used, the new code 14397 delays the choice of the file name where the downloaded resource 14398 will be saved until the HTTP headers have been retrieved. 14399 Added support for Content-Disposition header. 14400 144012005-11-19 Hrvoje Niksic <hniksic@xemacs.org> 14402 14403 * src/hash.c (INVALID_PTR): Use uintptr_t instead of unsigned long. 14404 (hash_pointer): Don't assume a pointer fits in `unsigned long'. 14405 144062005-11-19 Hrvoje Niksic <hniksic@xemacs.org> 14407 14408 * configure.in: Check for uintptr_t. 14409 144102005-11-15 Hrvoje Niksic <hniksic@xemacs.org> 14411 14412 * doc/wget.texi: Document https_proxy. 14413 144142005-11-02 Mauro Tortonesi <mauro@ferrara.linux.it> 14415 14416 * tests/HTTPServer.pm: Added basic support for HTTP testing. 14417 14418 * tests/Testing.pm: Added basic support for feature testing (only HTTP 14419 testing is supported at the moment). 14420 14421 * tests/test1: Added basic HTTP test. 14422 144232005-11-02 Mauro Tortonesi <mauro@ferrara.linux.it> 14424 14425 * src/Makefile.in: Removed support for unit testing (now it is in 14426 tests/Makefile.in). 14427 144282005-11-02 Mauro Tortonesi <mauro@ferrara.linux.it> 14429 14430 * Makefile.in: Improved support for unit testing. 14431 14432 * configure.in: Ditto. 14433 144342005-10-27 Mauro Tortonesi <mauro@ferrara.linux.it> 14435 14436 * src/Makefile.in: Added basic support for unit testing. 14437 14438 * src/test.c: Ditto. 14439 14440 * src/test.h: Ditto. 14441 144422005-10-27 Mauro Tortonesi <mauro@ferrara.linux.it> 14443 14444 * Makefile.in: Added basic support for unit testing. 14445 144462005-10-13 Daniel Stenberg <daniel@haxx.se> 14447 14448 * src/http-ntlm.c (ntlm_output): Fixed buffer overflow vulnerability. 14449 144502005-10-09 Russ Allbery <rra@stanford.edu> 14451 14452 * src/snprintf.c: Remove round to round_int and pow10 to pow10_int, to 14453 avoid warnings from GCC 4.0. 14454 144552005-10-05 Mauro Tortonesi <mauro@ferrara.linux.it> 14456 14457 * src/retr.c: Changed semantics of no_proxy_match. 14458 144592005-09-17 Hrvoje Niksic <hniksic@xemacs.org> 14460 14461 * src/retr.c (retr_rate): Rename parameter from MSECS to SECS since it 14462 no longer holds milliseconds. 14463 144642005-09-17 Hrvoje Niksic <hniksic@xemacs.org> 14465 14466 * src/main.c (main): Don't print the summary if nothing has been downloaded. 14467 144682005-09-02 Hrvoje Niksic <hniksic@xemacs.org> 14469 14470 * doc/sample.wgetrc: Rewrite the "passive FTP" paragraph to better 14471 reflect reality. 14472 144732005-09-01 Hrvoje Niksic <hniksic@xemacs.org> 14474 14475 * src/progress.c: Introduce symbolic constants for "magic" values of 14476 0.2 and 0.9, REFRESH_INTERVAL and ETA_REFRESH_INTERVAL. 14477 144782005-08-27 Hrvoje Niksic <hniksic@xemacs.org> 14479 14480 * src/hash.c (hash_table_map): Rename to hash_table_for_each and 14481 update callers. 14482 Document the meaning of the callback's return value. 14483 (hash_table_iterate): New function. 14484 (hash_table_iter_next): Likewise. 14485 Update most places that used hash_table_for_each to use the 14486 iteration, which doesn't require a temporary function with 14487 explicit state management. 14488 144892005-08-27 Hrvoje Niksic <hniksic@xemacs.org> 14490 14491 * src/cmpt.c (strtoll): Correctly handle strtoll("0x", ptr, 0) and 14492 strtoll("0x<nonhexchar>", ptr, 0) -- in both cases *ptr must be 14493 set to the position of 'x', not after it. 14494 144952005-08-26 Stepan Kasal <kasal@ucw.cz> 14496 14497 * configure.in: Abort configure if --with-ssl given but SSL 14498 unavailable. Use HAVE_LIBSSL and HAVE_LIBGNUTLS symbols provided 14499 by AC_LIB_HAVE_LINKFLAGS instead of inventing new ones. 14500 145012005-08-26 Jeremy Shapiro <jnshapiro@gmail.com> 14502 14503 * src/openssl.c (ssl_init): Set SSL_MODE_AUTO_RETRY. 14504 145052005-08-26 Albert Chin <wget@mlists.thewrittenword.com> 14506 14507 * src/Makefile.in: Use @datadir@. Define localedir as $(datadir)/locale. 14508 145092005-08-23 Hrvoje Niksic <hniksic@xemacs.org> 14510 14511 * src/host.c (address_list_from_ipv4_addresses): Use IP_INADDR_DATA. 14512 145132005-08-12 Hrvoje Niksic <hniksic@xemacs.org> 14514 14515 * src/wget.h: Renamed strtoll_return to strtoll_type. 14516 145172005-08-11 Hrvoje Niksic <hniksic@xemacs.org> 14518 14519 * src/progress.c (eta_to_human_short): Switch to days when printing 14520 more than 48h rather than 100h. (It's not immediately apparent 14521 how many days there are in 83h.) 14522 145232005-08-11 Hrvoje Niksic <hniksic@xemacs.org> 14524 14525 * src/cmpt.c (strtoll): Define it if missing on the system and if Wget 14526 needs it. 14527 14528 * src/mswindows.c (str_to_int64): Move to cmpt.c and rename to strtoll. 14529 145302005-08-11 Hrvoje Niksic <hniksic@xemacs.org> 14531 14532 * configure.in: Check for strtoll and strtoimax. 14533 145342005-08-10 Hrvoje Niksic <hniksic@xemacs.org> 14535 14536 * src/host.c (print_address): Always use inet_ntop when IPv6 is 14537 enabled. 14538 14539 * src/host.h (ip_address): Simplify the data union. 14540 145412005-08-09 Vasil Dimov <vd@datamax.bg> 14542 14543 * src/ftp.c (getftp): Don't free RESPLINE if ftp_response returns a 14544 status other than FTPOK. 14545 145462005-08-09 Hrvoje Niksic <hniksic@xemacs.org> 14547 14548 * src/mswindows.c (inet_ntop): Also handle IPv4 addresses for 14549 completeness. 14550 145512005-08-09 Hrvoje Niksic <hniksic@xemacs.org> 14552 14553 * src/http.c (gethttp): Don't read more than the amount of data 14554 specified by the content-length header. 14555 145562005-08-09 Hrvoje Niksic <hniksic@xemacs.org> 14557 14558 * doc/wget.texi (Wgetrc Commands): Removed documentation for the now 14559 deleted command "kill_longer". 14560 145612005-08-04 Giuseppe Bonacci <g.bonacci@libero.it> 14562 14563 * src/ftp-ls.c (ftp_parse_unix_ls): Remember the position of the 14564 previous token instead of backtracking back to it. 14565 145662005-07-08 Hrvoje Niksic <hniksic@xemacs.org> 14567 14568 * src/utils.c (aprintf): Use vasprintf where available. 14569 145702005-07-08 Hrvoje Niksic <hniksic@xemacs.org> 14571 14572 * src/url.c (rewrite_shorthand_url): Simplify code using aprintf and 14573 strspn. 14574 145752005-07-08 Hrvoje Niksic <hniksic@xemacs.org> 14576 14577 * configure.in: Remove -Wno-implicit from default GCC warning 14578 flags. 14579 145802005-07-08 Hrvoje Niksic <hniksic@xemacs.org> 14581 14582 * configure.in: Don't check for symlink, which is expected to 14583 exist. Check for asprintf. 14584 145852005-07-08 Gisle Vanem <giva@bgnett.no> 14586 14587 * src/mswindows.h: Include process.h to get getpid() declaration. 14588 145892005-07-07 Hrvoje Niksic <hniksic@xemacs.org> 14590 14591 * src/openssl.c (ssl_check_certificate): Print custom error messages 14592 for frequent X509 certificate problems. 14593 145942005-07-07 Hrvoje Niksic <hniksic@xemacs.org> 14595 14596 * src/mswindows.h: Define an alias for stat and fstat, as requested by 14597 config-compiler.h. 14598 (gai_strerror): Define to windows_strerror if NEED_GAI_STRERROR is 14599 defined. 14600 146012005-07-07 Hrvoje Niksic <hniksic@xemacs.org> 14602 14603 * src/gnutls.c (ssl_check_certificate): Check for the validity of the 14604 presented X509 certificate. 14605 146062005-07-07 Hrvoje Niksic <hniksic@xemacs.org> 14607 14608 * configure.bat: Copy the common config.h and config-compiler.h. 14609 146102005-07-06 Hrvoje Niksic <hniksic@xemacs.org> 14611 14612 * src/utils.c: Unconditionally include <setjmp.h>. 14613 146142005-07-06 Hrvoje Niksic <hniksic@xemacs.org> 14615 14616 * src/utils.c (fnmatch_nocase): New function. 14617 (proclist): Use it instead of fnmatch when opt.ignore_case is 14618 requested. 14619 (in_acclist): Respect opt.ignore_case. 14620 (frontcmp): Respect opt.ignore_case. 14621 14622 * src/options.h (struct options): New flag opt.ignore_case. 14623 146242005-07-06 Hrvoje Niksic <hniksic@xemacs.org> 14625 14626 * src/sysdep.h: Add a full declaration of fnmatch.h. 14627 146282005-07-06 Hrvoje Niksic <hniksic@xemacs.org> 14629 14630 * src/ptimer.c: Measure time in seconds rather than milliseconds. 14631 Adjusted all callers. 14632 146332005-07-06 Hrvoje Niksic <hniksic@xemacs.org> 14634 14635 * src/mswindows.h: Use strtoll where available. 14636 146372005-07-06 Hrvoje Niksic <hniksic@xemacs.org> 14638 14639 * src/http.c (gethttp): When freeing MESSAGE, take into account that 14640 it can be NULL. 14641 146422005-07-06 Hrvoje Niksic <hniksic@xemacs.org> 14643 14644 * configure.in: Don't check for setjmp.h. 14645 146462005-07-06 Hrvoje Niksic <hniksic@xemacs.org> 14647 14648 * Makefile.in: Also use @LIBGNUTLS@ to build LIBS. 14649 146502005-07-05 Hrvoje Niksic <hniksic@xemacs.org> 14651 14652 * src/wget.h (or): Define HAVE_SSL when either HAVE_OPENSSL or 14653 HAVE_GNUTLS are defined. 14654 14655 * src/gnutls.c: New file. 14656 146572005-07-05 Hrvoje Niksic <hniksic@xemacs.org> 14658 14659 * src/http.c (gethttp): Don't print the request write error message 14660 twice. 14661 146622005-07-05 Hrvoje Niksic <hniksic@xemacs.org> 14663 14664 * src/cmpt.c (timegm): Remove unused variable. 14665 146662005-07-05 Hrvoje Niksic <hniksic@xemacs.org> 14667 14668 * src/cmpt.c (timegm): Handle years after 2099. 14669 146702005-07-05 Hrvoje Niksic <hniksic@xemacs.org> 14671 14672 * src/cmpt.c (timegm): Don't call mktime; simply count the seconds 14673 between 1970-01-01 and the specified date. 14674 146752005-07-05 Hrvoje Niksic <hniksic@xemacs.org> 14676 14677 * configure.in: Add check for GnuTLS if --with-ssl=gnutls is used. 14678 146792005-07-04 Hrvoje Niksic <hniksic@xemacs.org> 14680 14681 * src/xmalloc.c (debugging_free): Prefix hex pointer value with "0x" 14682 when printing. 14683 146842005-07-04 Hrvoje Niksic <hniksic@xemacs.org> 14685 14686 * src/utils.c (base64_decode): Don't silently tolerate non-base64 14687 non-white-space characters in the base64 stream. 14688 146892005-07-04 Hrvoje Niksic <hniksic@xemacs.org> 14690 14691 * src/utils.c (NEXT_BASE64_CHAR): Rename to NEXT_CHAR and simplify to 14692 get the next non-whitespace character. 14693 146942005-07-04 Hrvoje Niksic <hniksic@xemacs.org> 14695 14696 * src/openssl.c (openssl_errstr): Separate error messages with "; ". 14697 146982005-07-04 Hrvoje Niksic <hniksic@xemacs.org> 14699 14700 * src/openssl.c (openssl_errstr): Instead of always using a large 14701 static buffer, only allocate the error string when there is an 14702 actual error. 14703 147042005-07-04 Hrvoje Niksic <hniksic@xemacs.org> 14705 14706 * src/connect.c (LAZY_RETRIEVE_INFO): Make last_tick unsigned to match 14707 transport_map_modified_tick. 14708 147092005-07-04 Hrvoje Niksic <hniksic@xemacs.org> 14710 14711 * src/config-post.h (alloca): Updated declaration to not enumerate all 14712 Windows compilers. 14713 147142005-07-03 Hrvoje Niksic <hniksic@xemacs.org> 14715 14716 * src/url.c (path_end): Skip separators appropriate for the scheme. 14717 (strpbrk_or_eos): Remove gcc-specific version, as the optimization 14718 it tried to perform no longer applies. 14719 147202005-07-03 Hrvoje Niksic <hniksic@xemacs.org> 14721 14722 * src/mswindows.h: Also wrap accept() and listen(). 14723 147242005-07-03 Hrvoje Niksic <hniksic@xemacs.org> 14725 14726 * src/ftp.c (getftp): Ditto. 14727 14728 * src/http.c (gethttp): Use fd_errstr. 14729 14730 * src/connect.c (fd_register_transport): Restructure parameters to 14731 include only a single structure that describes transport 14732 implementation. 14733 14734 * src/openssl.c (openssl_errstr): New function: dump SSL error strings 14735 into a static buffer and return a pointer to the buffer. 14736 14737 * src/connect.c (fd_errstr): New function; returns transport-specific 14738 error message, or strerror(errno) if transport doesn't supply one. 14739 147402005-07-03 Hrvoje Niksic <hniksic@xemacs.org> 14741 14742 * po/POTFILES.in: Include src/ptimer.c. 14743 147442005-07-02 Hrvoje Niksic <hniksic@xemacs.org> 14745 14746 * src/version.c: Don't use "cvs" in version name, since we're not 14747 using CVS anymore. 14748 147492005-07-02 Hrvoje Niksic <hniksic@xemacs.org> 14750 14751 * src/url.c (url_parse): Would crash when parsing fragments. Support 14752 fragments for FTP URLs too. 14753 147542005-07-02 Hrvoje Niksic <hniksic@xemacs.org> 14755 14756 * src/progress.c (create_image): Ditto. 14757 14758 * src/retr.c (retr_rate): Display smaller rate numbers with greater 14759 precision. 14760 147612005-07-02 Hrvoje Niksic <hniksic@xemacs.org> 14762 14763 * src/http.c (response_head_terminator): Minor optimization. 14764 14765 * src/retr.c (fd_read_hunk): Call terminator with pointer to the start 14766 of the data and the pointer to the current data. Changed all 14767 callers. 14768 147692005-07-02 Hrvoje Niksic <hniksic@xemacs.org> 14770 14771 * src/http.c (gethttp): Skip error message body in the keep-alive 14772 case. 14773 147742005-07-02 Hrvoje Niksic <hniksic@xemacs.org> 14775 14776 * src/host.c: Remove extraneous definition of netdb.h. 14777 147782005-07-02 Hrvoje Niksic <hniksic@xemacs.org> 14779 14780 * src/host.c: Don't include "connect.h" now that we no longer have 14781 socket_has_inet6. 14782 147832005-07-01 Hrvoje Niksic <hniksic@xemacs.org> 14784 14785 * src/url.c (url_parse): Make sure u->params is not initialized for 14786 http/https URLs. 14787 (url_parse): Don't crash on garbage following []-delimited IPv6 14788 addresses. 14789 147902005-07-01 Hrvoje Niksic <hniksic@xemacs.org> 14791 14792 * src/main.c (print_help): Don't refer to the non-existent -nr in 14793 description of --mirror. 14794 147952005-07-01 Hrvoje Niksic <hniksic@xemacs.org> 14796 14797 * configure.in: Mention in message that the "GNU" md5 14798 implementation is in fact built-in to Wget. 14799 148002005-06-30 Hrvoje Niksic <hniksic@xemacs.org> 14801 14802 * src/http.c (gethttp): Explicitly document the different cases when 14803 generating the Host header. 14804 148052005-06-30 Hrvoje Niksic <hniksic@xemacs.org> 14806 14807 * src/host.c (pretty_print_address): Renamed to just print_address. 14808 Clarify documentation. 14809 148102005-06-30 Hrvoje Niksic <hniksic@xemacs.org> 14811 14812 * src/host.c (pretty_print_address): Handle error result from 14813 inet_ntop. 14814 148152005-06-30 Gisle Vanem <giva@bgnett.no> 14816 14817 * src/mswindows.c (inet_ntop): New function. Print IPv6 addresses 14818 using WSAAddressToString. 14819 148202005-06-29 Hrvoje Niksic <hniksic@xemacs.org> 14821 14822 * src/wget.h: Remove obsolete definition of with_thousand_seps_sum. 14823 148242005-06-29 Hrvoje Niksic <hniksic@xemacs.org> 14825 14826 * src/utils.c: Unconditionally include locale.h. 14827 148282005-06-29 Hrvoje Niksic <hniksic@xemacs.org> 14829 14830 * src/utils.c (random_number): Use lrand48 if available. 14831 (random_float): Use drand48 if available. 14832 148332005-06-29 Hrvoje Niksic <hniksic@xemacs.org> 14834 14835 * src/ptimer.c: Include sys/time.h to get struct timeval. 14836 148372005-06-29 Hrvoje Niksic <hniksic@xemacs.org> 14838 14839 * src/main.c: Check for both SIGHUP and SIGUSR1 before using them. 14840 148412005-06-29 Hrvoje Niksic <hniksic@xemacs.org> 14842 14843 * src/main.c (secs_to_human_time): Use print_decimal when printing 14844 total download time in seconds. 14845 14846 * src/progress.c (print_row_stats): Use it to print total download 14847 time at the end of the download. 14848 (create_image): Ditto. 14849 14850 * src/utils.c (print_decimal): New function; print small decimal 14851 numbers with more precision than large ones. 14852 14853 * src/progress.c (print_row_stats): New function. Print ETA after the 14854 download rate at the end of each row. 14855 148562005-06-29 Hrvoje Niksic <hniksic@xemacs.org> 14857 14858 * src/gnu-md5.h: Unconditionally include limits.h. 14859 148602005-06-29 Hrvoje Niksic <hniksic@xemacs.org> 14861 14862 * m4/wget.m4 (WGET_WITH_NLS): Don't check for locale.h. 14863 148642005-06-29 Hrvoje Niksic <hniksic@xemacs.org> 14865 14866 * configure.in: Test for $LIBSSL instead of the old $ssl_success 14867 when deciding which MD5 to use. 14868 148692005-06-29 Hrvoje Niksic <hniksic@xemacs.org> 14870 14871 * configure.in: Require Autoconf 2.59. 14872 148732005-06-29 Hrvoje Niksic <hniksic@xemacs.org> 14874 14875 * configure.in: Check for drand48. 14876 148772005-06-28 Hrvoje Niksic <hniksic@xemacs.org> 14878 14879 * src/init.c (parse_line): Check for alphanumerics. 14880 148812005-06-28 Hrvoje Niksic <hniksic@xemacs.org> 14882 14883 * src/ftp.c (getftp): Delete trailing newlines from LIST output so 14884 lines don't come out with trailing \015\012 with -S. 14885 148862005-06-28 Hrvoje Niksic <hniksic@xemacs.org> 14887 14888 * src/(dot_create): Remove unnecessary casts. 14889 148902005-06-28 Hrvoje Niksic <hniksic@xemacs.org> 14891 14892 * doc/wget.texi (Logging and Input File Options): Don't claim that 14893 --base requires --force-html to work. 14894 148952005-06-27 Hrvoje Niksic <hniksic@xemacs.org> 14896 14897 * src/wget.h (PTR_FORMAT): Cast the result of sizeof to int before 14898 passing it to printf's %*. 14899 14900 * src/retr.h: Declare output_stream and output_stream_regular. 14901 14902 * src/ftp.h: Declare ftp_last_respline. 14903 14904 * src/convert.h: Declare dl_url_file_map. 14905 14906 * src/http.h: New file. 14907 149082005-06-27 Hrvoje Niksic <hniksic@xemacs.org> 14909 14910 * src/utils.c (with_thousand_seps): Handle negative numbers. 14911 149122005-06-27 Hrvoje Niksic <hniksic@xemacs.org> 14913 14914 * src/utils.c (human_readable): Remove intermediary cast to long; MSVC 14915 has problems casting *unsigned* __int64 to double. 14916 149172005-06-27 Hrvoje Niksic <hniksic@xemacs.org> 14918 14919 * src/utils.c (get_grouping_data): Force the use of separators in C 14920 locale. 14921 149222005-06-27 Hrvoje Niksic <hniksic@xemacs.org> 14923 14924 * src/utils.c (get_grouping_data): Force separator to "." rather than 14925 " " when "," is taken. 14926 149272005-06-27 Hrvoje Niksic <hniksic@xemacs.org> 14928 14929 * src/sysdep.h: Use the system-provided fnmatch by default. 14930 149312005-06-27 Hrvoje Niksic <hniksic@xemacs.org> 14932 14933 * src/progress.c (set_progress_implementation): Type COLON as const 14934 char *. 14935 149362005-06-27 Hrvoje Niksic <hniksic@xemacs.org> 14937 14938 * src/progress.c (dot_update): Remove unused variable row_qty. 14939 149402005-06-27 Hrvoje Niksic <hniksic@xemacs.org> 14941 14942 * src/mswindows.h: Remove superfluous includes. 14943 149442005-06-27 Hrvoje Niksic <hniksic@xemacs.org> 14945 14946 * src/main.c (i18n_initialize): Set all locale categories. 14947 14948 * src/http.c (http_atotm): Temporarily set locale to "C". 14949 149502005-06-27 Hrvoje Niksic <hniksic@xemacs.org> 14951 14952 * src/http.c (mktime_from_utc): Renamed to timegm and moved to cmpt.c. 14953 Don't compile it if GNU timegm is available. 14954 (http_atotm): Use timegm. 14955 149562005-06-27 Hrvoje Niksic <hniksic@xemacs.org> 14957 14958 * src/http.c (http_atotm): Correctly query the old locale value. 14959 149602005-06-27 Hrvoje Niksic <hniksic@xemacs.org> 14961 14962 * src/http.c (gethttp): Improve "POST data file missing" error 14963 message. 14964 149652005-06-27 Hrvoje Niksic <hniksic@xemacs.org> 14966 14967 * src/cookies.c: Make cookies_now static. 14968 149692005-06-27 Hrvoje Niksic <hniksic@xemacs.org> 14970 14971 * src/config-post.h (alloca): Don't #define alloca under MinGW32, 14972 which defines it in malloc.h, included from mswindows.h. 14973 149742005-06-27 Hrvoje Niksic <hniksic@xemacs.org> 14975 14976 * src/config-post.h (alloca): Amend alloca declaration to take care of 14977 all Win32 compilers, not just MSVC and MinGW. 14978 149792005-06-26 Hrvoje Niksic <hniksic@xemacs.org> 14980 14981 * src/utils.c (with_thousand_seps): Correctly implement thousand seps 14982 consisting of more than one character. 14983 149842005-06-26 Hrvoje Niksic <hniksic@xemacs.org> 14985 14986 * src/progress.c (create_image): Mark the "eta" string for translation. 14987 149882005-06-26 Hrvoje Niksic <hniksic@xemacs.org> 14989 14990 * src/main.c (secs_to_human_time): Ditto. 14991 14992 * src/progress.c (create_image): Print more exact duration of very 14993 short downloads. 14994 14995 * src/main.c (secs_to_human_time): Don't translate time suffixes "h", 14996 "m", and "s", which are not strictly SI, but are "accepted for use 14997 with SI". 14998 (secs_to_human_time): Print really small intervals as 0s, not 14999 0.00s. 15000 150012005-06-26 Hrvoje Niksic <hniksic@xemacs.org> 15002 15003 * src/main.c (main): Print the downloaded and quota amounts with the 15004 "human_readable" function. 15005 15006 * src/ftp.c (print_length): Ditto. 15007 15008 * src/http.c (gethttp): Don't display thousand separators. 15009 15010 * src/utils.c (with_thousand_seps): Rewritten to respect locale 15011 settings and to be type size agnostic. 15012 150132005-06-26 Hrvoje Niksic <hniksic@xemacs.org> 15014 15015 * src/html-url.c (get_urls_file): Don't explicitly set entry->next to 15016 NULL since entry is already zeroed out. 15017 150182005-06-26 Hrvoje Niksic <hniksic@xemacs.org> 15019 15020 * src/ftp.c (getftp): Always invoke SIZE, not only when continuing a 15021 download. 15022 15023 * src/main.c (main): Ditto here. 15024 15025 * src/progress.c (create_image): When the download is finished, print 15026 how long it took. 15027 150282005-06-26 Hrvoje Niksic <hniksic@xemacs.org> 15029 15030 * src/config-post.h: Replace the alloca declaration with the one from 15031 the latest Autoconf manual. This should remove a warning with GCC 15032 on AIX. 15033 150342005-06-26 Hrvoje Niksic <hniksic@xemacs.org> 15035 15036 * m4/wget.m4: Use proper GPL header. 15037 150382005-06-26 Gisle Vanem <giva@bgnett.no> 15039 15040 * src/mswindows.h: Define gai_strerror under MinGW. 15041 150422005-06-25 Hrvoje Niksic <hniksic@xemacs.org> 15043 15044 * src/utils.c (with_thousand_seps_sum): Now defined only if 15045 SUM_SIZE_INT is double. 15046 15047 * src/wget.h (SUM_SIZE_INT): Instead of bothering with long, long 15048 long, __int64, and friends, simply either use wgint or double, end 15049 of story. Since we know how to print either, we no longer need 15050 LARGE_INT_FMT. 15051 15052 * src/sysdeps.h (LARGE_INT): Renamed to SUM_SIZE_INT to better reflect 15053 its intent, and moved to wget.h. 15054 150552005-06-25 Hrvoje Niksic <hniksic@xemacs.org> 15056 15057 * src/utils.c (with_thousand_seps_sum): Decrease buffer size so it 15058 cannot overrun add_thousand_seps's buffer. 15059 150602005-06-25 Hrvoje Niksic <hniksic@xemacs.org> 15061 15062 * src/utils.c (human_readable): Divide with 1024 instead of shifting 15063 so the operation can work with non-integer N. 15064 150652005-06-25 Hrvoje Niksic <hniksic@xemacs.org> 15066 15067 * src/utils.c (SPRINTF_WGINT): The correct format is %I64d, not just 15068 %I64. 15069 150702005-06-25 Hrvoje Niksic <hniksic@xemacs.org> 15071 15072 * src/progress.c (eta_to_human): New logic for more human-readable 15073 ETA. 15074 150752005-06-25 Hrvoje Niksic <hniksic@xemacs.org> 15076 15077 * src/http.c (http_loop): Don't warn about wildcards in HTTP URLs if 15078 globbing isn't requested in the first place. 15079 15080 * src/retr.c (retrieve_url): Temporarily turn off globbing when 15081 processing HTTP->FTP redirects. 15082 150832005-06-25 Hrvoje Niksic <hniksic@xemacs.org> 15084 15085 * src/cookies.c (parse_set_cookies): Cast pointer subtraction to int 15086 before using it with %d; AIX compiler warns on this. 15087 Reported by Jens Schleusener. 15088 150892005-06-25 Hrvoje Niksic <hniksic@xemacs.org> 15090 15091 * src/Makefile.in: No need to clean .libs. 15092 150932005-06-25 Hrvoje Niksic <hniksic@xemacs.org> 15094 15095 * doc/wget.texi (Download Options): Update -4/-6 documentation to 15096 reflect the fact that we no longer use AI_ADDRCONFIG. 15097 150982005-06-25 Hrvoje Niksic <hniksic@xemacs.org> 15099 15100 * Makefile.in: No need to clean .libs. 15101 151022005-06-25 Hrvoje Niksic <hniksic@xemacs.org> 15103 15104 * Makefile.in: Instead of creating configure.bat from 15105 configure.bat.in, simply make sure the correct EOL style in 15106 checked out of the repository. 15107 151082005-06-25 Hrvoje Niksic <hniksic@xemacs.org> 15109 15110 * Makefile.in (DISTFILES): Don't split the sed invocation across 15111 several lines, Solaris make passes the backslashes to sed literally. 15112 151132005-06-24 Hrvoje Niksic <hniksic@xemacs.org> 15114 15115 * src/init.c: opt.verbose must be declared as int. 15116 151172005-06-24 Hrvoje Niksic <hniksic@xemacs.org> 15118 15119 * src/http.c (gethttp): Don't prepend / here. 15120 15121 * src/cookies.c (cookie_handle_set_cookie): Prepend / to PATH. 15122 (cookie_header): Ditto. 15123 151242005-06-24 Hrvoje Niksic <hniksic@xemacs.org> 15125 15126 * doc/gpl.texi (GNU General Public License): Split GPL text into a 15127 separate file and include it from wget.texi. Used the latest 15128 template from gnu.org with the updated address of the FSF. 15129 151302005-06-24 Hrvoje Niksic <hniksic@xemacs.org> 15131 15132 * configure.in: Use AC_LIB_HAVE_LINKFLAGS instead of 15133 AC_LIB_LINKFLAGS when checking for library functions. 15134 15135 * configure.in: Don't waste time checking for headers and 15136 functions we know must be there. But manually AC_DEFINE the 15137 functions that might be missing from non-Unix systems. 15138 151392005-06-24 Hrvoje Niksic <hniksic@xemacs.org> 15140 15141 * configure.in: Move the large file check further up. Only check 15142 for endianness if GNU md5 is used (it being the only file that 15143 needs endianness information). 15144 151452005-06-24 Hrvoje Niksic <hniksic@xemacs.org> 15146 15147 * configure.in: Include m4/*.m4. 15148 15149 * aclocal.m4: Renamed to m4/wget.m4. 15150 151512005-06-24 Hrvoje Niksic <hniksic@xemacs.org> 15152 15153 * configure.in: Enable the user to turn off SSL autodetection and 15154 disable SSL using --without-ssl. 15155 15156 * Makefile.in ($(srcdir)/stamp-h.in): Remove the aclocal.m4 15157 dependencies. 15158 151592005-06-24 Hrvoje Niksic <hniksic@xemacs.org> 15160 15161 * configure.in: Don't indent #include lines. 15162 151632005-06-23 Mauro Tortonesi <mauro@ferrara.linux.it> 15164 15165 * libtool.m4, ltmain.sh: Deleted. 15166 15167 * configure.in: Replaced ugly libtool-based check for OpenSSL libs 15168 with a simpler config.rpath-based approach. 15169 15170 * Makefile.in, src/Makefile.in: Removed libtool support. 15171 15172 * m4/lib-link.m4, m4/lib-prefix.m4, m4/lib-ld.m4, config.rpath: 15173 config.rpath macros taken from gettext 0.14.5. 15174 151752005-06-23 Hrvoje Niksic <hniksic@xemacs.org> 15176 15177 * util/dist-wget: Port to subversion. 15178 151792005-06-23 Hrvoje Niksic <hniksic@xemacs.org> 15180 15181 * src/utils.c (read_file): Ditto. 15182 15183 * src/main.c (main): Use struct_fstat. 15184 15185 * src/mswindows.h (struct_fstat): Define a struct_fstat to deal with 15186 the fact that Borland 5.5 has 64-bit stat, but not 64-bit fstat! 15187 151882005-06-23 Hrvoje Niksic <hniksic@xemacs.org> 15189 15190 * src/sysdep.h: Remove code that deals with Watcom. 15191 151922005-06-23 Hrvoje Niksic <hniksic@xemacs.org> 15193 15194 * src/cmpt.c (strpbrk): Removed. 15195 (mktime): Removed. 15196 Include <time.h>. 15197 151982005-06-23 Hrvoje Niksic <hniksic@xemacs.org> 15199 15200 * doc/wget.texi (Contributors): Updated list of principal 15201 contributors. 15202 152032005-06-23 Hrvoje Niksic <hniksic@xemacs.org> 15204 15205 * configure.in: Don't check for strpbrk and mktime. 15206 152072005-06-22 Hrvoje Niksic <hniksic@xemacs.org> 15208 15209 * src/sysdep.h: Include the stdbool.h/_Bool/bool blurb from Autoconf. 15210 152112005-06-22 Hrvoje Niksic <hniksic@xemacs.org> 15212 15213 * src/openssl.c, connect.c, host.c: Replace instances of #ifdef 15214 ENABLE_DEBUG if (opt.debug) {...} #endif with IF_DEBUG {...}. 15215 15216 * src/main.c: Rename the IF_DEBUG defined here to WHEN_DEBUG. 15217 15218 * src/wget.h (IF_DEBUG): New macro. 15219 (DEBUGP): Define in terms of IF_DEBUG. 15220 152212005-06-22 Hrvoje Niksic <hniksic@xemacs.org> 15222 15223 * src/init.c (cmd_lockable_boolean): Removed. 15224 152252005-06-22 Hrvoje Niksic <hniksic@xemacs.org> 15226 15227 * src/http.c (gethttp): Only handle --set-cookies (and assert that 15228 cookie jar exists) if opt.cookies is true. Failure to do so 15229 triggered the assert when --no-cookies was used and the server 15230 sent a Set-Cookie header. Ouch! 15231 152322005-06-22 Hrvoje Niksic <hniksic@xemacs.org> 15233 15234 * src/cookies.c (struct cookie): Use 1-bit bitfields for booleans 15235 which makes the structure takes less space at no cost in 15236 complexity. 15237 152382005-06-22 Hrvoje Niksic <hniksic@xemacs.org> 15239 15240 * src/connect.c (select_fd): Expect select() to exist. 15241 15242 * src/utils.c (xsleep): Always use select() as sleep fallback on 15243 non-Windows platforms. 15244 15245 * src/ptimer.c: Delete the implementation of PTIMER_TIME. 15246 15247 * src/main.c: Assume existence of signal(), test for different signal 15248 names instead. 15249 15250 * src/cmpt.c: Better document reasons why certain functions are 15251 included. 15252 152532005-06-22 Hrvoje Niksic <hniksic@xemacs.org> 15254 15255 * src/all: Use bool instead of int and false/true instead of 0/non-0 15256 for boolean variables and values. 15257 152582005-06-22 Hrvoje Niksic <hniksic@xemacs.org> 15259 15260 * src/Makefile.in: Remove the manually maintained dependency list; 15261 make all object files depend on every header. 15262 152632005-06-22 Hrvoje Niksic <hniksic@xemacs.org> 15264 15265 * src/Makefile.in ($(OBJ)): Add the config.h dependency. 15266 152672005-06-22 Hrvoje Niksic <hniksic@xemacs.org> 15268 15269 * doc/wget.texi: Use the more standard authorship phrase "and others". 15270 152712005-06-22 Hrvoje Niksic <hniksic@xemacs.org> 15272 15273 * doc/wget.texi (Wgetrc Commands): Remove the "lockable boolean" 15274 feature. 15275 152762005-06-22 Hrvoje Niksic <hniksic@xemacs.org> 15277 15278 * doc/wget.texi (Overview): Remove explicit vertical spacing. 15279 152802005-06-22 Hrvoje Niksic <hniksic@xemacs.org> 15281 15282 * doc/wget.texi (Mailing List): Remove reference to the wget-cvs list, 15283 which no longer exists. 15284 152852005-06-22 Hrvoje Niksic <hniksic@xemacs.org> 15286 15287 * doc/texinfo.tex: Update with a non-prehistoric version. 15288 152892005-06-22 Hrvoje Niksic <hniksic@xemacs.org> 15290 15291 * doc/texi2pod.pl: Locate perl using the "env" program, so we don't 15292 need to modify texi2pod. 15293 15294 * doc/Makefile.in (wget.pod): Work with texi2pod.pl directly instead 15295 of generating it from texi2pod.pl.in. 15296 152972005-06-22 Hrvoje Niksic <hniksic@xemacs.org> 15298 15299 * configure.in: Don't check for signal.h. Remove the 15300 AC_HEADER_TIME check. Remove the test for ANSI C prototypes. 15301 153022005-06-22 Hrvoje Niksic <hniksic@xemacs.org> 15303 15304 * configure.in: Check for C99 conformant stdbool.h. 15305 153062005-06-22 Hrvoje Niksic <hniksic@xemacs.org> 15307 15308 * configure.in: Assume existence of gettimeofday and select. 15309 gettimeofday exists on all platforms we care about (except for 15310 Windows where Windows-specific functions are used instead), and 15311 select exists virtually everywhere. 15312 15313 * configure.in: Assume existence of strerror, signal, strstr, and 15314 memmove, which are all required by ANSI C. 15315 153162005-06-22 Hrvoje Niksic <hniksic@xemacs.org> 15317 15318 * config.sub, config.guess: Updated from canonical location. 15319 153202005-06-22 Hrvoje Niksic <hniksic@xemacs.org> 15321 15322 * autogen.sh: New file. 15323 15324 * Makefile.svn: Deleted, replaced with the even simpler (and more 15325 standard) `autogen.sh' script. 15326 153272005-06-22 Hrvoje Niksic <hniksic@xemacs.org> 15328 15329 * README.svn: Renamed to README.checkout. Edited to mention the 15330 autogen.sh script. 15331 153322005-06-22 Hrvoje Niksic <hniksic@xemacs.org> 15333 15334 * MAILING-LIST: Remove reference to the obsolete `wget-cvs' 15335 mailing list. 15336 153372005-06-21 Hrvoje Niksic <hniksic@xemacs.org> 15338 15339 * Makefile.cvs: Renamed to Makefile.svn. 15340 15341 * README.cvs: Renamed to README.svn. 15342 153432005-06-20 Hrvoje Niksic <hniksic@xemacs.org> 15344 15345 * src/main.c, ptimer.c, sysdep.h, utils.c: Use #elif to simplify reading of 15346 chained if-else-else-else-... statements. 15347 153482005-06-20 Hrvoje Niksic <hniksic@xemacs.org> 15349 15350 * src/hash.c: Rename "mapping" to "cell" to avoid confusion with the 15351 term "mapping" (or "map") sometimes being used for the entire hash 15352 table. Also rename "non-empty" to "occupied" for easier reading 15353 of if (!NON_EMPTY (...)) ... . 15354 153552005-06-20 Hrvoje Niksic <hniksic@xemacs.org> 15356 15357 * src/all: Return type of signal handlers is `void'. Include signal.h 15358 unconditionally. 15359 15360 * src/all: Don't explicitly cast values returned by malloc. We no 15361 longer support ancient compilers that don't declare malloc, and we 15362 never supported C++ builds. 15363 153642005-06-20 Hrvoje Niksic <hniksic@xemacs.org> 15365 15366 * doc/ansi2knr.1: Removed. 15367 153682005-06-20 Hrvoje Niksic <hniksic@xemacs.org> 15369 15370 * configure.in: Don't check for the return type of signal 15371 handlers; C89 requires it to be void. 15372 153732005-06-19 Hrvoje Niksic <hniksic@xemacs.org> 15374 15375 * src/init.c (cmd_lockable_boolean): Don't recognize literal "2" and 15376 "-1" values; unlike 0 and 1, those should never be exposed to the 15377 user. Update the error message to be more self-consistent, as 15378 proposed by Benno Schulenberg. 15379 153802005-06-19 Hrvoje Niksic <hniksic@xemacs.org> 15381 15382 * src/all: Don't declare errno. Include both time.h and sys/time.h, 15383 as long as sys/time.h exists. Don't dereference function pointers 15384 when invoking the functions they point to. 15385 15386 * src/cmpt.c (memmove): Remove function mandated by C89. 15387 (strerror): Ditto. 15388 (strstr): Ditto. 15389 15390 * src/all: Undo the K&R-ization changes from 2005-05-03. 15391 15392 * src/all: Remove support for K&R compilers: use C89 function 15393 declarations, remove definition of PARAMS, remove support for 15394 varargs, and remove ansi2knr. Assume the presence of time.h, 15395 string.h, and other headers mandated by C89. 15396 153972005-06-19 Hrvoje Niksic <hniksic@xemacs.org> 15398 15399 * aclocal.m4: Remove support for K&R compilers. 15400 154012005-06-18 Hrvoje Niksic <hniksic@xemacs.org> 15402 15403 * src/http.c (gethttp): When -E is in use, check for file existence 15404 after appending ".html" to the name and modify the file name if 15405 necessary. 15406 154072005-06-18 Hrvoje Niksic <hniksic@xemacs.org> 15408 15409 * src/http.c (gethttp): Don't free "head" before using it to save 15410 headers. 15411 154122005-06-17 Hrvoje Niksic <hniksic@xemacs.org> 15413 15414 * src/connect.c (socket_has_inet6): Removed. 15415 15416 * src/host.c (lookup_host): Don't use the AI_ADDRCONFIG getaddrinfo 15417 hint. 15418 154192005-06-16 Hrvoje Niksic <hniksic@xemacs.org> 15420 15421 * src/init.c (cmd_lockable_boolean): Improve the error message so it 15422 lists the more useful values first. 15423 154242005-06-16 Hrvoje Niksic <hniksic@xemacs.org> 15425 15426 * doc/wget.texi (Logging and Input File Options): It's --no-verbose, 15427 not --non-verbose. 15428 154292005-06-15 Hrvoje Niksic <hniksic@xemacs.org> 15430 15431 * src/http.c (gethttp): Also report the system error when the POST 15432 data file is missing. 15433 154342005-06-15 Hrvoje Niksic <hniksic@xemacs.org> 15435 15436 * src/host.h (ip_address): Remove the trailing comma from the type 15437 enum in the no-IPv6 case. 15438 15439 * src/main.c (struct cmdline_option): Remove the trailing comma from 15440 the enum. 15441 15442 Reported by Jens Schleusener. 15443 154442005-06-15 Benno Schulenberg <benno@nietvergeten.nl> 15445 15446 * src/ftp.c, http.c, connect.c, cookies.c, html-url.c, init.c, res.c: 15447 Gettext-ize messages that were previously missed. 15448 154492005-06-06 Keith Moore <keithmo@exmsft.com> 15450 15451 * doc/Makefile.in: Fix a harmless (but annoying) installation warning. 15452 154532005-05-30 Hrvoje Niksic <hniksic@xemacs.org> 15454 15455 * src/url.c (strpbrk_or_eos): Check for a recent GCC version before 15456 using the statement-as-expression extension. 15457 154582005-05-30 Hrvoje Niksic <hniksic@xemacs.org> 15459 15460 * src/init.c (cmd_spec_header): Don't split the string along the 15461 commas using cmd_vector; just append the new value using 15462 vec_append instead. 15463 15464 * src/utils.c (vec_append): New function. 15465 154662005-05-30 Hrvoje Niksic <hniksic@xemacs.org> 15467 15468 * src/http.c (gethttp): Don't attempt to "skip short body" if we're 15469 issuing a HEAD request (in which case the response head is not 15470 followed by a body). 15471 154722005-05-30 Hrvoje Niksic <hniksic@xemacs.org> 15473 15474 * doc/wget.texi (HTTP Options): Removed statement that redirect in 15475 response to POST is "technically disallowed", which I cannot find 15476 in rfc2616 nor in rfc1945. Even if that were technically the 15477 case, the widespreadedness of such responses would make the 15478 prohibition irrelevant. 15479 154802005-05-27 Andreas Beckmann <debian@abeckmann.de> 15481 15482 * src/html-url.c (tag_handle_link): Mark the content from the <link 15483 src="..."> tag as expecting HTML. 15484 154852005-05-24 Hrvoje Niksic <hniksic@xemacs.org> 15486 15487 * src/http.c (http_atotm): Document the origin of the "cookie date" 15488 format. 15489 154902005-05-21 Hrvoje Niksic <hniksic@xemacs.org> 15491 15492 * src/init.c (setval_internal): Report exact command name alongside 15493 the "display name". 15494 154952005-05-18 Hrvoje Niksic <hniksic@xemacs.org> 15496 15497 * src/cookies.c (update_cookie_field): Explicitly cast -1 to time_t to 15498 cope with systems where time_t is unsigned. 15499 15500 * src/cookies.c: Remove unnecessary casts to time_t from values 15501 already of that type. 15502 155032005-05-17 Hrvoje Niksic <hniksic@xemacs.org> 15504 15505 * src/ftp.c (ftp_loop_internal): Same here. 15506 15507 * src/http.c (http_loop): Don't clobber the file when -c is specified 15508 and the first attempt to retrieve the file fails. 15509 155102005-05-16 Hrvoje Niksic <hniksic@xemacs.org> 15511 15512 * src/openssl.c (ssl_check_certificate): Print all issues with a 15513 certificate. 15514 155152005-05-16 Hrvoje Niksic <hniksic@xemacs.org> 15516 15517 * src/init.c (cleanup): Don't free the non-existent opt.ftp_acc. Free 15518 the SSL-related stuff. 15519 155202005-05-16 Hrvoje Niksic <hniksic@xemacs.org> 15521 15522 * src/ftp.c (print_length): Consistently print \n at end of the 15523 "Length" line. 15524 155252005-05-16 Hrvoje Niksic <hniksic@xemacs.org> 15526 15527 * src/ftp-basic.c: Don't xfree() the line returned by ftp_response if 15528 the returned code is not FTPOK. 15529 155302005-05-14 Hrvoje Niksic <hniksic@xemacs.org> 15531 15532 * src/openssl.c (ssl_connect): Announce the beginning and the end of 15533 the SSL handshake when in debug mode. 15534 15535 * src/wget.h (PTR_FORMAT): New macro for easier printing of pointer 15536 values. Use %0*lx along with PTR_FORMAT instead of %p. 15537 155382005-05-14 Hrvoje Niksic <hniksic@xemacs.org> 15539 15540 * src/http.c (gethttp): Would forget to close the connection when 15541 keep_alive was not used. 15542 155432005-05-14 Hrvoje Niksic <hniksic@xemacs.org> 15544 15545 * doc/wget.texi (Overview): Document --[no-]proxy as primarily being 15546 used to turn *off* the use of proxies. 15547 155482005-05-13 Hrvoje Niksic <hniksic@xemacs.org> 15549 15550 * src/openssl.c (pattern_match): Document the code that decides 15551 whether "*" matches ".". 15552 155532005-05-12 Hrvoje Niksic <hniksic@xemacs.org> 15554 15555 * src/url.c (rewrite_shorthand_url): Don't rewrite "https://host" to 15556 "ftp://https//host" when SSL is not used. 15557 155582005-05-12 Hrvoje Niksic <hniksic@xemacs.org> 15559 15560 * src/ftp-ls.c (ftp_index): Use %d to print the port number, which is 15561 now int. 15562 From Steven M. Schweda's VMS patches. 15563 155642005-05-11 Hrvoje Niksic <hniksic@xemacs.org> 15565 15566 * src/openssl.c (ssl_init): Always use SSL_VERIFY_NONE, so that the 15567 handshake finishes even if the certificate is invalid. That way 15568 ssl_check_server_identity can provide better diagnostics on why 15569 the verification failed. 15570 155712005-05-11 Hrvoje Niksic <hniksic@xemacs.org> 15572 15573 * src/openssl.c (ssl_check_server_identity): Renamed to 15574 ssl_check_certificate because it does more than just checking the 15575 server's identity. 15576 (ssl_check_certificate): Tell the user about 15577 --no-check-certificate. 15578 155792005-05-11 Hrvoje Niksic <hniksic@xemacs.org> 15580 15581 * src/openssl.c (pattern_match): New function. 15582 (ssl_check_server_identity): Treat peer certificate common name as 15583 wildcard. 15584 155852005-05-11 Hrvoje Niksic <hniksic@xemacs.org> 15586 15587 * doc/wget.texi (HTTPS (SSL/TLS) Options): Explain certificate 15588 checking in more detail. 15589 155902005-05-10 Hrvoje Niksic <hniksic@xemacs.org> 15591 15592 * src/res.c (res_register_specs): Correctly pass pointers to 15593 hash_table_get_pair. 15594 155952005-05-10 Hrvoje Niksic <hniksic@xemacs.org> 15596 15597 * src/openssl.c (ssl_check_server_identity): Print certificate subject 15598 and issuer. 15599 156002005-05-10 Hrvoje Niksic <hniksic@xemacs.org> 15601 15602 * src/http.c (gethttp): Call ssl_check_server_identity. 15603 15604 * src/openssl.c (ssl_check_server_identity): New function, verifies 15605 that the host name in the certificate matches the actual host 15606 name. 15607 (verify_cert_callback): Removed, since it didn't do anything 15608 except returning the preverify_ok argument. 15609 15610 * src/connect.c (fd_transport_context): Allow retrieval of the context 15611 pointer registered with fd_register_transport. 15612 156132005-05-10 Hrvoje Niksic <hniksic@xemacs.org> 15614 15615 * configure.in: Test for OpenSSL includes we actually need. 15616 156172005-05-09 Hrvoje Niksic <hniksic@xemacs.org> 15618 15619 * src/openssl.c (verify_cert_callback): Renamed from verify_callback. 15620 Always return the received "ok" value. Print the X509 name in 15621 debug mode. 15622 (ssl_init): Enable partial writes in SSL context. 15623 156242005-05-08 Hrvoje Niksic <hniksic@xemacs.org> 15625 15626 * src/netrc.c (parse_netrc): Explicitly check for assignment != NULL 15627 to silence warning from Borland C. 15628 15629 * src/url.c (sync_path): Don't unnecessarily increment p. 15630 (url_parse): Don't unnecessarily set url_encode to NULL just 15631 prior to return from the function. 15632 156332005-05-08 Hrvoje Niksic <hniksic@xemacs.org> 15634 15635 * src/log.c (escnonprint_internal): Place variable declarations 15636 before other statements. 15637 156382005-05-08 Hrvoje Niksic <hniksic@xemacs.org> 15639 15640 * src/init.c (run_command): Correctly interpret the return value of 15641 parse_line. 15642 (commands): Re-alphabetize. 15643 156442005-05-08 Hrvoje Niksic <hniksic@xemacs.org> 15645 15646 * src/http.c (http_loop): Check for wildcards in the URL path 15647 component, not in the whole URL. 15648 15649 * src/ftp.c (ftp_loop): Check for wildcards in URL path before 15650 unescaping, so the users can escape globbing metacharacters with % 15651 escapes. 15652 156532005-05-08 Hrvoje Niksic <hniksic@xemacs.org> 15654 15655 * src/html-url.c: Include recur.h. 15656 15657 * src/http.c (request_new): Define as accepting no args. 15658 156592005-05-08 Hrvoje Niksic <hniksic@xemacs.org> 15660 15661 * doc/texi2pod.pl.in: Allow an "EXAMPLES" section. 15662 156632005-05-07 Hrvoje Niksic <hniksic@xemacs.org> 15664 15665 * src/url.c (strpbrk_or_eos): Made inline. Use strchr(s, '\0') for 15666 finding the NUL char position. 15667 156682005-05-07 Hrvoje Niksic <hniksic@xemacs.org> 15669 15670 * src/url.c (decide_copy_method): Renamed to char_needs_escaping. 15671 Since it now returns only two possible values, change it to return 15672 boolean (int). 15673 156742005-05-07 Hrvoje Niksic <hniksic@xemacs.org> 15675 15676 * src/url.c (decide_copy_method): Never cause reencode_escapes to 15677 decode % escapes; it is too intrusive and breaks some servers. 15678 156792005-05-07 Hrvoje Niksic <hniksic@xemacs.org> 15680 15681 * src/http.c (gethttp): When tunnelling SSL traffic over proxy with 15682 CONNECT, we're really talking to the remote server directly. 15683 Because of this, the request-line argument must be the URL path 15684 rather than the whole URL, as it would be when using regular 15685 proxies. 15686 Reported by Charles Lane. 15687 156882005-05-07 Hrvoje Niksic <hniksic@xemacs.org> 15689 15690 * src/ftp-basic.c (ftp_request): Prevent newlines in VALUE causing 15691 inadvertent sending of multiple FTP commands. 15692 156932005-05-06 Hrvoje Niksic <hniksic@xemacs.org> 15694 15695 * src/main.c (print_help): Fix wording of --secure-protocol help text. 15696 156972005-05-06 Hrvoje Niksic <hniksic@xemacs.org> 15698 15699 * src/init.c (cmd_spec_useragent): Allow empty User-Agent. 15700 15701 * src/http.c (gethttp): Don't print "unknown authentication scheme" 15702 for failed Basic authentication. 15703 (SET_USER_AGENT): Don't set user-agent if opt.useragent is empty. 15704 (gethttp): Use alloca for allocation of www_authenticate. 15705 157062005-05-06 Hrvoje Niksic <hniksic@xemacs.org> 15707 15708 * src/cmpt.c (strstr): Updated from glibc 2.3.5. 15709 157102005-05-06 Hrvoje Niksic <hniksic@xemacs.org> 15711 15712 * doc/wget.texi (HTTP Options): Document empty user-agent. 15713 157142005-05-06 Hrvoje Niksic <hniksic@xemacs.org> 15715 15716 * doc/wget.texi (Download Options): Explain that the read timeout 15717 really refers to idle timeout. 15718 (Download Options): Mention that decimal and subsecond values may 15719 be used for timeouts. 15720 157212005-05-06 Hrvoje Niksic <hniksic@xemacs.org> 15722 15723 * configure.in: Set MAKEINFO to "true" so build doesn't fail for 15724 users without either makeinfo or the pre-packaged info files. 15725 157262005-05-06 Hrvoje Niksic <hniksic@xemacs.org> 15727 15728 * Makefile.in ($(srcdir)/stamp-h.in): Don't print the line with 15729 the comment about running autoheader. 15730 157312005-05-05 Hrvoje Niksic <hniksic@xemacs.org> 15732 15733 * src/utils.c (touch): Set access time to current time. 15734 157352005-05-05 Hrvoje Niksic <hniksic@xemacs.org> 15736 15737 * src/url.c (url_unescape): Don't unescape %00, it effectively 15738 truncates the string. 15739 157402005-05-05 Hrvoje Niksic <hniksic@xemacs.org> 15741 15742 * src/retr.c (limit_bandwidth_reset): Reset sleep_adjust. 15743 (limit_bandwidth): Don't allow huge "adjustment" values that 15744 result from being suspended for a while. 15745 157462005-05-05 Hrvoje Niksic <hniksic@xemacs.org> 15747 15748 * src/main.c (main): Propagate option name to setoptval. 15749 15750 * src/init.c (setoptval): Accept another argument, OPTNAME. Propagate 15751 that argument as the option name independently of the actual 15752 command, determined by command_by_name(com). 15753 157542005-05-05 Hrvoje Niksic <hniksic@xemacs.org> 15755 15756 * src/log.c (copy_and_escape): Slightly reduce code repetition between 15757 the two loops. 15758 157592005-05-05 Hrvoje Niksic <hniksic@xemacs.org> 15760 15761 * src/log.c (copy_and_escape): Replace the FOR_URI argument with a 15762 slightly more general mechanism for specifying different kinds of 15763 escape. 15764 157652005-05-05 Hrvoje Niksic <hniksic@xemacs.org> 15766 15767 * src/init.c (parse_line): Make the return value indicate whether 15768 there was a syntax error or a setter failed. 15769 (run_wgetrc): Return an indication on whether an error has been 15770 encountered. 15771 (initialize): Abort if there have been errors running either 15772 .wgetrc file. 15773 157742005-05-05 Hrvoje Niksic <hniksic@xemacs.org> 15775 15776 * src/http.c (http_atotm): Zero out the whole struct tm being passed 15777 to strptime. 15778 157792005-05-05 Hrvoje Niksic <hniksic@xemacs.org> 15780 15781 * src/ftp-basic.c (ftp_response): Fix printing FTP server response. 15782 157832005-05-05 Hrvoje Niksic <hniksic@xemacs.org> 15784 15785 * doc/wget.texi: We're using GFDL 1.2, not 1.1. 15786 157872005-05-05 Hrvoje Niksic <hniksic@xemacs.org> 15788 15789 * doc/wget.texi (Contributors): Updated. 15790 157912005-05-05 Charles C.Fu <ccwf@bacchus.com> 15792 15793 * src/utils.c (proclist): Strip leading slash when calling fnmatch 15794 too, otherwise wildcard comparisons always fail. 15795 157962005-05-04 Hrvoje Niksic <hniksic@xemacs.org> 15797 15798 * src/wget.h: If gettext was found but libtintl.h wasn't, declare 15799 gettext's return type to avoid type mismatches. 15800 158012005-05-03 Hrvoje Niksic <hniksic@xemacs.org> 15802 15803 * src/url.c (url_parse): Rename label `error' to avoid conflict with 15804 identifier. 15805 15806 * src/retr.c (fd_read_body): Rename label `out' to avoid conflict with 15807 identifier. 15808 (fd_read_hunk): Use explicit double constant. 15809 (retrieve_from_file): Don't use string concatenation. 15810 (sleep_between_retrievals): Make sure xsleep is called with a 15811 `double' argument. 15812 (no_proxy_match): Define as static, like it is declared. 15813 15814 * src/progress.c (bar_create): Use 0.0 instead of 0 because K&R 15815 compilers can't automatically promote it. 15816 15817 * src/http-ntlm.c (ntlm_output): Replace \xHH sequences with \OOO for 15818 the sake of old compilers. 15819 15820 * src/ftp.c (ftp_loop_internal): Don't use string concatenation. 15821 15822 * src/http.c (request_send): Use explicit double constants when 15823 calling fd_read and fd_write. 15824 (post_file): Ditto. 15825 (gethttp): Ditto. 15826 (skip_short_body): Ditto. 15827 15828 * src/ftp-basic.c: When calling fd_write, specify the last argument as 15829 a `double' constant for the sake of K&R compilers which don't see 15830 the prototype and therefore can't promote it to double 15831 automatically. 15832 15833 * src/cookies.c (cookie_jar_load): Rename abort label to abort_cookie 15834 to avoid name conflict in K&R compilers. 15835 158362005-05-02 Hrvoje Niksic <hniksic@xemacs.org> 15837 15838 * INSTALL: Document environment variables affecting configure, 15839 especially $CC. 15840 15841 * INSTALL: Mention that make install requires root. 15842 158432005-04-29 Hrvoje Niksic <hniksic@xemacs.org> 15844 15845 * src/ptimer.c (posix_init): Since we allow _POSIX_MONOTONIC_CLOCK==0, 15846 it is not enough to check for _POSIX_MONOTONIC_CLOCK-0, we must 15847 also check for defined(_POSIX_MONOTONIC_CLOCK). 15848 158492005-04-29 Hrvoje Niksic <hniksic@xemacs.org> 15850 15851 * configure.in: Don't set ipv6 to yes only because struct 15852 sockaddr_in6 was found. Stop the rest of the IPv6 checks when one 15853 check fails. Abort if IPv6 was explicitly requested, but not 15854 found. 15855 158562005-04-28 Hrvoje Niksic <hniksic@xemacs.org> 15857 15858 * windows/Makefile.top.bor: Use MAKEDIR for make clean too. 15859 158602005-04-28 Hrvoje Niksic <hniksic@xemacs.org> 15861 15862 * windows/Makefile.src.bor: Don't suppress unreachable code 15863 warning. 15864 158652005-04-28 Hrvoje Niksic <hniksic@xemacs.org> 15866 15867 * windows/Makefile.src.bor: Don't delete executables other than 15868 wget.exe. Delete various auxilliary files created by the Borland 15869 build process. 15870 158712005-04-28 Hrvoje Niksic <hniksic@xemacs.org> 15872 15873 * src/init.c (commands): Wrap the use of opt.random_file in #ifdef 15874 HAVE_SSL. 15875 158762005-04-28 Hrvoje Niksic <hniksic@xemacs.org> 15877 15878 * src/http.c (gethttp): Correctly set the user agent. 15879 158802005-04-28 Hrvoje Niksic <hniksic@xemacs.org> 15881 15882 * src/ftp.c, hash.c, connect.c, host.c, http.c: Remove unreached code, 15883 such as "break" following return or abort. 15884 158852005-04-28 Hrvoje Niksic <hniksic@xemacs.org> 15886 15887 * NEWS: Advertise new-style syntax for --no-dns-cache instead 15888 of --dns-cache=off. 15889 158902005-04-28 Hrvoje Niksic <hniksic@xemacs.org> 15891 15892 * INSTALL: Mention --disable-ntlm. 15893 158942005-04-28 Herold Heiko <Heiko.Herold@previnet.it> 15895 15896 * windows/wget.dep: Rename gen_sslfunc.c to openssl.c. 15897 158982005-04-27 Mauro Tortonesi <mauro@ferrara.linux.it> 15899 15900 * src/main.c: Map --ftp-password, --http-password and --proxy-password to 15901 the new ftppassword, httppassword and proxypassword commands 15902 respectively. Document the --user and --password options in the help 15903 string. 15904 159052005-04-27 Mauro Tortonesi <mauro@ferrara.linux.it> 15906 15907 * src/ftp.c: Add support for --user and --password. 15908 15909 * src/http.c: Add support for --user and --password. 15910 15911 * src/init.c: Deprecated ftppasswd, httppasswd, login, passwd and 15912 proxypasswd commands. Added ftppassword, ftpuser, httppassword, 15913 password, proxypassword and user commands. 15914 15915 * src/main.c: Renamed --ftp-passwd to --ftp-password. Added --ftp-user, 15916 --http-password, --password, --proxy-password and --user. Deprecated 15917 --http-passwd and --proxy-passwd. Added documentation for new options 15918 and removed documentation for deprecated options in the help string. 15919 15920 * src/options.h (struct options): Added user and passwd members to handle 15921 --user and --password respectively. Renamed ftp_acc and ftp_pass 15922 members to ftp_user and ftp_passwd for consistency. 15923 159242005-04-27 Mauro Tortonesi <mauro@ferrara.linux.it> 15925 15926 * doc/wget.texi: Fixed a broken reference to Security Considerations 15927 section in tex-generated documents (like the man page). 15928 159292005-04-27 Mauro Tortonesi <mauro@ferrara.linux.it> 15930 15931 * doc/wget.texi: Document --user, --password, --ftp-user and the 15932 corresponding Wgetrc command. Renamed --ftp-passwd to --ftp-password, 15933 --http-passwd to --http-passwd and --proxy-passwd to proxy_password. 15934 Renamed ftp_passwd to ftp_password, http_passwd to http_passwd and 15935 proxy_passwd to proxy_password. Removed documentation for the 15936 deprecated login command. 15937 159382005-04-27 Mauro Tortonesi <mauro@ferrara.linux.it> 15939 15940 * NEWS: Mention the new --ftp-user, --ftp-password, --user and 15941 --password options, the name changes for --http-passwd and 15942 --proxy-passwd and the deprecation of login and passwd commands. 15943 159442005-04-27 Hrvoje Niksic <hniksic@xemacs.org> 15945 15946 * src/openssl.c (ssl_init): Ditto. 15947 15948 * src/options.h (struct options): Allow separate specification of key 15949 type and certificate type. 15950 15951 * src/init.c (cmd_spec_cert_type): Provide a "der" synonym for "asn1" 15952 certificate encoding. 15953 159542005-04-27 Hrvoje Niksic <hniksic@xemacs.org> 15955 15956 * src/openssl.c (init_prng): Disable the weak random seed by default. 15957 15958 * src/http.c (gethttp): Simplify SSL initialization; disable SSL when 15959 anything goes wrong with the initialization. 15960 15961 * src/options.h (struct options): New option opt.random_file. 15962 159632005-04-27 Hrvoje Niksic <hniksic@xemacs.org> 15964 15965 * src/main.c (print_help): Advertise "DER", not "ASN1". 15966 159672005-04-27 Hrvoje Niksic <hniksic@xemacs.org> 15968 15969 * src/init.c: Wrap private key commands in IF_SSL. 15970 159712005-04-27 Hrvoje Niksic <hniksic@xemacs.org> 15972 15973 * src/init.c (cmd_spec_useragent): Free the old value of 15974 opt.useragent before setting the new one. 15975 159762005-04-27 Hrvoje Niksic <hniksic@xemacs.org> 15977 15978 * doc/wget.texi: Improve wording of command descriptions. 15979 159802005-04-27 Hrvoje Niksic <hniksic@xemacs.org> 15981 15982 * doc/wget.texi: Document the new form of SSL/TLS options. 15983 159842005-04-27 Hrvoje Niksic <hniksic@xemacs.org> 15985 15986 * doc/wget.texi (HTTPS (SSL/TLS) Options): Document --random-file. 15987 159882005-04-27 Hrvoje Niksic <hniksic@xemacs.org> 15989 15990 * doc/wget.texi (HTTP Options): Mention --keep-session-cookies when 15991 documenting --post-data. 15992 159932005-04-27 Hrvoje Niksic <hniksic@xemacs.org> 15994 15995 * doc/wget.texi (Download Options): Fix bind address cindex entry that 15996 broke concept index generation. 15997 159982005-04-26 Hrvoje Niksic <hniksic@xemacs.org> 15999 16000 * src/openssl.c: Renamed "gen_sslfunc.c" to "openssl.c" and 16001 "gen_sslfunc.h" to "openssl.h". This reflects the intent of 16002 openssl.c encapsulating the OpenSSL-specific code. 16003 160042005-04-26 Hrvoje Niksic <hniksic@xemacs.org> 16005 16006 * src/init.c: Renamed "closure" (a synonym for context in some 16007 cultures) to "place", which more accurately reflects the usage. 16008 160092005-04-26 Hrvoje Niksic <hniksic@xemacs.org> 16010 16011 * src/http.c (gethttp): Call skip_short_body only if keep_alive is in 16012 use. 16013 (gethttp): Send the User-Agent header with the CONNECT request as 16014 well. 16015 160162005-04-26 Hrvoje Niksic <hniksic@xemacs.org> 16017 16018 * src/gen_sslfunc.c (ssl_init): Use default locations for loading the 16019 certificate bundles. 16020 (ssl_init_prng): Disable the cryptographically weak PRNG 16021 initialization fallback. 16022 16023 * src/init.c: Renamed SSL command-line arguments and wgetrc commands. 16024 (defaults): Check the server certificate by default. 16025 160262005-04-26 Hrvoje Niksic <hniksic@xemacs.org> 16027 16028 * src/cookies.c (cookie_handle_set_cookie): Delete the part of the 16029 path after the trailing slash. 16030 16031 * src/http.c (gethttp): Call cookie_handle_set_cookie with path that 16032 begins with '/'. 16033 160342005-04-26 Hrvoje Niksic <hniksic@xemacs.org> 16035 16036 * doc/wget.texi (Option Syntax): Document boolean options. Include 16037 the option syntax in the man page. 16038 (Directory Options): Removed stray text after --protocol-directories. 16039 160402005-04-26 Hrvoje Niksic <hniksic@xemacs.org> 16041 16042 * doc/wget.texi (HTTP Options): Improved entry on 16043 --keep-session-cookies. 16044 160452005-04-26 Hrvoje Niksic <hniksic@xemacs.org> 16046 16047 * doc/wget.texi (Directory Options): Removed stray text after 16048 --protocol-directories. 16049 160502005-04-25 Hrvoje Niksic <hniksic@xemacs.org> 16051 16052 * src/main.c (option_data): Removed support for the undocumented flag 16053 --use-proxy. 16054 160552005-04-25 Hrvoje Niksic <hniksic@xemacs.org> 16056 16057 * src/main.c (option_data): Don't treat -Y as a boolean switch; treat 16058 it as a value switch instead, so "-Y off" continues to work. 16059 160602005-04-25 Hrvoje Niksic <hniksic@xemacs.org> 16061 16062 * doc/wget.texi (Download Options): Document --retry-connrefused. 16063 160642005-04-25 Hrvoje Niksic <hniksic@xemacs.org> 16065 16066 * doc/wget.texi (Advanced Usage): Don't advertise the non-existent 16067 `-s' option. 16068 160692005-04-25 Hrvoje Niksic <hniksic@xemacs.org> 16070 16071 * doc/Makefile.in (wget.info): Depend on version.texi as well. 16072 16073 * doc/wget.texi: Simplify copyright. Replace remaining instances of 16074 --OPTION=off with --no-OPTION. 16075 160762005-04-24 Hrvoje Niksic <hniksic@xemacs.org> 16077 16078 * src/utils.c (aprintf): Delete unreachable statement. 16079 160802005-04-24 Hrvoje Niksic <hniksic@xemacs.org> 16081 16082 * src/host.c (cmp_prefer_ipv4): New function. 16083 (cmp_prefer_ipv6): New function. 16084 (lookup_host): Use the appropriate comparator according to 16085 opt.prefer_family. 16086 16087 * src/init.c: New option prefer_family. 16088 16089 * src/host.c (is_valid_ipv6_address): Spell NS_* constants in lower 16090 case to avoid clash with system headers. 16091 (lookup_host): Reorder the addresses so that IPv4 ones come first. 16092 16093 * src/utils.c (stable_sort): New function. 16094 160952005-04-24 Hrvoje Niksic <hniksic@xemacs.org> 16096 16097 * src/connect.c (retryable_socket_connect_error): Return 0 for 16098 ENETUNREACH and EHOSTUNREACH. 16099 161002005-04-24 Hrvoje Niksic <hniksic@xemacs.org> 16101 16102 * doc/wget.texi (Download Options): Don't claim that -6 accepts mapped 16103 IPv4 addresses. 16104 161052005-04-24 Hrvoje Niksic <hniksic@xemacs.org> 16106 16107 * doc/wget.texi (Download Options): Document --prefer-family. 16108 161092005-04-23 Hrvoje Niksic <hniksic@xemacs.org> 16110 16111 * src/utils.c (base64_encode): Treat input as unsigned chars. 16112 Required for correct encoding of binary stuff. 16113 161142005-04-23 Hrvoje Niksic <hniksic@xemacs.org> 16115 16116 * src/http-ntlm.c: Format the function definitions in an 16117 ansi2knr-friendly fashion. 16118 161192005-04-23 Hrvoje Niksic <hniksic@xemacs.org> 16120 16121 * src/cmpt.c: Reenable the memmove implementation for systems that 16122 lack it. 16123 16124 * src/http.c (gethttp): Store the "authorized" state of the persistent 16125 connection. 16126 (request_remove_header): New function. 16127 (gethttp): Don't send the "Basic" authentication if the connection 16128 is already authorized. 16129 161302005-04-23 Hrvoje Niksic <hniksic@xemacs.org> 16131 16132 * doc/wget.texi: Documented the SSL command-line options. 16133 161342005-04-23 Hrvoje Niksic <hniksic@xemacs.org> 16135 16136 * doc/wget.texi (Wgetrc Commands): Document ftp_passwd. 16137 (FTP Options): Document --ftp-passwd. 16138 161392005-04-23 Hrvoje Niksic <hniksic@xemacs.org> 16140 16141 * doc/texi2pod.pl.in: First process @@ then @}, so @samp{-wget@@} is 16142 interpreted correctly. 16143 161442005-04-22 Hrvoje Niksic <hniksic@xemacs.org> 16145 16146 * src/http.c (gethttp): Handle multiple WWW-Authentication headers, 16147 only one of which is recognized. Those are sent by IIS with NTLM 16148 authorization. 16149 (create_authorization_line): Propagate information whether 16150 authorization is finished. 16151 (gethttp): Only stop authorization when it's really finished, not 16152 after fixed two steps. 16153 161542005-04-22 Hrvoje Niksic <hniksic@xemacs.org> 16155 16156 * po/eo.po: Added Esperanto translation. 16157 161582005-04-21 Hrvoje Niksic <hniksic@xemacs.org> 16159 16160 * src/main.c (print_help): Print the EGD option outside the cluster of 16161 SSL options. 16162 161632005-04-21 Hrvoje Niksic <hniksic@xemacs.org> 16164 16165 * src/http-ntlm.c (ntlm_output): Fix setting the domain. 16166 Suggested by Sami Krank. 16167 161682005-04-21 Hrvoje Niksic <hniksic@xemacs.org> 16169 16170 * src/gen_sslfunc.c (ssl_init): Fix warning message text; mark the 16171 message as translatable. 16172 161732005-04-21 Hrvoje Niksic <hniksic@xemacs.org> 16174 16175 * po/vi.po: Added Vietnamese translation. 16176 161772005-04-20 Mauro Tortonesi <mauro@ferrara.linux.it> 16178 16179 * src/connect.c: Set IPV6_V6ONLY socket option when -6 switch is used. 16180 161812005-04-20 Hrvoje Niksic <hniksic@xemacs.org> 16182 16183 * doc/wget.texi: Document behavior of -6 wrt mapped IPv4 addresses. 16184 161852005-04-20 Hrvoje Niksic <hniksic@xemacs.org> 16186 16187 * doc/wget.texi: Document IPv6 related options. 16188 161892005-04-20 FUJISHIMA Satsuki <sf@FreeBSD.org> 16190 16191 * src/http.c (request_set_header): Fix the check whether a new header 16192 needs to be allocated. 16193 161942005-04-18 Hrvoje Niksic <hniksic@xemacs.org> 16195 16196 * src/utils.c (base64_encode): Use the parameter order that makes more 16197 sense. Return the length of the base64 written. Updated all 16198 callers. 16199 162002005-04-18 Hrvoje Niksic <hniksic@xemacs.org> 16201 16202 * doc/wget.texi: Update mailing list information. 16203 162042005-04-18 Hrvoje Niksic <hniksic@xemacs.org> 16205 16206 * doc/wget.texi (Download Options): Don't claim that --no-dns-cache is 16207 necessary for dyndns servers -- it's not. 16208 162092005-04-18 Hrvoje Niksic <hniksic@xemacs.org> 16210 16211 * MACHINES: Removed. 16212 162132005-04-17 Hrvoje Niksic <hniksic@xemacs.org> 16214 16215 * src/snprintf.c (fmtstr): Declare VALUE as const char *. 16216 Based on patch by Russ Allbery. 16217 162182005-04-17 Hrvoje Niksic <hniksic@xemacs.org> 16219 16220 * src/snprintf.c (fmtfp): More correct handling of significant digit 16221 count with %g -- 0.002 has one significant digit, not three. 16222 162232005-04-17 Hrvoje Niksic <hniksic@xemacs.org> 16224 16225 * src/http.c (request_set_header): Free NAME when VALUE is NULL and 16226 freeing the header name is requested. 16227 162282005-04-16 Hrvoje Niksic <hniksic@xemacs.org> 16229 16230 * src/snprintf.c: Use the PARAMS macro to handle prototypes. Write 16231 function definitions in the ansi2knr-friendly way. 16232 (fmtstr): If string precision is specified, don't read VALUE past 16233 it. 16234 (dopr): Actually print %g and %e formats. 16235 (fmtfp): Fix a bug that caused 0.01 to be printed as 0.1. 16236 (fmtfp): Use LLONG in floating point conversions to be able to 16237 convert more digits. 16238 (fmtfp): Interpret precision as number of significant digits with 16239 %g. 16240 (fmtfp): Omit trailing decimal zeros with %g. 16241 16242 * src/snprintf.c: Don't include <ctype.h> because none of it is used. 16243 Include strings.h/string.h, as per Autoconf. 16244 162452005-04-16 Hrvoje Niksic <hniksic@xemacs.org> 16246 16247 * src/retr.c (fd_read_body): Respect read timeout with non-interactive 16248 or no progress gauge -- treat ETIMEDOUT specially only when 16249 progress_interactive. 16250 Reported by FUJISHIMA Satsuki. 16251 162522005-04-16 FUJISHIMA Satsuki <sf@FreeBSD.org> 16253 16254 * src/http.c (gethttp): Don't use HTTP/1.0 persistent connections over 16255 proxy. 16256 162572005-04-15 Hrvoje Niksic <hniksic@xemacs.org> 16258 16259 * src/ptimer.c: Use _POSIX_TIMERS - 0 > 0, which handles the case when 16260 _POSIX_TIMERS is defined but empty, as well as the case when it is 16261 undefined. Do the same with the check for _POSIX_MONOTONIC_CLOCK. 16262 Suggested by Larry Jones. 16263 162642005-04-15 Hrvoje Niksic <hniksic@xemacs.org> 16265 16266 * src/ptimer.c: Check that _POSIX_TIMERS is defined as well as > 0. 16267 Problem reported by Steven M. Schweda. 16268 162692005-04-14 Hrvoje Niksic <hniksic@xemacs.org> 16270 16271 * src/http.c (skip_short_body): Print the skipped body data in debug 16272 mode. 16273 (skip_short_body): Don't skip more than 4k of body data. 16274 (skip_short_body): Return whether the skipping was successful. 16275 (gethttp): If skip_short_body failed, invalidate the connection. 16276 162772005-04-12 Gisle Vanem <giva@bgnett.no> 16278 16279 * src/ftp.c (getftp): Ditto. 16280 16281 * src/http.c (gethttp): Open the output file in binary mode. 16282 162832005-04-11 Hrvoje Niksic <hniksic@xemacs.org> 16284 16285 * src/xmalloc.c (register_ptr): Warn the user to increase SZ prior to 16286 aborting. 16287 162882005-04-11 Hrvoje Niksic <hniksic@xemacs.org> 16289 16290 * src/hash.c: Conditionalize including config.h on HAVE_CONFIG_H 16291 instead of on STANDALONE. 16292 162932005-04-11 Hrvoje Niksic <hniksic@xemacs.org> 16294 16295 * src/gen_sslfunc.c (ssl_print_errors): Made static. 16296 (ssl_print_errors): Eliminate potentially dangerous fixed-size 16297 error buffer. Passing NULL to ERR_error_string causes it to use 16298 its own static buffer, which is fine for our purposes. 16299 16300 * src/gen_sslfunc.c: Include gen_sslfunc.h. Make the declarations of 16301 ssl_init and ssl_conect match the actual definitions. 16302 (ssl_connect): Simply return a boolean, the SSL context is no 16303 longer useful as a return value. 16304 16305 * src/retr.c: Don't include SSL headers; we don't need them. 16306 163072005-04-11 Hrvoje Niksic <hniksic@xemacs.org> 16308 16309 * src/convert.c (convert_cleanup): Free converted_files. 16310 163112005-04-11 Hrvoje Niksic <hniksic@xemacs.org> 16312 16313 * src/config-post.h: Don't define _VA_LIST under Solaris; it breaks 16314 compilation with GCC 3.4 under Solaris 10. (It was defined to 16315 avoid a warning with previous versions of GCC.) 16316 163172005-04-10 Hrvoje Niksic <hniksic@xemacs.org> 16318 16319 * src/wget.h (DEBUGP): Use __builtin_expect to give a hint to GCC that 16320 opt.debug is false in the vast majority of cases. 16321 163222005-04-10 Hrvoje Niksic <hniksic@xemacs.org> 16323 16324 * src/config-post.h: Declare alloca as void *, not char *. 16325 163262005-04-09 Hrvoje Niksic <hniksic@xemacs.org> 16327 16328 * src/url.c: Use "static const" in preference to "const static". 16329 Sun's cc warns that "storage class after type is obsolescent". 16330 16331 * src/url.c (urlchr_table): Don't mark ~ as unsafe, too many broken 16332 web sites are confused when ~ is changed to %7E. Their servers 16333 redirect /%7Efoo/ to /~foo/, which Wget again accesses using %7E, 16334 causing further redirections, therefore looping infinitely. See 16335 Debian bug #301624 for an example. 16336 163372005-04-09 Hrvoje Niksic <hniksic@xemacs.org> 16338 16339 * src/recur.c (download_child_p): When -p is used, (temporarily) 16340 ignore accept/reject rules for HTMLs, even when they are at the 16341 maximum recursion depth. That is because with -p we are, if 16342 necessary, overstepping the max. depth to get the requisites. 16343 163442005-04-09 Hrvoje Niksic <hniksic@xemacs.org> 16345 16346 * src/http-ntlm.c (ntlm_output): Use "char", not "unsigned char" for 16347 ntlmbuf. Our base64 functions accept char anyway. 16348 (ntlm_output): Join up the format string, since we nominally 16349 support K&R compilers. 16350 (ntlm_output): Ditto. 16351 163522005-04-09 Hrvoje Niksic <hniksic@xemacs.org> 16353 16354 * src/alloca.c: Include wget.h to be able to use xmalloc. In addition 16355 to defining malloc to xmalloc, also define free to xfree. 16356 163572005-04-08 Larry Jones <lawrence.jones@ugsplm.com> 16358 16359 * doc/Makefile.in (wget.info): Don't use $< in an explicit rule. 16360 163612005-04-08 Hrvoje Niksic <hniksic@xemacs.org> 16362 16363 * windows/Makefile.src: Compile ptimer.c and http-ntlm.c. 16364 163652005-04-08 Hrvoje Niksic <hniksic@xemacs.org> 16366 16367 * src/ptimer.c: Use Windows timers under Cygwin, whose POSIX timer 16368 implementation is incomplete. 16369 163702005-04-08 Hrvoje Niksic <hniksic@xemacs.org> 16371 16372 * src/ptimer.c (struct ptimer): Remove the unused initialized field. 16373 16374 * src/ptimer.c: Renamed function parameters from WT (which used to 16375 stand for wget_timer or wtimer) to PT. 16376 163772005-04-08 Hrvoje Niksic <hniksic@xemacs.org> 16378 16379 * src/ptimer.c (ptimer_init): In fact, _POSIX_MONOTONIC_CLOCK needs to 16380 be >= 0. 16381 16382 * src/ptimer.c (ptimer_init): Check whether _POSIX_MONOTONIC_CLOCK is 16383 defined instead of whether it's greater than 0. glibc defines it 16384 to 0, but still makes it available via sysconf. 16385 163862005-04-08 Hrvoje Niksic <hniksic@xemacs.org> 16387 16388 * src/ptimer.c (ptimer_init): Explicitly check that 16389 _POSIX_MONOTONIC_CLOCK is *both* defined and >=0. (Undefined 16390 symbols are >=0.) 16391 163922005-04-08 Hrvoje Niksic <hniksic@xemacs.org> 16393 16394 * src/ptimer.c (ptimer_diff): Fix typo affecting Windows build. 16395 163962005-04-08 Hrvoje Niksic <hniksic@xemacs.org> 16397 16398 * src/ptimer.c (posix_init): Be smarter about choosing clocks. In 16399 decreasing order of preference, use CLOCK_MONOTONIC, 16400 CLOCK_HIGHRES, and CLOCK_REALTIME. 16401 (ptimer_allocate): Removed. 16402 16403 * src/ptimer.c: Refactor the code by cleanly separating the 16404 architecture-dependent code from the architecture-independent 16405 code. 16406 164072005-04-08 Hrvoje Niksic <hniksic@xemacs.org> 16408 16409 * src/mswindows.c (str_to_int64): Rename OVERFLOW and UNDERFLOW to 16410 INT64_OVERFLOW and INT64_UNDERFLOW, since those names are used. 16411 164122005-04-08 Hrvoje Niksic <hniksic@xemacs.org> 16413 16414 * configure.in: When checking for OpenSSL headers, check for all 16415 the ones that Wget is using. 16416 164172005-04-08 Hrvoje Niksic <hniksic@xemacs.org> 16418 16419 * configure.in: Use it. 16420 16421 * aclocal.m4 (WGET_POSIX_CLOCK): Check whether -lrt is needed to 16422 use POSIX clock functions like clock_gettime. 16423 164242005-04-08 Hrvoje Niksic <hniksic@xemacs.org> 16425 16426 * Makefile.in ($(srcdir)/stamp-h.in): Don't attempt to run 16427 autoheader automatically; it breaks things with fresh CVS builds. 16428 164292005-04-07 Hrvoje Niksic <hniksic@xemacs.org> 16430 16431 * src/ptimer.c: New file. Move the "wtimer" functions from utils.c to 16432 this file and rename them to ptimer_. 16433 164342005-04-07 Hrvoje Niksic <hniksic@xemacs.org> 16435 16436 * src/host.c (NO_ADDRESS): Define NO_ADDRESS only after the system 16437 headers have been included. 16438 164392005-04-06 Hrvoje Niksic <hniksic@xemacs.org> 16440 16441 * src/http.c (pconn): Include NTLM data, which is per-connection. 16442 (known_authentication_scheme_p): Recognize NTLM authorization. 16443 (create_authorization_line): Call ntlm_input and ntlm_output. 16444 16445 * src/http-ntlm.c: New file, donated by Daniel Stenberg and originally 16446 written for curl, heavily modified for Wget. 16447 16448 * src/utils.c (base64_encode): Relocated from http.c, since it is now 16449 used by http-ntlm.c, and will possibly be used elsewhere. 16450 (base64_decode): New function, originally based on code from GNU 16451 recode. 16452 164532005-04-06 Hrvoje Niksic <hniksic@xemacs.org> 16454 16455 * configure.in: Allow the user to disable NTLM authorization. 16456 Make sure NTLM is disabled if OpenSSL is unavailable. If NTLM is 16457 *explicitly* requested and OpenSSL is unavailable, abort. 16458 16459 * configure.in: Renamed USE_* to ENABLE_*. 16460 164612005-04-05 Mauro Tortonesi <mauro@ferrara.linux.it> 16462 16463 * src/Makefile.in: removed string_t.c from list of source files. 16464 164652005-04-04 Mauro Tortonesi <mauro@ferrara.linux.it> 16466 16467 * src/string_t.c: Removed. 16468 16469 * src/string_t.h: Removed. 16470 164712005-04-02 Hrvoje Niksic <hniksic@xemacs.org> 16472 16473 * src/url.c (rewrite_shorthand_url): Only accept recognized schemes. 16474 That way "foo:80" will correctly be rewritten to "http://foo:80" 16475 instead of left unchanged and ultimately rejected because of 16476 "unsupported scheme foo". 16477 164782005-04-02 Hrvoje Niksic <hniksic@xemacs.org> 16479 16480 * src/ftp.c (ftp_loop): Ditto. 16481 16482 * src/ftp-basic.c (ftp_pasv): Use the xzero shorthand for memset(0). 16483 (ftp_lpsv): Ditto. 16484 164852005-03-31 Hrvoje Niksic <hniksic@xemacs.org> 16486 16487 * src/utils.c (number_to_string): Avoid explicit 64-bit constants; 16488 construct them by multiplication at compile-time. 16489 16490 * src/utils.c, elsewhere: Don't append "L" to 32-bit integer 16491 constants; we aren't really compilable on 16-bit systems anyway. 16492 16493 * src/hash.c (prime_size): Remove primes larger than 2^31, but include 16494 2^31-1, which is prime. 16495 164962005-03-30 Hrvoje Niksic <hniksic@xemacs.org> 16497 16498 * src/utils.c (string_set_to_array): New function. 16499 16500 * src/convert.c: Replace the use of "slists" with sets/hash-tables, 16501 which in fact suit the intended purpose much better. 16502 downloaded_html_list is removed altogether. 16503 165042005-03-29 Hrvoje Niksic <hniksic@xemacs.org> 16505 16506 * src/utils.c (numdigit): More correct handling of negative numbers. 16507 165082005-03-29 Hrvoje Niksic <hniksic@xemacs.org> 16509 16510 * src/ftp.h (enum): Rename GLOBALL, GETALL, and GETONE to 16511 GLOB_GLOBALL, GLOB_GETALL, and GLOB_GETONE to avoid conflict with 16512 Linux headers. 16513 165142005-03-23 Hrvoje Niksic <hniksic@xemacs.org> 16515 16516 * po/POTFILES.in: Removed headers.c and rbuf.c. 16517 165182005-03-22 Joseph Caretto <jcaretto@pitt.edu> 16519 16520 * doc/texi2pod.pl.in: Handle asis again. It used to work (see the 16521 2001-12-11 entry), but the local change was lost in the upgrade 16522 to 1.4. 16523 165242005-03-21 Hrvoje Niksic <hniksic@xemacs.org> 16525 16526 * src/http.c (gethttp): Print the human-readable size. 16527 16528 * src/ftp.c (getftp): Print the human-readable size of the file to be 16529 downloaded. 16530 16531 * src/utils.c (human_readable): New function. 16532 16533 * src/utils.c: Renamed "legible" to "with_thousand_seps", 16534 "legible_large_int" to "with_thousand_seps_large", and "legible_1" 16535 to "add_thousand_seps". 16536 165372005-03-21 Hrvoje Niksic <hniksic@xemacs.org> 16538 16539 * src/http.c (gethttp): Inhibit persistent connections when talking to 16540 proxies, as mandated by RFC 2068. 16541 165422005-03-20 Hrvoje Niksic <hniksic@xemacs.org> 16543 16544 * src/url.c (unescape_single_char): New function. 16545 (url_escape_dir): Use it to unescape slashes in directory 16546 components. 16547 (url_string): Escape unsafe chars in host name, except for the ':' 16548 charaters, which can appear in IPv6 addresses. 16549 16550 * src/main.c (main): Don't access the cookie jar directly. 16551 16552 * src/log.c (escnonprint_internal): Correctly calculate the needed 16553 string size. Don't forget the buffer's new size after having 16554 reallocated it. 16555 (log_cleanup): New function. Free the escnonprint ring data. 16556 16557 * src/init.c (cleanup): Don't free the cookie jar explicitly, it is 16558 now done by http_cleanup. 16559 (cleanup): opt.user_headers is now a vector, free it with 16560 free_vec. 16561 16562 * src/http.c (gethttp): Make sure to free the request data, the status 16563 message, and the response data before returning from the function. 16564 (save_cookies): New function. 16565 (http_cleanup): Free the cookie jar here. 16566 16567 * src/hash.c: Renamed string_hash to hash_string and ptrhash to 16568 hash_pointer. Exported hash_pointer. 16569 16570 * src/xmalloc.c: Organized malloc_table (previously malloc_debug) as a 16571 simple EQ hash table. register_ptr and unregister_ptr are now of 16572 O(1) complexity. 16573 16574 * src/xmalloc.c: Renamed "*_debug" to debugging_* and "*_real" to 16575 checking_*. 16576 165772005-03-18 Hrvoje Niksic <hniksic@xemacs.org> 16578 16579 * src/init.c (cmd_file): Use concat_strings. 16580 16581 * src/http.c (basic_authentication_encode): Use concat_strings. 16582 16583 * src/ftp-ls.c (ftp_index): Use concat_strings. 16584 16585 * src/ftp-basic.c (ftp_request): Use concat_strings. 16586 16587 * src/utils.c (concat_strings): New function. 16588 165892005-03-17 Hrvoje Niksic <hniksic@xemacs.org> 16590 16591 * src/ftp-basic.c (ftp_login): Don't free the string if ftp_response 16592 returned an error status because the line didn't get allocated in 16593 the first place. 16594 165952005-03-15 Hrvoje Niksic <hniksic@xemacs.org> 16596 16597 * src/retr.c (fd_read_body): Undo the 2004-11-18 change. Instead, 16598 always be "exact". 16599 166002005-03-15 Hrvoje Niksic <hniksic@xemacs.org> 16601 16602 * src/http.c (read_http_response_head): Limit the response size to 64k 16603 bytes. 16604 16605 * src/retr.c (fd_read_hunk): Accept a MAXSIZE argument that limits the 16606 number of bytes the function is allowed to allocate. 16607 (fd_read_line): Limit the line to 4096 bytes. 16608 166092005-03-12 Hrvoje Niksic <hniksic@xemacs.org> 16610 16611 * src/wget.h: Include options.h after wgint has been defined. 16612 16613 * src/options.h (struct options): Declare options processed with 16614 cmd_bytes as wgint, not long. 16615 166162005-03-12 Hrvoje Niksic <hniksic@xemacs.org> 16617 16618 * src/utils.c (debug_test_md5): Moved to gen-md5.c. 16619 16620 * src/mswindows.h: Don't declare inet_ntop, since we don't use it. 16621 16622 * src/mswindows.h: For consistency, also wrap closesocket, it being 16623 a Winsock call. 16624 16625 * src/mswindows.h: Don't declare sleep and usleep; we're defining 16626 xsleep now. 16627 16628 * src/mswindows.h (mkdir): Don't special-case Borland C, _mkdir 16629 works there as well. 16630 16631 * src/host.c: Don't include winsock header files; the correct ones 16632 are already included by mswindows.h. 16633 16634 * src/mswindows.c (xsleep): Round toward the nearest millisecond 16635 in an attempt to avoid average short sleeps. 16636 16637 * src/utils.c (wtimer_granularity): Report correct values for 16638 Windows timers and for high-resolution timers. 16639 16640 * src/utils.c (wtimer_initialize_once): New function, called to 16641 initialize the timer frequency. 16642 16643 * src/utils.c: Replace the use of GetSystemTime with high-resolution 16644 counters under Windows. When high-resolution counters are 16645 unavailable, use GetTickCount(). 16646 166472005-03-12 Hrvoje Niksic <hniksic@xemacs.org> 16648 16649 * src/init.c (simple_atof): Handle negative numbers; skip whitespace 16650 before the number. 16651 (simple_atoi): Ditto. Also, check for overflow and underflow. 16652 (cmd_number): Bail out on negative numbers. 16653 (parse_bytes_helper): Ditto. 16654 166552005-03-06 Hrvoje Niksic <hniksic@xemacs.org> 16656 16657 * windows/Makefile.src.bor: Reenable warnings under Borland C, 16658 disabling only specific warnings. Generate Pentium Pro code by 16659 default. 16660 166612005-03-06 Hrvoje Niksic <hniksic@xemacs.org> 16662 16663 * src/utils.c (read_file): Don't use wgint for file size; LFS won't 16664 work since the file is mmap'ed as a whole. 16665 16666 * src/options.h: Don't include stdio.h. 16667 16668 * src/log.c: Ditto. 16669 16670 * src/init.c: Disambiguate assignment from non-zero test to avoid 16671 Borland C warning. 16672 16673 * src/http.c (response_new): Don't needlessly post-increment count. 16674 16675 * src/hash.c: Include stdio.h. 16676 16677 * src/gnu-md5.h: Don't include stdio.h. 16678 16679 * src/getopt.h (struct option): Always use const. 16680 16681 * src/ftp.c (getftp): Avoid unnecessary assignment to RES to avoid 16682 Borland C warning. 16683 16684 * src/ftp-ls.c: Disambiguate assignment from non-zero test to avoid 16685 Borland C warning. 16686 16687 * src/cmpt.c (strptime_internal): Don't initialize rp_backup when 16688 !_NL_CURRENT to avoid Borland C warning. 16689 166902005-03-06 Hrvoje Niksic <hniksic@xemacs.org> 16691 16692 * src/utils.c (fopen_excl): Fix parse error when O_BINARY is 16693 available. 16694 166952005-03-06 Hrvoje Niksic <hniksic@xemacs.org> 16696 16697 * src/url.c (url_parse): Reject port numbers larger than 65535. We 16698 also check for overflow while parsing port numbers. 16699 167002005-03-06 Hrvoje Niksic <hniksic@xemacs.org> 16701 16702 * src/mswindows.c: Provide wrappers to Winsock functions that set 16703 errno to WSAGetLastError() in case of failure. Also provide a 16704 Windows-specific version of strerror. 16705 16706 * src/mswindows.h: Wrap calls to socket, bind, connect, recv, send, 16707 select, getsockname, getpeername, and setsockopt. 16708 167092005-03-06 Hrvoje Niksic <hniksic@xemacs.org> 16710 16711 * src/init.c (defaults): Use passive FTP by default. 16712 167132005-03-06 Hrvoje Niksic <hniksic@xemacs.org> 16714 16715 * src/http.c (gethttp): Handle multiple Set-Cookie headers sent by 16716 remote server. 16717 167182005-03-05 Hrvoje Niksic <hniksic@xemacs.org> 16719 16720 * src/url.c (url_file_name): Don't allow hosts named ".." to be 16721 appended as path elements. 16722 167232005-03-03 Hrvoje Niksic <hniksic@xemacs.org> 16724 16725 * src/retr.c (retrieve_url): Escape location header. 16726 16727 * src/http.c (print_server_response_1): Escape server response when 16728 printing it. 16729 (gethttp): Escape host name, status message, location header, and 16730 content type. 16731 (http_loop): Escape error message from server. 16732 16733 * src/host.c (lookup_host): Escape host name when printing it. 16734 16735 * src/ftp.c (getftp): Escape user name when printing it. 16736 (getftp): Escape remote file and directory for printing. 16737 (getftp): Escape server listing when printing it. 16738 (ftp_retrieve_list): Escape link name and file name. 16739 (ftp_retrieve_glob): Escape file name. 16740 16741 * src/ftp-basic.c (ftp_response): Escape server response when printing 16742 it. 16743 16744 * src/cookies.c (parse_set_cookies): Escape the cookie field when 16745 printing it. 16746 (parse_set_cookies): Escape contents of remote header. 16747 (cookie_handle_set_cookie): Escape host name and cookie domain. 16748 16749 * src/connect.c (connect_to_ip): Escape the host name. 16750 16751 * src/log.c (escnonprint): New function, used for printing strings 16752 coming from the server that possibly contain non-ASCII characters. 16753 (escnonprint_uri): Ditto. 16754 167552005-02-26 Hrvoje Niksic <hniksic@xemacs.org> 16756 16757 * src/utils.c: Use the nnnI64 syntax for __int64 constants under all 16758 Windows compilers. 16759 (SPRINTF_WGINT): Use "%I64" under all Windows compilers. 16760 16761 * src/mswindows.h (WGINT_MAX): Use the nnnI64 syntax for 16762 __int64 constants under all Windows compilers. 16763 (struct_stat): Use `struct stati64' under Borland C. 16764 (fstat): Don't redefine to _fstati64 under Borland. 16765 16766 * src/mswindows.c: Define str_to_int64 under Borland C as well as 16767 under (older) Visual C. 16768 167692005-02-26 Gisle Vanem <giva@bgnett.no> 16770 16771 * src/utils.c: Use the nnnLL syntax under GCC. Define struct_stat to 16772 struct _stati64 under __MINGW32__ as well as under MS VC. 16773 167742005-02-25 Hrvoje Niksic <hniksic@xemacs.org> 16775 16776 * src/ftp.c (getftp): Initialize err to suppress compiler warning. 16777 167782005-02-24 Hrvoje Niksic <hniksic@xemacs.org> 16779 16780 * src/mswindows.c (wget_ftello): Removed. 16781 16782 * src/mswindows.h: Remove bogus definition of stat. 16783 (wget_ftello): Remove the leftover ftello replacement. 16784 167852005-02-24 Hrvoje Niksic <hniksic@xemacs.org> 16786 16787 * src/host.c (lookup_host): Test for AI_ADDRCONFIG directly, instead 16788 of checking for HAVE_GETADDRINFO_AI_ADDRCONFIG. 16789 167902005-02-24 Hrvoje Niksic <hniksic@xemacs.org> 16791 16792 * src/ftp.c (getftp): Ditto. 16793 16794 * src/http.c (gethttp): When we're not supposed to overwrite files, 16795 use fopen_excl to open the file and recompute the file name. 16796 16797 * src/log.c (redirect_output): Use unique_create to avoid a race 16798 condition. 16799 16800 * src/mswindows.c (fake_fork_child): Use unique_create. 16801 16802 * src/utils.c (fopen_excl): New function that opens a stdio stream 16803 with the O_EXCL flag (where available). 16804 (unique_create): New function, like unique_name, but also creating 16805 the file and returning a file pointer. 16806 (fork_to_background): Use unique_create to create the file 16807 immediately to avoid race condition with multiple instances of 16808 wget -b. 16809 168102005-02-24 Hrvoje Niksic <hniksic@xemacs.org> 16811 16812 * src/ftp.c (ftp_expected_bytes): Fix bug that caused infloop because 16813 of not correctly skipping the '(' character. 16814 168152005-02-23 Hrvoje Niksic <hniksic@xemacs.org> 16816 16817 * src/host.c (is_valid_ipv6_address): Move here from url.c. 16818 (lookup_host): If the address is numeric, don't print the 16819 "resolving..." line, don't set up DNS timeouts, and set the 16820 AI_NUMERICHOST hint, where available. 16821 168222005-02-20 Hrvoje Niksic <hniksic@xemacs.org> 16823 16824 * src/mswindows.c (wget_ftello): Wget's replacement for ftello. 16825 16826 * src/utils.c (file_size): Use ftello where available. 16827 16828 * src/ftp-ls.c (ftp_parse_unix_ls): Use str_to_wgint to parse the file 16829 size. 16830 (ftp_parse_winnt_ls): Ditto. 16831 16832 * src/ftp-basic.c (ftp_size): Use str_to_wgint to convert number to 16833 wgint; pass 10 instead of 0 as the BASE argument. 16834 16835 * src/ftp.c (ftp_expected_bytes): Use str_to_wgint to parse the file 16836 size. 16837 16838 * src/sysdep.h (LARGE_INT_FMT): Use __int64 as LARGE_INT on 16839 MSVC/Windows; print it with "%I64". 16840 16841 * src/wget.h: Define a `wgint' type, normally aliased to (the possibly 16842 64-bit variant of) off_t. 16843 16844 * src/all: Use `wgint' instead of `long' for numeric variables that 16845 can hold file sizes. 16846 16847 * src/utils.c (number_to_string): Support printing of `wgint' 16848 argument. 16849 (number_to_static_string): New function. 16850 16851 * src/all: Replace printf("%ld", long_value) with printf("%s", 16852 number_to_static_string(wgint_value)). 16853 168542005-02-20 Hrvoje Niksic <hniksic@xemacs.org> 16855 16856 * configure.in: Check for LFS. Determine SIZEOF_OFF_T. 16857 Check for ftello. 16858 168592005-02-18 Mauro Tortonesi <mauro@ferrara.linux.it> 16860 16861 * src/main.c: Added the --ftp-passwd command line option. 16862 16863 * src/init.c: Renamed command passwd to ftppasswd. 16864 168652005-02-18 Marco Colombo <m.colombo@ed.ac.uk> 16866 16867 * po/it.po: Updated Italian translation. 16868 168692005-02-11 Mauro Tortonesi <mauro@ferrara.linux.it> 16870 16871 * src/string_t.c: Fixed a bug in do_escape and triggered escape of 16872 backslashes in string_escape to avoid ambiguities in the result 16873 string. 16874 168752005-02-11 Mauro Tortonesi <mauro@ferrara.linux.it> 16876 16877 * doc/wget.texi: Added Simone Piunno as new contributor. 16878 168792005-02-10 Mauro Tortonesi <mauro@ferrara.linux.it> 16880 16881 * src/string.h: Renamed to string_t.h to fix a compilation conflict 16882 with the string.h header in the standard C library. 16883 16884 * src/string.c: Renamed to string_t.c for consistency with string.h. 16885 16886 * src/string_t.c: Ditto. 16887 16888 * src/string_t.h: Ditto. 16889 168902005-01-01 Mauro Tortonesi <mauro@ferrara.linux.it> 16891 16892 * doc/wget.texi: Updated copyright information, added new contributors. 16893 168942004-12-31 Mauro Tortonesi <mauro@ferrara.linux.it> 16895 16896 * src/string.c: New file. 16897 16898 * src/string.h: New file. 16899 16900 * src/Makefile.in: Added string.c to the list of modules to compile. 16901 16902 * src/main.c: Updated copyright. 16903 169042004-11-20 Hans-Andreas Engel <engel@node.ch> 16905 16906 * doc/wget.texi: Describe limitations of combining `-O' with `-k'. 16907 169082004-11-18 Ulf Harnhammar <ulf.harnhammar.9485@student.uu.se> 16909 16910 * src/ftp-ls.c: Fixed a problem in ftp_parse_winnt_ls that could allow a 16911 malicious remote FTP server to crash wget. 16912 169132004-11-18 Mauro Tortonesi <mauro@deepspace6.net> 16914 16915 * src/connect.c: Minor correction to the comment in front of fd_peek. 16916 169172004-11-18 Leonid Petrov <nouser@lpetrov.net> 16918 16919 * src/retr.c: Fix a timeout problem in fd_read_body when using http_proxy. 16920 169212004-11-18 Hans-Andreas Engel <engel@node.ch> 16922 16923 * src/http.c: Enable --convert-links (-k) when a single page is downloaded 16924 via --output-document (-O). 16925 169262004-11-15 YAMAZAKI Makoto <Yamazaki.Makoto@fujixerox.co.jp> 16927 16928 * src/netrc.c: Fix termination by assertion bug in netrc parsing. 16929 169302004-06-12 Larry Jones <lawrence.jones@ugsplm.com> 16931 16932 * src/recur.c (download_child_p): Correct the logic in check number 6: 16933 test opt.reclevel (not DEPTH) against INFINITE_RECURSION. 16934 169352004-05-13 Nico R. <n-roeser@gmx.net> 16936 16937 * doc/Makefile.in: Allow building in a separate tree with source tree 16938 write-protected. 16939 169402004-05-09 David Fritz <zeroxdf@att.net> 16941 16942 * windows/Makefile.src.bor: Fix broken build rule. Add clean target. 16943 16944 * windows/Makefile.top.bor: Use tabs instead of spaces. Ignore 16945 errors in clean rules. Use lowercase filenames when building 16946 distribution .zip archive. 16947 16948 * windows/config.h.bor: Don't define HAVE_UINT32_T. 16949 16950 * windows/Makefile.doc: Fix remaining instance of build rules 16951 indented with spaces instead of tabs. 16952 16953 * windows/Makefile.src: Update copyright year. 16954 16955 * windows/Makefile.top: Update copyright year. 16956 16957 * windows/config.h.mingw (WGET_USE_STDARG, HAVE_SIG_ATOMIC_T): Define. 16958 16959 * windows/config.h.ms (HAVE_STRPBRK, HAVE_LIMITS_H) 16960 (HAVE_LOCALE_H): Define. 16961 16962 * windows/Makefile.watcom: Add /I. to CFLAGS. Remove reference to 16963 specific Wget version from linker flags. Add missing 16964 dependencies. 16965 169662004-05-09 David Fritz <zeroxdf@att.net> 16967 16968 * src/mswindows.c (fake_fork): Pass entire command line to the child 16969 process. 16970 169712004-03-31 Hrvoje Niksic <hniksic@xemacs.org> 16972 16973 * src/http.c (gethttp): Fix typo: SCHEME_SSL -> SCHEME_HTTPS. 16974 169752004-03-30 Hrvoje Niksic <hniksic@xemacs.org> 16976 16977 * src/http.c (gethttp): Send the Proxy-Authorization header over 16978 non-SSL connections too. 16979 169802004-03-25 David Fritz <zeroxdf@att.net> 16981 16982 * src/mswindows.c (fake_fork_child): Ignore error code when 16983 OpenFileMapping() fails; assume it failed because the object does 16984 not exist. 16985 169862004-03-24 David Fritz <zeroxdf@att.net> 16987 16988 * src/mswindows.c (fake_fork): New function. 16989 16990 * src/mswindows.c (fork_to_background): Use it. 16991 169922004-03-19 Hrvoje Niksic <hniksic@xemacs.org> 16993 16994 * src/url.c (url_parse): Decode %HH sequences in host name. 16995 169962004-03-19 David Fritz <zeroxdf@att.net> 16997 16998 * src/mswindows.c (ws_hangup): Incorporate old fork_to_background() 16999 code. Add event name argument. 17000 (fork_to_backgorund): Now a simple wrapper around ws_hangup(). 17001 (ws_handler): Correctly handle the case when neither CTRLC_BACKGND 17002 nor CTRLBREAK_BACKGND are defined. Don't bother handling close, 17003 logoff, or shutdown events. Call ws_hangup() with the correct 17004 event name; don't assume it was CTRL+Break. 17005 170062004-03-04 Hrvoje Niksic <hniksic@xemacs.org> 17007 17008 * src/convert.c (local_quote_string): Quote "#" as "%23" and "%" as 17009 "%25" when creating links to local files. 17010 170112004-03-04 Gisle Vanem <giva@bgnett.no> 17012 17013 * src/retr.c (fd_read_body): Don't change console title if quiet. 17014 170152004-03-02 David Fritz <zeroxdf@att.net> 17016 17017 * src/mswindows.c (ws_percenttitle): Guard against future changes by 17018 doing nothing if the proper variables have not been initialized. 17019 Clamp percentage value. 17020 170212004-02-25 David Fritz <zeroxdf@att.net> 17022 17023 * src/mswindows.c (set_sleep_mode): Remove argument and return value. 17024 Call GetModuleHandle() instead of LoadLibrary()/FreeLibrary() for 17025 kernel32.dll. Use typedef for function-pointer. Don't cast 17026 l-value. Don't use dereference operator when calling through 17027 function-pointer. 17028 (ws_startup): Update call to set_sleep_mode(). 17029 (ws_cleanup): Remove call to set_sleep_mode(). 17030 170312004-02-23 David Fritz <zeroxdf@att.net> 17032 17033 * src/mswindows.h: Ditto. 17034 17035 * src/mswindows.c: Misc. formatting/comment tweaks throughout. 17036 170372004-02-23 David Fritz <zeroxdf@att.net> 17038 17039 * src/http.c (http_loop): Ditto. 17040 17041 * src/ftp.c (ftp_loop_internal): Update call to ws_changetitle(). 17042 17043 * src/main.c (main): Don't bother calling ws_changetitle(). 17044 17045 * src/mswindows.h (ws_changetitle): Update prototype. 17046 17047 * src/mswindows.c (ws_changetitle): Remove second argument. Use 17048 xfree_null(). 17049 (ws_percenttitle): Only update title when percentage has changed. 17050 170512004-02-22 Hrvoje Niksic <hniksic@xemacs.org> 17052 17053 * doc/wget.texi (Contributors): Updated. 17054 170552004-02-20 David Fritz <zeroxdf@att.net> 17056 17057 * src/main.c (print_help): Remove call to ws_help(). 17058 17059 * src/mswindows.c (ws_help): Remove. 17060 17061 * src/mswindows.h (ws_help): Remove. 17062 170632004-02-16 David Fritz <zeroxdf@att.net> 17064 17065 * src/init.c (home_dir): Use aprintf() instead of xmalloc()/sprintf(). 17066 Under Windows, if $HOME is not defined, use the directory that 17067 contains the Wget binary instead of hard-coded `C:\'. 17068 (wgetrc_file_name): Under Windows, look for $HOME/.wgetrc then, if 17069 not found, look for wget.ini in the directory of the Wget binary. 17070 17071 * src/mswindows.c (ws_mypath): Employ slightly more robust methodology. 17072 Strip trailing path separator. 17073 170742004-02-12 Jens Roesner <jens.roesner@gmx.de> 17075 17076 * doc/wget.texi (Wgetrc Commands): Document `-e' here. 17077 170782004-02-09 David Fritz <zeroxdf@att.net> 17079 17080 * configure.bat.in: Don't clear the screen. 17081 17082 * windows/README: Add introductory paragraph. Re-word a few 17083 sentences. Correct minor typographical errors. Use consistent 17084 capitalization of Wget, SSL, and OpenSSL. Refer to Microsoft 17085 Visual C++ as MSVC instead of VC++. Mention the --msvc option to 17086 configure.bat. Reflow paragraphs. 17087 17088 * windows/Makefile.top: Use tabs instead of spaces. Ignore errors 17089 in clean rules. Use lowercase filenames when building distribution 17090 .zip archive. 17091 17092 * windows/Makefile.doc: Use tabs instead of spaces. Ignore errors 17093 in clean rules. 17094 17095 * windows/Makefile.src: Clean-up clean rules. Use tabs instead of 17096 spaces. Link against gdi32.lib. Don't define SYSTEM_WGETRC. 17097 Remove unused macros. Remove anachronistic and superfluous linker 17098 flags. Don't rename wget.exe to all upper-case. Add 17099 `preprocessor' conditionals for SSL and newer MSVC options. Use 17100 batch rules. Don't suppress all warnings. 17101 171022004-02-08 Hrvoje Niksic <hniksic@xemacs.org> 17103 17104 * doc/wget.texi (Security Considerations): Put @item contents on a 17105 separate line. 17106 Reported by Ted Rodriguez-Bell. 17107 171082004-02-06 Hrvoje Niksic <hniksic@xemacs.org> 17109 17110 * src/http.c (gethttp): Respect --ignore-length. 17111 (gethttp): Inhibit keep-alive if --ignore-length is specified. 17112 171132004-02-06 Hrvoje Niksic <hniksic@xemacs.org> 17114 17115 * src/connect.c (sockaddr_set_data): Zero out 17116 sockaddr_in/sockaddr_in6. Apparently BSD-derived stacks need this 17117 when binding a socket to local address. 17118 171192004-02-06 Hrvoje Niksic <hniksic@xemacs.org> 17120 17121 * doc/wget.texi (Wgetrc Commands): Document --no-http-keep-alive and 17122 the corresponding Wgetrc command. 17123 171242004-02-04 Hrvoje Niksic <hniksic@xemacs.org> 17125 17126 * src/hash.c: Make the file compilable outside Wget source tree when 17127 -DSTANDALONE is used. 17128 171292004-01-29 Hrvoje Niksic <hniksic@xemacs.org> 17130 17131 * src/utils.c (determine_screen_width): Return 0 if not running on 17132 Windows or on a TIOCGWINSZ-capable system. 17133 171342004-01-28 David Fritz <zeroxdf@att.net> 17135 17136 * src/utils.c (determine_screen_width): Correctly determine console 17137 width under Windows. 17138 171392004-01-28 Christian Biere <christianbiere@gmx.de> 17140 17141 * src/progress.c (bar_set_params): Fixed syntax error when HAVE_ISATTY 17142 was undefined. 17143 17144 * src/ftp.c (ftp_loop_internal): Allocate a larger buffer in case 17145 "try" gets translated to something large. Ditto in http_loop in 17146 http.c. 17147 17148 * src/http.c (response_header_copy): Don't write to buf[BUFSIZE]. 17149 17150 * src/ftp-opie.c (skey_response): Eliminate unnecessary string 17151 concatenation; just call gen_md5_update twice. 17152 171532004-01-25 Hrvoje Niksic <hniksic@xemacs.org> 17154 17155 * src/utils.c (xsleep): Don't call usleep with values larger than 17156 1,000,000. 17157 171582003-12-16 Hrvoje Niksic <hniksic@xemacs.org> 17159 17160 * src/http.c (gethttp): Fix generation of `Content-Length'. 17161 171622003-12-15 Gisle Vanem <giva@bgnett.no> 17163 17164 * src/url.c (url_skip_credentials): Fixed return value; 'url' if no 17165 credentials. 17166 171672003-12-14 Hrvoje Niksic <hniksic@xemacs.org> 17168 17169 * src/url.c (url_skip_credentials): Return a pointer directly. 17170 171712003-12-14 Hrvoje Niksic <hniksic@xemacs.org> 17172 17173 * src/url.c (url_file_name): Ditto. 17174 (parse_errors): Ditto. 17175 17176 * src/retr.c (retr_rate): Ditto. 17177 17178 * src/progress.c (create_image): Ditto. 17179 17180 * src/netrc.c (parse_netrc): Ditto. 17181 17182 * src/main.c (struct cmdline_option): Ditto. 17183 (redirect_output_signal): Ditto. 17184 17185 * src/init.c (commands): Ditto. 17186 17187 * src/ftp-ls.c (ftp_index): Ditto. 17188 17189 * src/cookies.c (check_domain_match): Declare the pointer to a literal 17190 string as `const'. 17191 171922003-12-12 Hrvoje Niksic <hniksic@xemacs.org> 17193 17194 * src/retr.c (fd_read_body): Pass total size to progress_create, not 17195 the remaining amount. 17196 171972003-12-12 Hrvoje Niksic <hniksic@xemacs.org> 17198 17199 * src/retr.c (fd_read_body): Don't fiddle with "interactive timeout" 17200 if read timeout is unset. 17201 172022003-12-12 Hrvoje Niksic <hniksic@xemacs.org> 17203 17204 * src/connect.c (bind_local): Don't set the IPV6_V6ONLY option on the 17205 socket. 17206 172072003-12-06 Hrvoje Niksic <hniksic@xemacs.org> 17208 17209 * src/url.c (url_file_name): Respect the setting of 17210 opt.protocol_directories. 17211 17212 * src/main.c (main): Only check for ret=='?' when longindex is unset. 17213 (option_data): New option --protocol-directories. 17214 172152003-12-06 Hrvoje Niksic <hniksic@xemacs.org> 17216 17217 * src/ftp.c (getftp): Ditto. 17218 17219 * src/http.c (gethttp): Correctly calculate bandwidth as total data 17220 read divided with download time. 17221 17222 * src/retr.c (fd_read_body): Separate the return values for data 17223 written and read. 17224 172252003-12-06 Hrvoje Niksic <hniksic@xemacs.org> 17226 17227 * doc/wget.texi: Document the new option `--protocol-directories'. 17228 172292003-12-06 Hrvoje Niksic <hniksic@xemacs.org> 17230 17231 * doc/wget.texi (Download Options): Don't incorrectly claim that `-O' 17232 sets the number of retries to 1. 17233 172342003-12-05 Hrvoje Niksic <hniksic@xemacs.org> 17235 17236 * src/http.c (H_REDIRECTED): Respect the HTTP/1.1 "303 See Other" 17237 response code. 17238 Suggested by Dan Razzell. 17239 172402003-11-30 Hrvoje Niksic <hniksic@xemacs.org> 17241 17242 * src/retr.c (fd_read_body): Sanitize arguments and document them 17243 better. Make sure the timer is created and updated only if 17244 necessary. Updated callers. 17245 172462003-11-30 Hrvoje Niksic <hniksic@xemacs.org> 17247 17248 * src/retr.c (fd_read_body): Report the amount of data *written* as 17249 amount_read. This is not entirely logical, but that's what the 17250 callers expect, and it's not easy to change. 17251 17252 * src/ftp.c (ftp_loop_internal): Ditto. 17253 17254 * src/http.c (http_loop): Be smarter about assigning restval; if we're 17255 in the nth pass of a download, simply use the information we have 17256 about how much data has been retrieved as restval. 17257 17258 * src/ftp.c (getftp): Ditto for FTP "REST" command. 17259 17260 * src/http.c (gethttp): When the server doesn't respect range, skip 17261 the first RESTVAL bytes of the read body. Never truncate the 17262 output file. 17263 17264 * src/retr.c (fd_read_body): Support skipping initial STARTPOS octets. 17265 172662003-11-30 Hrvoje Niksic <hniksic@xemacs.org> 17267 17268 * src/http.c (skip_short_body): Renamed skip_body to skip_short_body; 17269 don't bother calling fd_read_body. 17270 172712003-11-30 Hrvoje Niksic <hniksic@xemacs.org> 17272 17273 * src/http.c (skip_body): New function. 17274 (gethttp): Use it to skip the body of the responses we don't care 17275 to download. That allows us to reuse the connection. 17276 (gethttp): Trust that the HEAD requests will not generate body 17277 data. 17278 17279 * src/retr.c (fd_read_body): Don't write to OUT if it's NULL. 17280 172812003-11-29 Hrvoje Niksic <hniksic@xemacs.org> 17282 17283 * src/http.c (gethttp): Initialize SSL only the first time when SSL 17284 URL is downloaded. 17285 172862003-11-29 Hrvoje Niksic <hniksic@xemacs.org> 17287 17288 * src/cookies.c (cookie_header): Only generate the contents of the 17289 header, not the leading "Cookie: " or the trailing "\r\n". 17290 17291 * src/http.c (gethttp): When adding headers specified with `--header', 17292 allow them to override the headers generated by Wget. 17293 17294 * src/init.c (cmd_spec_header): Made opt.user_headers a vector. 17295 17296 * src/http.c (request_new): New function. Returns a request structure 17297 which can be modified in various ways, most notably by adding HTTP 17298 headers to the request. 17299 (request_set_header): New function for adding the header to the 17300 request. If the header is already available, it gets replaced. 17301 (request_send): Construct and send the request. 17302 (gethttp): Use the request_* functions to generate the request. 17303 173042003-11-28 Hrvoje Niksic <hniksic@xemacs.org> 17305 17306 * src/init.c: Don't #include netinet/Winsock stuff. 17307 173082003-11-28 Hrvoje Niksic <hniksic@xemacs.org> 17309 17310 * src/http.c: Deleted the old functions header_process, 17311 header_extract_number, header_exists, header_strdup, 17312 http_process_range, http_process_none, http_process_type, and 17313 http_process_connection. 17314 17315 * src/http.c (response_new): New function. 17316 (response_header_bounds): Ditto. 17317 (response_header_copy): Ditto. 17318 (response_header_strdup): Ditto. 17319 (response_status): Ditto. 17320 (gethttp): Use the new response_* functions to parse the response. 17321 Support HTTP/0.9 responses. 17322 173232003-11-28 Hrvoje Niksic <hniksic@xemacs.org> 17324 17325 * src/http.c (gethttp): Use the CONNECT handle to establish SSL 17326 passthrough through non-SSL proxies. 17327 173282003-11-28 Hrvoje Niksic <hniksic@xemacs.org> 17329 17330 * src/http.c (gethttp): Don't include the Proxy-Authorization header 17331 in the request tunneled through proxy. 17332 173332003-11-27 Hrvoje Niksic <hniksic@xemacs.org> 17334 17335 * src/progress.c (create_image): Don't calculate ETA if nothing has 17336 been downloaded yet, because it causes division by zero. 17337 173382003-11-27 Hrvoje Niksic <hniksic@xemacs.org> 17339 17340 * src/connect.c (bind_local): Rename sa_len to addrlen because IRIX 17341 headers define sa_len as a macro. 17342 173432003-11-26 Hrvoje Niksic <hniksic@xemacs.org> 17344 17345 * src/html-parse.c (convert_and_copy): Remove embedded newlines when 17346 AP_TRIM_BLANKS is specified. 17347 173482003-11-26 Hrvoje Niksic <hniksic@xemacs.org> 17349 17350 * src/ftp.c: Set con->csock to -1 where rbuf_uninitialize was 17351 previously used. 17352 173532003-11-26 Hrvoje Niksic <hniksic@xemacs.org> 17354 17355 * src/Makefile.in (http$o): Added the trailing backslash that was 17356 missing. 17357 173582003-11-26 Hrvoje Niksic <hniksic@xemacs.org> 17359 17360 * aclocal.m4: Don't check for AI_V4MAPPED and for AI_ALL, since 17361 Wget doesn't need them. 17362 17363 * configure.in: Check for struct sockaddr_storage. 17364 173652003-11-21 Hrvoje Niksic <hniksic@xemacs.org> 17366 17367 * src/rbuf.c: Removed. 17368 17369 * src/ftp-basic.c (ftp_response): Use fd_read_line. No longer use 17370 struct rbuf. Updated all callers. 17371 17372 * src/http.c (gethttp): Use fd_read_head to read all the headers in 17373 one go. 17374 (next_header): New function. 17375 17376 * src/retr.c (fd_read_line): New function: reads a line from FD, 17377 leaving the rest of the data unread. 17378 (fd_read_head): New function. 17379 17380 * src/connect.c (fd_peek): New function, implements peeking. 17381 (poll_internal): New function. 17382 (fd_read): Use it. 17383 (fd_write): Ditto. 17384 (fd_peek): Ditto. 17385 (fd_register_transport): Allow registering a "peeker" callback. 17386 173872003-11-21 Hrvoje Niksic <hniksic@xemacs.org> 17388 17389 * src/headers.c: Removed. The file is no longer relevant, now that no 17390 special handling of headers is done by the rbuf code. Moved 17391 portions to http.c. 17392 173932003-11-20 Hrvoje Niksic <hniksic@xemacs.org> 17394 17395 * src/connect.c: Renamed xread/xwrite/xclose to 17396 fd_read/fd_write/fd_close. The "x" prefix is not appropriate 17397 because the semantics have diverged from read/write/close too 17398 significantly. Updated all callers. 17399 174002003-11-20 Hrvoje Niksic <hniksic@xemacs.org> 17401 17402 * src/connect.c (sock_write): It's not necessary to initialize RES. 17403 174042003-11-19 Hrvoje Niksic <hniksic@xemacs.org> 17405 17406 * src/main.c (main): Don't reference opt.ipv4_only and opt.ipv6_only 17407 if IPv6 is disabled. 17408 174092003-11-19 Hrvoje Niksic <hniksic@xemacs.org> 17410 17411 * src/connect.c (socket_has_inet6): Only compile it if IPv6 is enabled 17412 and AI_ADDRCONFIG is missing. 17413 174142003-11-18 Hrvoje Niksic <hniksic@xemacs.org> 17415 17416 * src/host.c (address_list_contains): Renamed address_list_find to 17417 address_list_contains because its result is boolean. 17418 174192003-11-18 Hrvoje Niksic <hniksic@xemacs.org> 17420 17421 * src/gen_sslfunc.c (ssl_init_prng): Warn the user when using a weak 17422 random seed. 17423 174242003-11-18 Hrvoje Niksic <hniksic@xemacs.org> 17425 17426 * src/connect.c (select_fd): Return 1 if select is not available. 17427 174282003-11-17 Hrvoje Niksic <hniksic@xemacs.org> 17429 17430 * src/main.c (print_help): Fix alignment of FTP options output. 17431 174322003-11-17 Hrvoje Niksic <hniksic@xemacs.org> 17433 17434 * src/host.c (lookup_host): Check for the ability to create IPv6 17435 sockets here. 17436 17437 * src/init.c (defaults): Don't auto-set --inet4-only on IPv6-less 17438 systems. 17439 174402003-11-17 Hrvoje Niksic <hniksic@xemacs.org> 17441 17442 * src/connect.c (connect_to_host): Don't reference address list after 17443 releasing it. 17444 174452003-11-16 Hrvoje Niksic <hniksic@xemacs.org> 17446 17447 * src/main.c (print_help): Fix typo in `-O' help message. Fix docs of 17448 -Y/--proxy. Fix docs of `--cookies' and `--glob'. Improve docs 17449 of --convert-links. Fix docs of SSL options. 17450 174512003-11-16 Hrvoje Niksic <hniksic@xemacs.org> 17452 17453 * src/main.c (main): Don't allow setting of both opt.ipv4_only and 17454 opt.ipv6_only. 17455 17456 * src/init.c (defaults): Mark opt.ipv4_only specially when set 17457 automatically. 17458 174592003-11-16 Hrvoje Niksic <hniksic@xemacs.org> 17460 17461 * src/ftp-basic.c: Don't include <arpa/inet.h> and others because 17462 they're no longer needed. 17463 174642003-11-15 Hrvoje Niksic <hniksic@xemacs.org> 17465 17466 * src/init.c: Make sure the options are in alphabetic order! 17467 17468 * src/host.c (lookup_host): Merge lookup_host_passive and lookup_host 17469 after all -- having both would result in some code duplication. 17470 (lookup_host): Set hints.ai_family to AF_INET if ipv4_only is 17471 requested. Likewise, set it to AF_INET6 for ipv6_only. Specify 17472 AI_ADDRCONFIG where available. 17473 (lookup_host): New flag LH_REFRESH that specifies that a cached 17474 entry for HOST should be refreshed. 17475 (cache_query): New function. 17476 (cache_store): Ditto. 17477 (cache_remove): Ditto. 17478 (forget_host_lookup): No longer necessary, replaced with static 17479 function cache_remove. 17480 174812003-11-15 Hrvoje Niksic <hniksic@xemacs.org> 17482 17483 * src/http.c (persistent_available_p): Correctly specify the endpoint 17484 argument to socket_ip_address. 17485 (gethttp): When printing the "reusing connection to..." message, 17486 specify the host name of the reused connection, not the current 17487 host name. That makes more sense because it provides a useful 17488 piece of information -- we know to which host we're supposed to 17489 connect anyway! 17490 174912003-11-15 Hrvoje Niksic <hniksic@xemacs.org> 17492 17493 * src/host.c: Don't refer to the now-removed function 17494 forget_host_lookup in the documentation of lookup_host. 17495 174962003-11-15 Hrvoje Niksic <hniksic@xemacs.org> 17497 17498 * src/host.c (lookup_host): Use AI_ADDRCONFIG only if the family is 17499 unspecified. This ensures that specifying `--no-inet4' on systems 17500 where IPv6 resolves, but doesn't work behaves the same regardless 17501 of the availability of AI_ADDRCONFIG. 17502 175032003-11-15 Hrvoje Niksic <hniksic@xemacs.org> 17504 17505 * doc/wget.texi: Documented that --dont-remove-listing is now 17506 --no-remove-listing. 17507 175082003-11-15 Hrvoje Niksic <hniksic@xemacs.org> 17509 17510 * doc/wget.texi (Portability): Update slightly. 17511 175122003-11-14 Hrvoje Niksic <hniksic@xemacs.org> 17513 17514 * src/url.c (uri_merge): Merging "foo" and "bar" should result in 17515 "bar", not in "foo/bar". 17516 (path_simplify): Don't remove empty path elements; don't 17517 special-case leading slash. 17518 (path_simplify): Don't swallow ".."'s at the beginning of string. 17519 E.g. simplify "foo/../../bar" as "../bar", not as "bar". 17520 (append_uri_pathel): Defang ".." path element upon encountering 17521 it. 17522 175232003-11-14 Hrvoje Niksic <hniksic@xemacs.org> 17524 17525 * src/main.c: Enable -4 and -6 only if IPv6 is enabled. 17526 175272003-11-14 Hrvoje Niksic <hniksic@xemacs.org> 17528 17529 * src/connect.c (register_transport): Renamed from register_extended. 17530 Explain the intended usage. 17531 175322003-11-14 Hrvoje Niksic <hniksic@xemacs.org> 17533 17534 * doc/fdl.texi: New file. 17535 17536 * doc/wget.texi: Upgrade to GNU Free Documentation License 1.2. 17537 175382003-11-13 Hrvoje Niksic <hniksic@xemacs.org> 17539 17540 * src/wget.h (CONNECT_ERROR): Use it. 17541 17542 * src/connect.c (unsupported_socket_family_error): New function. 17543 175442003-11-13 Hrvoje Niksic <hniksic@xemacs.org> 17545 17546 * src/init.c (defaults): Turn on opt.ipv4_only if we're compiling with 17547 IPv6, and AI_ADDRINFO is not available, and AF_INET6 sockets can't 17548 be created. 17549 175502003-11-13 Hrvoje Niksic <hniksic@xemacs.org> 17551 17552 * src/http.c (persistent_available_p): Don't attempt to talk to two 17553 different SSL sites over the same secure connection. 17554 175552003-11-13 Hrvoje Niksic <hniksic@xemacs.org> 17556 17557 * src/http.c (gethttp): Ditto. 17558 17559 * src/ftp.c (getftp): Use retryable_socket_connect_error instead of 17560 CONNECT_ERROR. 17561 17562 * src/wget.h (CONNECT_ERROR): Removed. 17563 17564 * src/connect.c (retryable_socket_connect_error): New function instead 17565 of unsupported_socket_family_error. 17566 175672003-11-13 Hrvoje Niksic <hniksic@xemacs.org> 17568 17569 * src/host.c (lookup_host): Document the fact that the addresses are 17570 returned in order. 17571 175722003-11-13 Hrvoje Niksic <hniksic@xemacs.org> 17573 17574 * src/connect.c (bind_local): Renamed bindport to bind_local; return 17575 the socket directly. Updated callers. 17576 (accept_connection): Renamed acceptport to accept_connection; 17577 return the created socket directly. Updated callers. 17578 175792003-11-12 Hrvoje Niksic <hniksic@xemacs.org> 17580 17581 * src/utils.c: Use limits.h only where available. 17582 17583 * src/hash.c: Use INVALID_PTR and INVALID_PTR_BYTE. Include limits.h. 17584 175852003-11-12 Hrvoje Niksic <hniksic@xemacs.org> 17586 17587 * configure.in: Use a more standard checking message when checking 17588 for md5.h. 17589 175902003-11-12 Hrvoje Niksic <hniksic@xemacs.org> 17591 17592 * configure.in: Tweak ansi2knr test, use : instead of true. 17593 175942003-11-12 Hrvoje Niksic <hniksic@xemacs.org> 17595 17596 * configure.in: Check for limits.h. 17597 175982003-11-11 Hrvoje Niksic <hniksic@xemacs.org> 17599 17600 * src/main.c: Added options --inet4-only and --inet6-only. 17601 176022003-11-11 Hrvoje Niksic <hniksic@xemacs.org> 17603 17604 * src/host.c (host_errstr): Use the more standard message "Unknown 17605 host". 17606 176072003-11-10 Hrvoje Niksic <hniksic@xemacs.org> 17608 17609 * src/host.c (lookup_host): Special-case the numeric addresses only in 17610 the non-IPv6 case. 17611 176122003-11-10 Hrvoje Niksic <hniksic@xemacs.org> 17613 17614 * src/connect.c (resolve_bind_address): Call lookup_host_passive. 17615 Make sure that opt.bind_address is resolved only once. 17616 17617 * src/host.c (lookup_host_passive): New function, handles "passive" 17618 lookups. 17619 (lookup_host): Remove the passive flags. Remove the 17620 family-related flags -- use ip_default_family instead. 17621 176222003-11-10 Hrvoje Niksic <hniksic@xemacs.org> 17623 17624 * src/connect.c (connect_to_host): Use that flag to decide whether to 17625 re-resolve the host name. 17626 17627 * src/host.c (struct address_list): Added a flag that maintains 17628 whether the connection worked at some point. 17629 176302003-11-10 Hrvoje Niksic <hniksic@xemacs.org> 17631 17632 * aclocal.m4 (WGET_STRUCT_UTIMBUF): Use AC_CHECK_TYPES instead of 17633 AC_EGREP_CPP to check for struct utimbuf. 17634 176352003-11-10 Hrvoje Niksic <hniksic@xemacs.org> 17636 17637 * aclocal.m4 (WGET_SOCKLEN_T): Use AC_COMPILE_IFELSE instead of 17638 AC_TRY_COMPILE. 17639 176402003-11-09 Hrvoje Niksic <hniksic@xemacs.org> 17641 17642 * src/main.c (option_data): Specify the command to use for --mirror. 17643 176442003-11-09 Hrvoje Niksic <hniksic@xemacs.org> 17645 17646 * src/html-url.c: Get URLs from <object data="...">. 17647 176482003-11-09 Hrvoje Niksic <hniksic@xemacs.org> 17649 17650 * doc/wget.texi: Remove next/previous/up node links. Makeinfo doesn't 17651 require them, and they make the document harder to modify. 17652 176532003-11-09 Hrvoje Niksic <hniksic@xemacs.org> 17654 17655 * doc/wget.texi: No longer document options -s, -C, -g, and -G. 17656 (Contributors): Update my email address. 17657 176582003-11-09 Hrvoje Niksic <hniksic@xemacs.org> 17659 17660 * configure.in: Don't attempt to use Emacs as a makeinfo 17661 substitute. 17662 176632003-11-09 Hrvoje Niksic <hniksic@xemacs.org> 17664 17665 * aclocal.m4 (WGET_WITH_NLS): Respect the user's setting of 17666 LINGUAS, e.g. `LINGUAS="en bg ja" ./configure'. 17667 176682003-11-08 Hrvoje Niksic <hniksic@xemacs.org> 17669 17670 * src/utils.c (wtimer_allocate): Bless the use of wtimer_read on a 17671 timer that has merely been allocated because get_contents() does 17672 that. 17673 (wtimer_update): Abort if the timer is not initialized. 17674 176752003-11-08 Hrvoje Niksic <hniksic@xemacs.org> 17676 17677 * src/retr.c (get_contents): Pass the timer to limit_bandwidth(). 17678 17679 * src/utils.c (wtimer_update): New function instead of wget_elapsed; 17680 just update the timer, but don't return anything. 17681 (wtimer_read): Read and return the last known value of the timer. 17682 176832003-11-08 Hrvoje Niksic <hniksic@xemacs.org> 17684 17685 * src/progress.c (update_speed_ring): Clear the speed ring when the 17686 download stalls. 17687 17688 * src/retr.c (get_contents): Specify 0.95s read timeout, so that the 17689 progress gauge can be updated even when data arrives very slowly 17690 or stalls. 17691 176922003-11-08 Hrvoje Niksic <hniksic@xemacs.org> 17693 17694 * src/main.c (main): Removed one-letter options `-C', `-g', `-G', and 17695 `-s'. 17696 176972003-11-08 Hrvoje Niksic <hniksic@xemacs.org> 17698 17699 * src/main.c (main): Add --dont-remove-listing for backward 17700 compatibility with previous versions. 17701 (print_help): Fix typo, spotted by Dennis Smit. 17702 177032003-11-08 Hrvoje Niksic <hniksic@xemacs.org> 17704 17705 * src/http.c (persistent_available_p): No reason for the host lookup 17706 to be silent -- it's a lookup like any other. 17707 177082003-11-08 Hrvoje Niksic <hniksic@xemacs.org> 17709 17710 * src/http.c (persistent_available_p): Instead of matching all the 17711 addresses of HOST and last host, determine the peer's IP address 17712 with socket_ip_address and see if that address is one of those 17713 HOST resolves to. 17714 17715 * src/host.c (address_list_match_all): Removed. 17716 (address_list_find): New function, finds an IP address in the 17717 address list. 17718 17719 * src/ftp.c (ftp_do_pasv): Get the peer's address here, and pass it to 17720 ftp_epsv so it doesn't need to call getpeername. 17721 17722 * src/ftp-basic.c (ftp_port): Use socket_ip_address instead of 17723 getpeername. 17724 (ftp_lprt): Ditto. 17725 17726 * src/connect.c (socket_ip_address): Replaces conaddr, generalized to 17727 either get peer's or local address. 17728 (sockaddr_get_data): Made local to this file. 17729 177302003-11-08 Hrvoje Niksic <hniksic@xemacs.org> 17731 17732 * src/hash.c (HASH_POSITION): Explicitly accept the hash function. 17733 (grow_hash_table): Extract ht->hash_function outside the loop. 17734 (hash_table_remove): Ditto. 17735 (hash_table_clear): Fill entries with 0xff to clear them. 17736 (hash_table_remove): Mark entries as deleted with the correct 17737 marker. 17738 177392003-11-08 Hrvoje Niksic <hniksic@xemacs.org> 17740 17741 * src/cookies.c (cookie_handle_set_cookie): Specify exact match for 17742 unspecified domains. 17743 177442003-11-08 Hrvoje Niksic <hniksic@xemacs.org> 17745 17746 * src/connect.c (register_extended): Check that fd >= 0. 17747 177482003-11-08 Gisle Vanem <giva@bgnett.no> 17749 17750 * src/ftp-basic.c: Support Windows-2000 ftp servers. Win-2000 *is* 17751 Win-NT 5.0 so calling it ST_WINNT is okay I guess. 17752 177532003-11-07 Hrvoje Niksic <hniksic@xemacs.org> 17754 17755 * src/url.c (url_parse): Allow empty ports. 17756 177572003-11-07 Hrvoje Niksic <hniksic@xemacs.org> 17758 17759 * src/main.c (print_help): Break the help string into multiple chunks. 17760 (cmdline_option): New option handler OPT_FUNCALL. Generalized 17761 HANDLE_CMD to generic DATA. 17762 (option_data): Use the new OPT_FUNCALL feature. 17763 177642003-11-07 Hrvoje Niksic <hniksic@xemacs.org> 17765 17766 * src/hash.c (NON_EMPTY): Use the all-bit-set value as the marker that 17767 the field is empty. This allows NULL pointer and 0 value to be 17768 used as keys, which is necessary for the connect.c code to work 17769 when fd==0. 17770 (hash_table_new): Fill mappings with 0xff. 17771 (grow_hash_table): Ditto. 17772 177732003-11-07 Hrvoje Niksic <hniksic@xemacs.org> 17774 17775 * src/connect.c (LAZY_RETRIEVE_INFO): Set LAST_INFO. 17776 177772003-11-07 Hrvoje Niksic <hniksic@xemacs.org> 17778 17779 * README: Remove explicit version reference, so that the file 17780 doesn't have to be updated for each new release. 17781 177822003-11-06 Hrvoje Niksic <hniksic@xemacs.org> 17783 17784 * src/main.c (init_switches): New function. Convert option_data to 17785 long_options and short_options, which can be fed to getopt_long. 17786 (main): Execute command-line options by consulting option_data. 17787 177882003-11-06 Hrvoje Niksic <hniksic@xemacs.org> 17789 17790 * src/log.h: Declare log_init, log_close, and 17791 log_request_redirect_output here. 17792 177932003-11-06 Hrvoje Niksic <hniksic@xemacs.org> 17794 17795 * src/gen_sslfunc.c (ssl_read): Implement a more correct check for 17796 EINTR. 17797 (ssl_write): Ditto. 17798 (init_ssl): Use a global SSL context. 17799 178002003-11-06 Hrvoje Niksic <hniksic@xemacs.org> 17801 17802 * src/connect.c: Updated all callers of 17803 iread/ssl_iread/iwrite/ssl_iwrite to use xread and xwrite instead. 17804 17805 * src/rbuf.h (struct rbuf): Removed the SSL member because SSL is 17806 handled automatically by xread. 17807 17808 * src/hash.c (ptrhash): Made private. 17809 (ptrcmp): Ditto. 17810 (inthash): Removed. 17811 17812 * src/connect.c (select_fd): Don't set errno, leave it to the caller. 17813 17814 * src/gen_sslfunc.c (connect_ssl): Use register_extended to register 17815 SSL callbacks for communication with SSL-enabled endpoints. 17816 (ssl_read): New function. 17817 (ssl_write): Ditto. 17818 (ssl_poll): Ditto. 17819 (ssl_close): Ditto. 17820 17821 * src/connect.c (register_extended): New function -- register 17822 callbacks for basic socket operations. 17823 (xread): Ditto. 17824 (xwrite): Ditto. 17825 (xclose): Ditto. 17826 (sock_read): New function, default implementation for reading. 17827 (sock_write): Ditto for writing. 17828 (sock_poll): Ditto for polling. 17829 (sock_close): Ditto for closing. 17830 178312003-11-06 Hrvoje Niksic <hniksic@xemacs.org> 17832 17833 * src/connect.c (xclose): Free INFO even if it doesn't provide a 17834 closer. 17835 178362003-11-05 Hrvoje Niksic <hniksic@xemacs.org> 17837 17838 * windows/config.h.ms: MSVC doesn't have uint32_t. 17839 178402003-11-05 Hrvoje Niksic <hniksic@xemacs.org> 17841 17842 * src/cookies.c (save_cookies_mapper): Respect the setting of 17843 keep-session-cookies. 17844 (cookie_jar_load): Import session cookies. 17845 Based on code submitted by Nicolas Schodet. 17846 17847 * src/utils.c (datetime_str): Use information in TM when it's 17848 non-NULL. 17849 17850 * src/main.c (main): New option `--keep-session-cookies'. 17851 178522003-11-05 Hrvoje Niksic <hniksic@xemacs.org> 17853 17854 * src/connect.c (resolve_bind_address): Use a more accurate error 17855 message -- we're not binding to ANY, we're disabling bind 17856 altogether. 17857 178582003-11-05 Hrvoje Niksic <hniksic@xemacs.org> 17859 17860 * src/connect.c (connect_to_ip): More compact error checking. 17861 (bindport): Don't treat failed setsockopt as a fatal error. 17862 178632003-11-05 Hrvoje Niksic <hniksic@xemacs.org> 17864 17865 * src/connect.c (bindport): Fix compilation under pre-C99 compilers. 17866 178672003-11-05 Hrvoje Niksic <hniksic@xemacs.org> 17868 17869 * libtool.m4, ltmain.sh, config.sub, config.guess: Upgrade to 17870 libtool 1.5. 17871 178722003-11-05 Hrvoje Niksic <hniksic@xemacs.org> 17873 17874 * doc/wget.texi (HTTP Options): Document `--keep-session-cookies'. 17875 178762003-11-05 Hrvoje Niksic <hniksic@xemacs.org> 17877 17878 * configure.in: Use the Autoconf macro AC_C_PROTOTYPES instead of 17879 the old AM_C_PROTOTYPES. 17880 178812003-11-05 Hrvoje Niksic <hniksic@xemacs.org> 17882 17883 * configure.in: Substitute ANSI2KNR and U, so we can compile. 17884 178852003-11-05 Hrvoje Niksic <hniksic@xemacs.org> 17886 17887 * configure.in: Remove the broken check for socks. 17888 178892003-11-05 Dennis Smit <ds@nerds-incorporated.org> 17890 17891 * src/main.c: (main): added --preserve-permissions option. 17892 17893 * src/ftp.c (ftp_retrieve_list): added support for 17894 --preserve-permissions option. 17895 17896 * src/init.c: added support for --preserve-permission option. 17897 17898 * src/option.h: added support for --preserve-permission option. 17899 179002003-11-04 Hrvoje Niksic <hniksic@xemacs.org> 17901 17902 * src/progress.c (progress_handle_sigwinch): Don't call 17903 determine_screen_width() from the signal handler. Instead, just 17904 set a volatile variable. 17905 (bar_create): Check whether SIGWINCH was received. 17906 (bar_update): Ditto. 17907 17908 * src/sysdep.h: Define SYSTEM_FNMATCH only if HAVE_FNMATCH_H is true. 17909 179102003-11-04 Hrvoje Niksic <hniksic@xemacs.org> 17911 17912 * src/config-post.h: New file, included from now autogenerated 17913 config.h.in. 17914 179152003-11-04 Hrvoje Niksic <hniksic@xemacs.org> 17916 17917 * src/Makefile.in (realclean): Delete config.h.in. 17918 179192003-11-04 Hrvoje Niksic <hniksic@xemacs.org> 17920 17921 * configure.in: Use the new form of AC_OUTPUT. 17922 17923 * Makefile.cvs (prep): Invoke autoheader. 17924 179252003-11-04 Hrvoje Niksic <hniksic@xemacs.org> 17926 17927 * configure.in: Require Autoconf 2.57. 17928 179292003-11-04 Hrvoje Niksic <hniksic@xemacs.org> 17930 17931 * configure.in: Move some checks into aclocal.m4. Check whether 17932 fnmatch.h is includable. 17933 17934 * configure.in: Also check whether #include <md5.h> works before 17935 deciding to use Solaris libmd5. 17936 17937 * configure.in: Use AC_MSG_NOTICE instead of echo. Use 17938 AC_MSG_ERROR for fatal errors. 17939 179402003-11-04 Hrvoje Niksic <hniksic@xemacs.org> 17941 17942 * configure.in: Don't misuse AC_MSG_RESULT. Use AC_MSG_NOTICE 17943 where appropriate. 17944 179452003-11-04 Hrvoje Niksic <hniksic@xemacs.org> 17946 17947 * configure.in: Check whether volatile is supported. Don't check 17948 for gethostname and uname, which are not used. 17949 179502003-11-04 Hrvoje Niksic <hniksic@xemacs.org> 17951 17952 * aclocal.m4: Ditto. 17953 17954 * configure.in: Add description annotations to AC_DEFINE. 17955 17956 * Makefile.in: Update maintenance targets, preparing them for the 17957 use of `autoheader'. 17958 179592003-11-03 Hrvoje Niksic <hniksic@xemacs.org> 17960 17961 * src/wget.h (N_): Don't parenthesize argument. 17962 179632003-11-03 Hrvoje Niksic <hniksic@xemacs.org> 17964 17965 * src/utils.c (xsleep): New function. Uses nanosleep where available, 17966 resuming sleeps interrupted by signals. Updated callers of sleep 17967 and usleep to use xsleep. 17968 179692003-11-03 Hrvoje Niksic <hniksic@xemacs.org> 17970 17971 * src/log.c (logvprintf): Documented better. Renamed to 17972 log_vprintf_internal to avoid confusion with the public API 17973 functions logprintf and logputs. 17974 179752003-11-03 Hrvoje Niksic <hniksic@xemacs.org> 17976 17977 * src/host.h (ADDRESS_IPV4_DATA): Don't take the address of in.s_addr 17978 because that doesn't work on machines that define it as bitfield. 17979 179802003-11-03 Hrvoje Niksic <hniksic@xemacs.org> 17981 17982 * src/ftp-basic.c (ftp_login): Remove shadowing (and bogus) 17983 declaration of SEED. 17984 179852003-11-03 Hrvoje Niksic <hniksic@xemacs.org> 17986 17987 * src/connect.c (select_fd): Generalize the third argument into WAIT, 17988 so that the caller can request waiting for both read and write. 17989 Updated callers. 17990 179912003-11-03 Hrvoje Niksic <hniksic@xemacs.org> 17992 17993 * configure.in: Look for nanosleep in -lrt and -lposix4, which is 17994 where Solaris has them. 17995 179962003-11-03 Hrvoje Niksic <hniksic@xemacs.org> 17997 17998 * configure.in: Check for nanosleep. 17999 180002003-11-02 Hrvoje Niksic <hniksic@xemacs.org> 18001 18002 * src/wget.h: Retired the `boolean' type. Moved the DEFAULT_LOGFILE 18003 define to log.h. Moved the INFINITE_RECURSION define to recur.h. 18004 18005 * src/xmalloc.h: Renamed FREE_MAYBE to xfree_null and moved the 18006 definition from wget.h to xmalloc.h. 18007 180082003-11-02 Hrvoje Niksic <hniksic@xemacs.org> 18009 18010 * src/html-url.c (cleanup_html_url): Destroy the hash tables, don't 18011 just call free on them. 18012 (init_interesting): Use hash_table_put instead of string_set_add 18013 because we don't need the strdup that the latter function 18014 performs. 18015 18016 * src/init.c (cleanup): Don't pass NULL to cookie_jar_delete. 18017 18018 * src/xmalloc.c (xfree_real): Abort when passed a NULL pointer. 18019 (xfree_debug): Print at the file and line of the offending call to 18020 free. 18021 180222003-11-02 Hrvoje Niksic <hniksic@xemacs.org> 18023 18024 * src/html-parse.c (decode_entity): New function; split the decoding 18025 of entities here. 18026 (convert_and_copy): Use it to decode entities. 18027 (decode_entity): Handle the &apos entity. 18028 (decode_entity): Don't decode Latin 1 numeric entities. Don't 18029 decode �. 18030 180312003-11-01 Hrvoje Niksic <hniksic@xemacs.org> 18032 18033 * src/host.c: Removed the ip_default_family global variable. 18034 18035 * src/host.c (lookup_host): Document the function. Fixed declaration 18036 of VEC. 18037 180382003-11-01 Hrvoje Niksic <hniksic@xemacs.org> 18039 18040 * src/ftp-opie.c (calculate_skey_response): Use uint32_t instead of 18041 `unsigned long' for the cheksum array. Document the function. 18042 180432003-11-01 Hrvoje Niksic <hniksic@xemacs.org> 18044 18045 * src/connect.c (acceptport): Don't call select_fd when timeout is not 18046 requested. 18047 180482003-10-31 Hrvoje Niksic <hniksic@xemacs.org> 18049 18050 * src/wget.h: Move declarations of malloc and logging code to 18051 xmalloc.h and log.h respectively to unclutter this file. 18052 (STRDUP_ALLOCA): Made it side-effect free. 18053 18054 * src/xmalloc.h: New files. Define macros xnew, xnew0, xnew_array, 18055 and xnew0_array. 18056 18057 * src/xmalloc.c: New file. Move the xmalloc routines here. 18058 180592003-10-31 Hrvoje Niksic <hniksic@xemacs.org> 18060 18061 * src/various: Use new macros xnew, xnew0, xnew_array, and xnew0_array 18062 in various places. 18063 180642003-10-31 Hrvoje Niksic <hniksic@xemacs.org> 18065 18066 * src/sysdep.h (CLOSE): Don't call close on file descriptors less than 18067 0, i.e. on uncreated sockets. 18068 18069 * src/connect.c (resolve_bind_address): Work on struct sockaddr 18070 directly. 18071 (connect_to_host): Replacement for connect_to_many. Resolve HOST 18072 and connect to any of its addresses. If we can't connect and the 18073 host name lookup was cached, try to resolve it again. This should 18074 fix problems with hosts behind dynamic DNS. Updated all callers. 18075 (connect_to_ip): Replacement for connect_to_one. Removed SILENT; 18076 added the argument PRINT instead. Updated all callers. 18077 (set_connection_host_name): Removed. 18078 18079 * src/host.c (address_list_address_at): New function instead of 18080 address_list_copy_one. It returns a pointer to ip_address *, so 18081 it's not necessary to copy the data. 18082 (address_list_cached_p): New function. 18083 (forget_host_lookup): Ditto. 18084 18085 * src/connect.c: Got rid of the MSOCK global variable. Made bindport 18086 return the local socket it creates. Added a new argument to 18087 acceptport, the socket to call accept on. Updated callers. 18088 (closeport): Removed. 18089 18090 * src/connect.c: Moved the sockaddr code from host.c to this file, 18091 because most of that stuff is used for connecting, and has nothing 18092 to do with host names anyway. 18093 (sockaddr_set_data, sockaddr_get_data): New functions, replace the 18094 old sockaddr_set_address, sockaddr_set_port, sockaddr_get_address, 18095 and sockaddr_get_port. 18096 180972003-10-31 Hrvoje Niksic <hniksic@xemacs.org> 18098 18099 * src/host.c (address_list_from_single): Removed. 18100 (address_list_from_ipv4_addresses): Renamed from 18101 address_list_from_vector. 18102 181032003-10-31 Hrvoje Niksic <hniksic@xemacs.org> 18104 18105 * src/connect.c (sockaddr_set_data): Remove the broken code that 18106 checked for NULL address. 18107 181082003-10-30 Hrvoje Niksic <hniksic@xemacs.org> 18109 18110 * src/url.c (append_uri_pathel): New argument ESCAPED_P that says 18111 whether [B, E) is to be treated as URL-escaped or not. If 18112 ESCAPED_P is false, don't unescape the region. 18113 (url_file_name): u->file is not URL-escaped. 18114 181152003-10-30 Hrvoje Niksic <hniksic@xemacs.org> 18116 18117 * src/sysdep.h: Use `S >= 8' rather than `S == 8' when looking for 18118 large integers. 18119 181202003-10-30 Hrvoje Niksic <hniksic@xemacs.org> 18121 18122 * src/retr.c (retrieve_from_file): Use retrieve_tree for 18123 page-requisites. 18124 18125 * src/main.c (main): Don't define opt.recursive when -p is used. 18126 Instead, make sure that recursion is used for HTTP in that case. 18127 181282003-10-29 Hrvoje Niksic <hniksic@xemacs.org> 18129 18130 * src/host.h: Defined accessors for elements of ip_address. Updated 18131 all callers. 18132 (address_list_match_all): Use memcmp in the non-IPv6 case. 18133 18134 * src/wget.h (CONNECT_ERROR): Don't retry connecting if connect() 18135 returned EAFNOSUPPORT. 18136 181372003-10-29 Hrvoje Niksic <hniksic@xemacs.org> 18138 18139 * configure.in: Reenable IPv6 autodetection. 18140 181412003-10-27 Mauro Tortonesi <mauro@deepspace6.net> 18142 18143 * src/connect.h: changed bindport prototype and added the related 18144 BIND_ON_IPV4_ONLY and BIND_ON_IPV6_ONLY flags. 18145 18146 * src/connect.c: changed bindport and resolve_bind_address to allow 18147 protocol-version specific DNS resolution. modified conaddr, 18148 acceptport and connect_to_one to make use of struct 18149 sockaddr_storage and of the new ip_address structure. 18150 18151 * src/ftp-basic.c: added LPRT/LPSV (RFC1639) support, refactored 18152 PORT/PASV (RFC959) and EPRT/EPSV (RFC2428) support code. 18153 18154 * src/ftp.c: added the ftp_do_port and ftp_do_pasv functions to 18155 handle FTP over IPv6. 18156 18157 * src/ftp.h: changed prototype of ftp_epsv and added prototypes for 18158 ftp_lpsv, ftp_lprt and ftp_eprt. 18159 18160 * src/host.c: renamed the 18161 wget_sockaddr_set_address and wget_sockaddr_get_addr, and 18162 wget_sockaddr_{s,g}et_port couples to sockaddr_{s,g}et_address and 18163 sockaddr_{g,s}et_port respectively. changed 18164 address_list_match_all, address_list_from_addrinfo sockaddr_len, 18165 pretty_print_address, lookup_host, sockaddr_{s,g}et_address and 18166 sockaddr_{g,s}et_port to make use of struct sockaddr_storage and 18167 of the new ip_address structure. removed map_ipv4_to_ip and 18168 map_ip_to_ipv4. 18169 18170 * src/host.h: redefined structure ip_address and removed structure 18171 wget_sockaddr. 18172 181732003-10-26 Hrvoje Niksic <hniksic@xemacs.org> 18174 18175 * windows/config.h.mingw: Ditto. 18176 18177 * windows/Makefile.top.mingw: Ditto. 18178 18179 * windows/Makefile.src.mingw: New file. 18180 18181 * windows/wget.dep: Support convert.o. 18182 18183 * configure.bat.in: New option `--mingw'. 18184 From Chin-yuan Kuo. 18185 181862003-10-26 Hrvoje Niksic <hniksic@xemacs.org> 18187 18188 * windows/config.h.bor: DEBUG is now ENABLE_DEBUG. Borland has 18189 snprintf, but not u_int32_t. 18190 18191 * windows/Makefile.src.bor (OBJS): Use convert.c. 18192 18193 From Chin-yuan Kuo. 18194 181952003-10-26 Hrvoje Niksic <hniksic@xemacs.org> 18196 18197 * windows/Makefile.src.watcom (OBJS): Use convert.c. 18198 From Chin-yuan Kuo. 18199 182002003-10-26 Hrvoje Niksic <hniksic@xemacs.org> 18201 18202 * src/sysdep.h: Include inttypes.h where available. 18203 18204 * src/host.c: Switch from u_int32_t to uint32_t. 18205 182062003-10-26 Hrvoje Niksic <hniksic@xemacs.org> 18207 18208 * src/netrc.c (parse_netrc): Reset the QUOTE flag after the closing 18209 quote. 18210 182112003-10-26 Hrvoje Niksic <hniksic@xemacs.org> 18212 18213 * doc/wget.texi (Wgetrc Commands): Fixed typo. 18214 From DervishD <raul@pleyades.net>. 18215 182162003-10-26 Hrvoje Niksic <hniksic@xemacs.org> 18217 18218 * configure.in: Switch from u_int32_t to uint32_t. Check for 18219 inttypes.h so it's used to get the definition of uint32_t where 18220 available. 18221 182222003-10-25 Hrvoje Niksic <hniksic@xemacs.org> 18223 18224 * src/url.c (is_valid_ipv6_address): Reformat to GNU coding style. 18225 Use enums for NS_IN* constants. Use ISXDIGIT. 18226 18227 * src/convert.c (construct_relative): Document better how the function 18228 works. 18229 182302003-10-24 Hrvoje Niksic <hniksic@xemacs.org> 18231 18232 * doc/Makefile.in (install.info): Handle the case when only wget.info 18233 is generated from wget.texi. In that case, wget.info-*[0-9] 18234 doesn't match anything and therefore ends up as a bogus value of 18235 FILE in the loop. Fix this by not calling INSTALL_DATA on 18236 nonexistent files. 18237 182382003-10-23 Hrvoje Niksic <hniksic@xemacs.org> 18239 18240 * src/version.c: Bump version. 18241 182422003-10-23 Hrvoje Niksic <hniksic@xemacs.org> 18243 18244 * src/url.c: Ditto. 18245 18246 * src/html-parse.c (advance_declaration): Don't use trailing comma in 18247 enum because older compilers don't support it. 18248 18249 * src/utils.c: Don't redefine HAVE_SIGSETJMP. 18250 182512003-10-23 Hrvoje Niksic <hniksic@xemacs.org> 18252 18253 * src/config.h.in: Deploy preprocessor magic to avoid Ultrix's 18254 <netdb.h> include <bitypes.h> which defines its own u_int32_t. 18255 Reported by Bernhard Simon. 18256 182572003-10-23 Hrvoje Niksic <hniksic@xemacs.org> 18258 18259 * Makefile.in (dist): Depend on configure.bat. 18260 (realclean-top): Delete configure.bat. 18261 182622003-10-21 Hrvoje Niksic <hniksic@xemacs.org> 18263 18264 * Makefile.in (distclean-top): Remove the libtool script, because 18265 it's generated by configure. 18266 182672003-10-16 Hrvoje Niksic <hniksic@xemacs.org> 18268 18269 * src/convert.c (construct_relative): Don't handle absolute files 18270 specially -- for example, -P/tmp/foo shouldn't imply that 18271 converted files must refer to "/tmp/foo/..."! 18272 182732003-10-16 Hrvoje Niksic <hniksic@xemacs.org> 18274 18275 * configure.in: Don't check for int32_t because we're not really 18276 using it. 18277 182782003-10-15 Philip Stadermann <philip.stadermann@credativ.de> 18279 18280 * src/ftp.c (ftp_retrieve_glob): Correctly loop through the list whose 18281 elements might have been deleted. 18282 182832003-10-15 Hrvoje Niksic <hniksic@xemacs.org> 18284 18285 * src/http.c: Consider status 307 a valid redirect. 18286 182872003-10-13 Hrvoje Niksic <hniksic@xemacs.org> 18288 18289 * src/sysdep.h: Only define u_int32_t. 18290 182912003-10-13 Hrvoje Niksic <hniksic@xemacs.org> 18292 18293 * src/html-url.c (tag_handle_meta): Set the Refresh link to expect 18294 HTML. 18295 (append_one_url): Renamed to append_url. 18296 182972003-10-11 Hrvoje Niksic <hniksic@xemacs.org> 18298 18299 * src/utils.c (large_int_to_string): Use snprintf() to print the 18300 number. This will work even on systems where libc doesn't 18301 understand %lld, but the compiler does, because it will use our 18302 snprintf replacement. 18303 18304 * src/init.c (parse_bytes_helper): New function. 18305 (cmd_bytes): Use it to parse bytes, but cast the result to long. 18306 (cmd_bytes_large): Ditto, but store the result to LARGE_INT. Used 18307 for --quota so that --quota=10G works even on machines without 18308 long long. 18309 18310 * src/options.h (struct options): Declare quota as LARGE_INT. 18311 18312 * src/retr.c (downloaded_exceeds_quota): Removed. 18313 (downloaded_increase): Ditto. 18314 (total_downloaded_bytes): New variable, replaces opt.downloaded, 18315 which was the wrong place for it anyway. Updated callers of 18316 downloaded_exceeds_quota and downloaded_increase to check this 18317 variable directly. 18318 18319 * src/sysdep.h: Get rid of VERY_LONG_TYPE. Use LARGE_INT for the same 18320 purpose, defined as `long', `long long' or `double', depending on 18321 size of long and whether long long is available. 18322 183232003-10-11 Hrvoje Niksic <hniksic@xemacs.org> 18324 18325 * src/sysdep.h: Also check size of short for int32_t. 18326 183272003-10-11 Hrvoje Niksic <hniksic@xemacs.org> 18328 18329 * src/host.c (lookup_host): Use u_int32_t to store the result of 18330 inet_addr(). That removes the need for offset fiddling, caring 18331 about endian-ness, etc. 18332 18333 * src/sysdep.h: Define int32_t and u_int32_t if not available. 18334 183352003-10-11 Hrvoje Niksic <hniksic@xemacs.org> 18336 18337 * src/ftp-basic.c (ftp_epsv): Use socklen_t * as the third argument to 18338 getpeername. 18339 18340 * src/config.h.in: Define socklen_t stub. 18341 18342 * src/host.c (sockaddr_len): Return socklen_t. 18343 18344 * src/connect.c (conaddr): Use socklen_t as the third argument to 18345 accept, getsockname, and connect. 18346 183472003-10-11 Hrvoje Niksic <hniksic@xemacs.org> 18348 18349 * configure.in: Check for int32_t and u_int32_t. Check for 18350 SIZEOF_INT. 18351 183522003-10-10 Hrvoje Niksic <hniksic@xemacs.org> 18353 18354 * src/recur.c (retrieve_tree): Don't descend into documents that are 18355 not expected to contain HTML, regardless of their content-type. 18356 18357 * src/html-url.c (tag_url_attributes): Record which attributes are 18358 supposed to yield HTML links that can be followed. 18359 (tag_find_urls): Propagate that information to the caller through 18360 struct urlpos. 18361 183622003-10-10 Hrvoje Niksic <hniksic@xemacs.org> 18363 18364 * src/hash.c (hash_table_new): Slightly change the meaning of the 18365 first parameter. Instead of being the minimum initial size, it is 18366 now the minimum number of items that the hash table can take 18367 without needing to resize. 18368 183692003-10-10 Hrvoje Niksic <hniksic@xemacs.org> 18370 18371 * src/hash.c (find_mapping): Return the next available mapping when 18372 the key is not found, not NULL. 18373 (hash_table_put): Use find_mapping to find the storage for the new 18374 data. 18375 (hash_table_put): Grow the table before exceeding maximum 18376 fullness, not afterwards. 18377 183782003-10-10 Hrvoje Niksic <hniksic@xemacs.org> 18379 18380 * po/tr.po: Ditto. 18381 18382 * po/sv.po: Updated from TP. 18383 183842003-10-10 Hrvoje Niksic <hniksic@xemacs.org> 18385 18386 * aclocal.m4 (WGET_WITH_NLS): First check for gettext in libintl, 18387 then use the libc version. That way systems that get libintl.h 18388 from /usr/local/include will get the matching gettext. 18389 183902003-10-09 Hrvoje Niksic <hniksic@xemacs.org> 18391 18392 * src/html-url.c (init_interesting): Initialize interesting_tags and 18393 interesting_attributes as hash tables. This simplifies the code 18394 immensely because hash tables handle allocation and remove 18395 duplicates automatically. 18396 (find_tag): Removed. 18397 (collect_tags_mapper): Instead of calling find_tag, simply get the 18398 entry from interesting_tags hash table, which is both simpler and 18399 faster. 18400 184012003-10-09 Hrvoje Niksic <hniksic@xemacs.org> 18402 18403 * src/hash.c (hash_table_get): Declare hash-table argument as const. 18404 (find_mapping): Ditto. 18405 (hash_table_get_pair): Ditto. 18406 (hash_table_contains): Ditto. 18407 (hash_table_count): Ditto. 18408 184092003-10-09 Hrvoje Niksic <hniksic@xemacs.org> 18410 18411 * po/ft.po, po/sk.po, po/ja.po: Updated from the TP. 18412 184132003-10-09 Herold Heiko <Heiko.Herold@previnet.it> 18414 18415 * windows/Makefile.watcom (OBJS): Ditto. 18416 18417 * windows/Makefile.src.bor: Ditto. 18418 18419 * windows/wget.dep: Ditto. 18420 18421 * windows/Makefile.src: Removed references to fnmatch.c and 18422 fnmatch.o. 18423 184242003-10-08 Hrvoje Niksic <hniksic@xemacs.org> 18425 18426 * src/main.c (print_help): Fix typo; stured -> stored. 18427 184282003-10-08 Hrvoje Niksic <hniksic@xemacs.org> 18429 18430 * src/html-url.c (get_urls_html): Parse the appropriate flags to 18431 html-parse.c. 18432 18433 * src/html-parse.c (map_html_tags): Accept FLAGS from the caller 18434 instead of examining OPT. 18435 184362003-10-08 Hrvoje Niksic <hniksic@xemacs.org> 18437 18438 * src/html-url.c (find_tag): Switch to binary search. 18439 184402003-10-08 Hrvoje Niksic <hniksic@xemacs.org> 18441 18442 * src/getopt.c: Newer version, imported from Free libit. 18443 184442003-10-08 Hrvoje Niksic <hniksic@xemacs.org> 18445 18446 * src/getopt.c: Add definitions of getopt_long and getopt_long_only. 18447 184482003-10-08 Hrvoje Niksic <hniksic@xemacs.org> 18449 18450 * src/ftp.c (has_insecure_name_p): Define it here. 18451 18452 * src/utils.c (has_wildcards_p): Define it here. 18453 18454 * src/sysdep.h: Declare fnmatch-related macros here, if not using 18455 system fnmatch(). Update .c files to not declare fnmatch.h 18456 directly. 18457 18458 * src/cmpt.c (fnmatch): Moved here. Use it only under non-GNU libc. 18459 184602003-10-08 Hrvoje Niksic <hniksic@xemacs.org> 18461 18462 * src/config.h.in: Renamed DEBUG to ENABLE_DEBUG. ENABLE_DEBUG is, I 18463 think, a better name, because it implies that debugging output is 18464 merely possible, not "on by default", as might be construed from 18465 just DEBUG. 18466 184672003-10-08 Hrvoje Niksic <hniksic@xemacs.org> 18468 18469 * po/wget.pot: Recreated. 18470 184712003-10-08 Hrvoje Niksic <hniksic@xemacs.org> 18472 18473 * configure.in: Renamed DEBUG to ENABLE_DEBUG. 18474 184752003-10-07 Hrvoje Niksic <hniksic@xemacs.org> 18476 18477 * src/cookies.c (struct cookie): Remove unused backpointer to cookie 18478 jar. 18479 184802003-10-07 Hrvoje Niksic <hniksic@xemacs.org> 18481 18482 * src/cmpt.c (memmove): Comment out, since it's no longer used. 18483 18484 * src/cookies.c (cookie_jar_generate_cookie_header): Allocate room for 18485 chains in one pass. 18486 (find_chains_of_host): Assume that the caller has allocated DEST 18487 to be sufficiently large to take all the data. 18488 (eliminate_dups): Run through the array and eliminate dups on the 18489 fly instead of using memmove. 18490 (cookie_jar_process_set_cookie): Free cookie->domain before 18491 re-setting it. 18492 184932003-10-07 Hrvoje Niksic <hniksic@xemacs.org> 18494 18495 * doc/wget.texi (HTTP Options): Documented --post-file and 18496 --post-data. 18497 184982003-10-05 Hrvoje Niksic <hniksic@xemacs.org> 18499 18500 * src/utils.c (file_size): Return -1 if fopen() returns NULL. Prior 18501 to this patch, wget --post-file=nosuchfile dumped core. 18502 185032003-10-05 Gisle Vanem <giva@bgnett.no> 18504 18505 * src/mswindows.c (set_sleep_mode): Fix type of 18506 _SetThreadExecutionState. 18507 185082003-10-04 Hrvoje Niksic <hniksic@xemacs.org> 18509 18510 * src/log.c: Use `...' in function definitions; ansi2knr will convert 18511 them to va_dcl. This allowed removal of the ugly VA_START_1 and 18512 VA_START_2 macros. 18513 185142003-10-04 Hrvoje Niksic <hniksic@xemacs.org> 18515 18516 * libtool.m4: New file with contents imported from libtool. 18517 18518 * aclocal.m4: Move libtool stuff into a separate file. That 18519 leaves this file only with Wget-specific stuff. 18520 185212003-10-04 Gisle Vanem <giva@bgnett.no> 18522 18523 * src/mswindows.c (run_with_timeout): Use WaitForSingleObject to wait 18524 for thread termination. 18525 185262003-10-03 Hrvoje Niksic <hniksic@xemacs.org> 18527 18528 * src/html-parse.c (convert_and_copy): Move variable declarations 18529 before statements. 18530 185312003-10-03 Gisle Vanem <giva@bgnett.no> 18532 18533 * src/connect.c: And don't include them here. 18534 18535 * src/mswindows.h: Include winsock headers here. 18536 185372003-10-02 Hrvoje Niksic <hniksic@xemacs.org> 18538 18539 * src/wget.h (XMALLOC_ARRAY): Removed. 18540 (ALLOCA_ARRAY): Ditto. 18541 18542 * src/html-parse.c: Renamed alloca_p to resized. 18543 (GROW_ARRAY): Renamed DO_REALLOC_FROM_ALLOCA to GROW_ARRAY and 18544 returned it to html-parse.c, since nothing else was using it. 18545 185462003-10-02 Hrvoje Niksic <hniksic@xemacs.org> 18547 18548 * src/utils.c (alarm_set): New function; use either setitimer or alarm 18549 to set up the alarm. 18550 (alarm_cancel): New function; cancel the alarm set up by 18551 alarm_set. 18552 (run_with_timeout): Use them. 18553 185542003-10-02 Hrvoje Niksic <hniksic@xemacs.org> 18555 18556 * src/retr.c (retrieve_url): Initialize DUMMY storage for DT. Caught 18557 by valgrind. 18558 185592003-10-02 Hrvoje Niksic <hniksic@xemacs.org> 18560 18561 * src/html-parse.c (convert_and_copy): Handle numeric entities in 18562 hexadecimal, &#xHH. 18563 (convert_and_copy): Copy the contents directly to the pool without 18564 a stack-allocated intermediary. 18565 185662003-10-02 Gisle Vanem <giva@bgnett.no> 18567 18568 * src/mswindows.c (run_with_timeout): For Windows: Run the 'fun' in a 18569 thread via a helper function. Continually query the thread's 18570 exit-code until finished or timed out. 18571 185722003-10-01 Hrvoje Niksic <hniksic@xemacs.org> 18573 18574 * src/url.c (url_parse): Don't leak memory when a reencoded URL turns 18575 out to be invalid. 18576 18577 * src/url.c (parse_errors): Mark error messages for translation. 18578 (url_error): Translate error messages returned to the caller. 18579 185802003-10-01 Hrvoje Niksic <hniksic@xemacs.org> 18581 18582 * src/ftp.c (ftp_loop_internal): Initialize TMRATE to NULL to shut up 18583 the compiler. 18584 185852003-10-01 Hrvoje Niksic <hniksic@xemacs.org> 18586 18587 * po/hu.po: Updated from the TP. 18588 18589 * po/et.po: Updated from the TP. 18590 18591 * po/ro.po: New file from the TP. 18592 185932003-10-01 Hrvoje Niksic <hniksic@xemacs.org> 18594 18595 * po/hr.po: Updated. 18596 185972003-10-01 Hrvoje Niksic <hniksic@xemacs.org> 18598 18599 * po/POTFILES.in: Added src/convert.c. 18600 186012003-10-01 Hrvoje Niksic <hniksic@xemacs.org> 18602 18603 * doc/wget.texi: Renamed prep.ai.mit.edu to ftp.gnu.org. 18604 186052003-10-01 Hrvoje Niksic <hniksic@xemacs.org> 18606 18607 * doc/wget.texi (Contributors): Updated from ChangeLog entries. 18608 186092003-09-30 Herold Heiko <Heiko.Herold@previnet.it> 18610 18611 * windows/Makefile.src (OBJ): Fix typo. 18612 186132003-09-29 Aaron Hawley <Aaron.Hawley@uvm.edu> 18614 18615 * src/ftp.c (getftp): --spider option should now work with FTP 18616 downloads. 18617 (ftp_loop_internal): quiet reports and calculations of downloads 18618 when --spider option set, nor try deleting when --delete-after 18619 also set. 18620 (ftp_loop): --spider will skip HTML-ification of .listing file. 18621 186222003-09-26 Gisle Vanem <giva@bgnett.no> 18623 18624 * windows/config.h.ms: Don't declare alloca under compilers that 18625 support it. 18626 18627 * windows/config.h.ms: Define HAVE_SNPRINTF, HAVE_VSNPRINTF, and 18628 HAVE_MEMMOVE. 18629 186302003-09-26 Gisle Vanem <giva@bgnett.no> 18631 18632 * src/src/mswindows.c: Added ws_percenttitle() showing progress in the 18633 window titlebar. Called from retr.c. Secured ws_mypath(). 18634 18635 * src/windows/config.h.ms: alloca() prototype not needed. Removed 18636 "#undef ENABLE_NLS"; should be in Makefile IMHO. Moved 18637 WGET_USE_STDARG from mswindows.h to config.ms.h because of #ifdef 18638 in log.c. (MSVC's vararg.h and stdarg.h are incompatible). 18639 186402003-09-26 Gisle Vanem <giva@bgnett.no> 18641 18642 * src/mswindows.c (read_registry): Removed. 18643 (set_sleep_mode): New function. 18644 (windows_main_junk): Call it. 18645 186462003-09-26 Gisle Vanem <giva@bgnett.no> 18647 18648 * src/mswindows.c (read_registry): Fix invocation of registry 18649 functions. 18650 18651 * src/mswindows.c (read_registry): Condition definitions of sleep and 18652 usleep with not HAVE_SLEEP and HAVE_USLEEP respectively. Define 18653 HAVE_SLEEP and HAVE_USLEEP under __DMC__. 18654 186552003-09-25 Herold Heiko <Heiko.Herold@previnet.it> 18656 18657 * windows/Makefile.src: Updated OBJ list. 18658 186592003-09-24 Hrvoje Niksic <hniksic@xemacs.org> 18660 18661 * src/url.c (url_escape_1): Revert unintentional change to lowercase 18662 xdigit escapes. 18663 (url_escape_dir): Document that this function depends on the 18664 output of url_escape_1. 18665 186662003-09-23 Hrvoje Niksic <hniksic@xemacs.org> 18667 18668 * src/progress.c (create_image): Print the current ETA if we're done 18669 with the download. 18670 (create_image): Change '-' display char to '+' in the progress bar. 18671 18672 * src/Makefile.in (clean): Remove .libs. 18673 186742003-09-23 Hrvoje Niksic <hniksic@xemacs.org> 18675 18676 * src/cookies.c (struct cookie): New flag domain_exact. 18677 (update_cookie_field): Skip leading dot in domain. 18678 (find_matching_chains): Match numeric addresses exactly; don't 18679 needlessly copy HOST to the stack. 18680 (matching_cookie): Added argument HOST. If cookie->domain_exact 18681 is set, check that HOST is equal to cookie->domain. 18682 (cookie_jar_load): Only use TAB as delimiter. Document the 18683 meaning of DOMAIN-FLAG. Skip leading dot in domain. 18684 (cookie_jar_load): Don't ignore DOMAIN-FLAG -- instead, set 18685 domain_exact to true if DOMAIN-FLAG is false. 18686 (save_cookies_mapper): If domain_exact is false, prepend the 18687 domain with dot, like Mozilla does. 18688 186892003-09-23 Hrvoje Niksic <hniksic@xemacs.org> 18690 18691 * Makefile.in (distclean-top): Remove autom4te.cache. 18692 186932003-09-23 Hrvoje Niksic <hniksic@xemacs.org> 18694 18695 * Makefile.in (clean-top): Remove .libs. 18696 186972003-09-22 Hrvoje Niksic <hniksic@xemacs.org> 18698 18699 * src/url.c (path_simplify): Instead of calls to memmove, handle "./" 18700 and "../" by advancing pointers. 18701 187022003-09-22 Hrvoje Niksic <hniksic@xemacs.org> 18703 18704 * src/safe-ctype.h (_sch_test): The cast of BIT to unsigned char was 18705 broken -- _sch_istable bitmasks are 16-bit, not 8-bit! Cast BIT 18706 to unsigned short instead. 18707 187082003-09-22 Hrvoje Niksic <hniksic@xemacs.org> 18709 18710 * src/retr.c (getproxy): Moved from url.c. 18711 18712 * src/convert.c: Split off link conversion from url.c into separate 18713 file. Also included the book-keeping stuff from recur.c. 18714 187152003-09-22 Hrvoje Niksic <hniksic@xemacs.org> 18716 18717 * src/progress.c (create_image): Print the initial part of the 18718 download with '-' characters, analogous to how dot progress prints 18719 the initial part with ','. 18720 18721 * src/hash.c (ptrhash): New function. 18722 (ptrcmp): Ditto. 18723 (hash_table_new): Default to identity hash table. 18724 187252003-09-21 Matthew J. Mellon <mellon@tymenet.com> 18726 18727 * src/http.c (gethttp): Recognize content-type "application/xhtml+xml" 18728 as what Wget considers "text/html". 18729 187302003-09-21 Hrvoje Niksic <hniksic@xemacs.org> 18731 18732 * src/main.c (main): Use setoptval() for setting the options. Use 18733 run_command for `-e'. 18734 18735 * src/init.c (parse_line): Rewritten to return COMIND right away. 18736 Changed linkage to static. 18737 (run_wgetrc): Use the available comind when calling setval, so it 18738 doesn't have to be computed twice. 18739 (setval_internal): New function, runs the command's action without 18740 any error checking. 18741 (setoptval): New function, does what setval used to do, but exits 18742 in case of error. 18743 (run_command): New function. 18744 187452003-09-21 Hrvoje Niksic <hniksic@xemacs.org> 18746 18747 * src/init.c: Improved documentation of functions. 18748 (cmd_boolean): Attempt to make code that tries to avoid calling 18749 strcmp for "speed" a bit more readable. 18750 18751 * src/init.c (simple_atof): Report error on encountering non-digit, 18752 non-"." character. 18753 (simple_atoi): Replacement for myatoi(), calling interface 18754 compatible with simple_atof. Updated myatoi's callers. 18755 187562003-09-21 Hrvoje Niksic <hniksic@xemacs.org> 18757 18758 * src/init.c (simple_atof): New function. 18759 (cmd_time): Use it. 18760 (cmd_bytes): Accept things like "1.5k" and such. Use simple_atof 18761 to parse decimals. 18762 18763 * src/retr.c (limit_bandwidth): Adjust each sleep by the error of the 18764 previous one. 18765 187662003-09-21 Hrvoje Niksic <hniksic@xemacs.org> 18767 18768 * src/connect.c (select_fd): Change MAXTIME's type to double. Handle 18769 its decimal part. 18770 18771 * src/retr.c (sleep_between_retrievals): In the random-wait case, use 18772 random_float() to wait between 0 and 2*opt.wait seconds. 18773 18774 * src/utils.c (run_with_timeout): Accept `double' timeouts. Correctly 18775 handle timeout values in (0, 1) range. 18776 (random_float): New function. 18777 18778 * src/options.h (struct options): Change the types of wait, waitretry, 18779 and timeout to double. 18780 18781 * src/init.c (cmd_time): Accept floating point time. 18782 187832003-09-21 Hrvoje Niksic <hniksic@xemacs.org> 18784 18785 * src/connect.c (connect_with_timeout): Made timeout type double. 18786 18787 * src/options.h (struct options): New members read_timeout, 18788 dns_timeout, and connect_timeout. 18789 Use them. 18790 187912003-09-21 Hrvoje Niksic <hniksic@xemacs.org> 18792 18793 * doc/wget.texi: Documented the new timeout options. 18794 187952003-09-21 Bertrand Demiddelaer <bert@b3rt.org> 18796 18797 * src/url.c (path_simplify): Would read two bytes past the end of the 18798 string in the "./" case. 18799 188002003-09-21 Aaron S. Hawley <Aaron.Hawley@uvm.edu> 18801 18802 * doc/wget.texi: Split version to version.texi. Tweak documentation's 18803 phrasing and markup. 18804 188052003-09-20 Hrvoje Niksic <hniksic@xemacs.org> 18806 18807 * src/url.c (uri_merge): Get rid of uri_merge_1. 18808 (uri_merge): Merge "foo//", "bar" as "foo//bar", not "foo///bar", 18809 i.e. don't add an extra slash merely because BASE ends with two 18810 slashes. 18811 (parse_credentials): Renamed from parse_uname. Rewrittern in 18812 standard [beg, end) calling style. 18813 (url_skip_credentials): Renamed from url_skip_uname. Made static. 18814 (url_skip_credentials): Include # and ; as terminators. Old code 18815 would mistakenly consider "http://foo.com#hniksic@iskon.hr" to 18816 contain a username. 18817 (url_skip_scheme): Removed because it was unused. 18818 (url_has_scheme): Require "scheme" to be at least one char long. 18819 188202003-09-20 Hrvoje Niksic <hniksic@xemacs.org> 18821 18822 * src/retr.c (get_contents): Cosmetic fixes. 18823 188242003-09-19 Hrvoje Niksic <hniksic@xemacs.org> 18825 18826 * src/wget.h (BOUNDED_TO_ALLOCA): Evaluate PLACE only once. 18827 (ARRAY_SIZE): Renamed to countof. All callers updated. 18828 188292003-09-19 Hrvoje Niksic <hniksic@xemacs.org> 18830 18831 * src/url.c (url_file_name): Expect NULL dir_prefix. 18832 18833 * src/init.c (cmd_file): Use a macro to prevent multiple #ifdef 18834 WINDOWS. 18835 (defaults): Set dir_prefix to NULL by default. 18836 188372003-09-19 Hrvoje Niksic <hniksic@xemacs.org> 18838 18839 * src/safe-ctype.h (_sch_test): Cast BIT to unsigned char, like latest 18840 gcc does. 18841 188422003-09-19 Hrvoje Niksic <hniksic@xemacs.org> 18843 18844 * src/main.c (main): New option --strict-comments. 18845 18846 * src/html-parse.c (find_comment_end): New function: simple BM search 18847 for "-->". 18848 (map_html_tags): Use it if looking at a comment and not in strict 18849 comments mode. 18850 188512003-09-19 Hrvoje Niksic <hniksic@xemacs.org> 18852 18853 * doc/wget.texi: Changed @itemx not preceded by @item to @item. 18854 188552003-09-18 Hrvoje Niksic <hniksic@xemacs.org> 18856 18857 * src/safe-ctype.h: Don't #define ctype.h macros to errors because 18858 that loses when someone #include's ctype.h after safe-ctype.h. 18859 188602003-09-18 Hrvoje Niksic <hniksic@xemacs.org> 18861 18862 * src/retr.c (get_contents): Pass the correct argument to ssl_iread. 18863 188642003-09-17 Hrvoje Niksic <hniksic@xemacs.org> 18865 18866 * src/url.c: Undef U, W, C after use. 18867 188682003-09-17 Hrvoje Niksic <hniksic@xemacs.org> 18869 18870 * src/url.c (url_escape_1): New function. 18871 (url_escape): Use it. 18872 (sync_path): Handle pathological cases where u->file and u->dir 18873 contain really strange characters. 18874 (ENCODE): Deleted. 18875 (REENCODE): Deleted. 18876 188772003-09-17 Hrvoje Niksic <hniksic@xemacs.org> 18878 18879 * src/init.c (cmd_spec_restrict_file_names): Allow the OS setting to 18880 be augmented by ",nocontrol" which means don't escape the control 18881 characters, but otherwise keep OS settings. 18882 18883 * src/url.c (file_unsafe_char): Deleted. 18884 (append_uri_pathel): Query filechr_table directly. 18885 (filechr_table): Separated Unix, Windows, and control-unsafe 18886 characters. 18887 188882003-09-17 Hrvoje Niksic <hniksic@xemacs.org> 18889 18890 * ltmain.sh, aclocal.m4: Upgrade to libtool 1.4.3. Libtool 1.5 18891 has been out for a while now, but it can wait until after Wget 1.9 18892 is released. 18893 188942003-09-17 Hrvoje Niksic <hniksic@xemacs.org> 18895 18896 * install-sh, mkinstalldirs: Updated from Autoconf 2.57. 18897 188982003-09-17 Hrvoje Niksic <hniksic@xemacs.org> 18899 18900 * doc/wget.texi (Download Options): Explain new --restrict-file-names 18901 semantics. 18902 189032003-09-17 Hrvoje Niksic <hniksic@xemacs.org> 18904 18905 * doc/wget.texi (Download Options): Explain how --tries works by 18906 default. 18907 189082003-09-17 Hrvoje Niksic <hniksic@xemacs.org> 18909 18910 * config.sub: Ditto. 18911 18912 * config.guess: Updated from Autoconf 2.57. 18913 189142003-09-17 Aurelien Marchand <artaxerxes@users.sf.net> 18915 18916 * src/ftp.h: Added OS400 system in enum 18917 * src/ftp-basic.c: recognize OS400 systems 18918 * src/ftp.c: don't prepend the CWD if talking to OS400, since it 18919 breaks the change in library 18920 189212003-09-16 Noel Kothe <noel@debian.org> 18922 18923 * doc/wget.texi (Download Options): Fix misspelling. 18924 189252003-09-16 Mauro Tortonesi <mauro@deepspace6.net> 18926 18927 * configure.in, aclocal.m4: Added proper IPv6 detection. 18928 189292003-09-16 Hrvoje Niksic <hniksic@xemacs.org> 18930 18931 * util/dist-wget: Fixed portable echo checking under Bash. 18932 189332003-09-16 Hrvoje Niksic <hniksic@xemacs.org> 18934 18935 * src/utils.c (wtimer_sys_diff): Convert the time difference to signed 18936 __int64, then to double. This works around MS VC++ 6 which can't 18937 convert unsigned __int64 to double directly. 18938 189392003-09-16 Hrvoje Niksic <hniksic@xemacs.org> 18940 18941 * src/url.c (url_file_name): Don't reallocate FNAME if the file 18942 doesn't exist, as is usually the case. 18943 18944 * src/utils.c (unique_name): New flag allow_passthrough. 18945 189462003-09-16 Hrvoje Niksic <hniksic@xemacs.org> 18947 18948 * src/http.c (post_file): Don't pad the file if it's not large 18949 enough. Bail out instead. 18950 189512003-09-16 Hrvoje Niksic <hniksic@xemacs.org> 18952 18953 * src/Makefile.in (clean): Also remove the core.<number> files 18954 produced by recent Linux systems. 18955 189562003-09-16 Hrvoje Niksic <hniksic@xemacs.org> 18957 18958 * doc/wget.texi: Set the man page title to a string more descriptive 18959 than "Wget manual". 18960 189612003-09-16 Hrvoje Niksic <hniksic@xemacs.org> 18962 18963 * doc/Makefile.in ($(TEXI2POD)): Update only the #! line. 18964 18965 * doc/texi2pod.pl: New version from Gcc. 18966 189672003-09-16 Hrvoje Niksic <hniksic@xemacs.org> 18968 18969 * configure.in: Change AC_CHECK_FUNC(getaddrinfo...) to 18970 AC_CHECK_FUNCS, which automatically defines HAVE_GETADDRINFO. 18971 189722003-09-16 Hrvoje Niksic <hniksic@xemacs.org> 18973 18974 * Makefile.in (all): Don't build configure.bat by default. 18975 189762003-09-15 Nicolas Schodet <schodet@efrei.fr> 18977 18978 * doc/wget.texi (Download Options): Add link to Proxies. 18979 189802003-09-15 Hrvoje Niksic <hniksic@xemacs.org> 18981 18982 * src/wget.h (XDIGIT_TO_XCHAR): Implement as index into a literal 18983 string. 18984 (XDIGIT_TO_xchar): Ditto. 18985 189862003-09-15 Hrvoje Niksic <hniksic@xemacs.org> 18987 18988 * src/utils.c: Change the type of timer-related functions from long to 18989 double, for better precision. On machines supporting gettimeofday 18990 the timers now work with granularity of less than one millisecond. 18991 189922003-09-15 Hrvoje Niksic <hniksic@xemacs.org> 18993 18994 * src/url.c (strpbrk_or_eos): Implement as a macro under Gcc. 18995 189962003-09-15 Hrvoje Niksic <hniksic@xemacs.org> 18997 18998 * src/retr.c (get_contents): Reduce the buffer size to the amount of 18999 data that may pass through for one second. This prevents long 19000 sleeps when limiting bandwidth. 19001 19002 * src/connect.c (connect_to_one): Reduce the socket's RCVBUF when 19003 bandwidth limitation to small values is requested. 19004 190052003-09-15 Hrvoje Niksic <hniksic@xemacs.org> 19006 19007 * src/progress.c (update_speed_ring): Moved the speed ring update to a 19008 separate function and documented it better. 19009 19010 * src/progress.c: Use `double' for most timers to support granularity 19011 smaller than 1ms. 19012 190132003-09-15 Hrvoje Niksic <hniksic@xemacs.org> 19014 19015 * src/cookies.c (parse_set_cookies): Fixed the parser to handle more 19016 edge conditions. 19017 (test_cookies): New function, contains a test suite for 19018 parse_set_cookies. 19019 190202003-09-15 Hrvoje Niksic <hniksic@xemacs.org> 19021 19022 * src/cookies.c (parse_set_cookies): Allow trailing space in 19023 set-cookies header. Also, allow any amount of whitespace, not 19024 only one character. Allow empty set-cookies header without 19025 spewing an error. 19026 190272003-09-14 Hrvoje Niksic <hniksic@xemacs.org> 19028 19029 * src/utils.c (wtimer_sys_set): Extracted the code that sets the 19030 current time here. 19031 (wtimer_reset): Call it. 19032 (wtimer_sys_diff): Extracted the code that calculates the 19033 difference between two system times here. 19034 (wtimer_elapsed): Call it. 19035 (wtimer_elapsed): Don't return a value smaller than the previous 19036 one, which could previously happen when system time is set back. 19037 Instead, reset start time to current time and note the elapsed 19038 offset for future calculations. The returned times are now 19039 guaranteed to be monotonically nondecreasing. 19040 190412003-09-14 Hrvoje Niksic <hniksic@xemacs.org> 19042 19043 * src/url.c (append_uri_pathel): Use opt.restrict_file_names when 19044 calling file_unsafe_char. 19045 19046 * src/init.c: New command restrict_file_names. 19047 19048 * src/main.c (main): New option --restrict-file-names[=windows,unix]. 19049 19050 * src/url.c (url_file_name): Renamed from url_filename. 19051 (url_file_name): Add directory and hostdir prefix here, not in 19052 mkstruct. 19053 (append_dir_structure): New function, does part of the work that 19054 used to be in mkstruct. Iterates over path elements in u->path, 19055 calling append_uri_pathel on each one to append it to the file 19056 name. 19057 (append_uri_pathel): URL-unescape a path element and reencode it 19058 with a different set of rules, more appropriate for handling of 19059 files. 19060 (file_unsafe_char): New function, uses a lookup table to decide 19061 whether a character should be escaped for use in file name. 19062 (append_string): New utility function. 19063 (append_char): Ditto. 19064 (file_unsafe_char): New argument restrict_for_windows, decide 19065 whether Windows file names should be escaped in run-time. 19066 19067 * src/connect.c: Include <stdlib.h> to get prototype for abort(). 19068 190692003-09-14 Hrvoje Niksic <hniksic@xemacs.org> 19070 19071 * doc/wget.texi (Download Options): Document the new option 19072 --restrict-file-names and the corresponding wgetrc command. 19073 190742003-09-10 Hrvoje Niksic <hniksic@xemacs.org> 19075 19076 * src/init.c: New command dns_cache. 19077 19078 * src/main.c (main): New option --dns-cache[=off]. 19079 190802003-09-10 Hrvoje Niksic <hniksic@xemacs.org> 19081 19082 * src/init.c (cmd_boolean): Accept yes/no along with on/off. 19083 (cmd_lockable_boolean): Ditto. 19084 190852003-09-10 Hrvoje Niksic <hniksic@xemacs.org> 19086 19087 * src/host.c (lookup_host): Print the result of the DNS lookup. 19088 190892003-09-10 Hrvoje Niksic <hniksic@xemacs.org> 19090 19091 * doc/wget.texi (Download Options): Documented new option --dns-cache. 19092 190932003-09-09 Hrvoje Niksic <hniksic@xemacs.org> 19094 19095 * src/url.c (url_parse): Return an error if the URL contains a [...] 19096 IPv6 numeric address and we don't support IPv6. 19097 190982003-09-09 Hrvoje Niksic <hniksic@xemacs.org> 19099 19100 * src/config.h.in: Initialize HAVE_GETADDRINFO and ENABLE_IPV6. 19101 19102 * src/all: Use #ifdef ENABLE_IPV6 instead of the older INET6. Use 19103 HAVE_GETADDRINFO for getaddrinfo-related stuff. 19104 191052003-09-09 Hrvoje Niksic <hniksic@xemacs.org> 19106 19107 * configure.in, aclocal.m4: Added configure check for IPv6 and 19108 getaddrinfo. From Daniel Stenberg. 19109 191102003-09-05 Mauro Tortonesi <mauro@deepspace6.net> 19111 19112 src/url.c: added RFC 2732 compliance for URL parsing. The 19113 functions is_*_address valid are a modified version of 19114 glibc 2.3.2 inet_pton's code. 19115 191162003-09-05 Maciej W. Rozycki <macro@ds2.pg.gda.pl> 19117 19118 * configure.in: Additional M4 quoting. 19119 191202003-09-05 Hrvoje Niksic <hniksic@xemacs.org> 19121 19122 * src/url.c (is_valid_ipv6_address): Modified to not require 19123 zero-terminated strings. 19124 (is_valid_ipv4_address): Ditto. 19125 191262003-09-04 Hrvoje Niksic <hniksic@xemacs.org> 19127 19128 * aclocal.m4, configure.in: Made them work under Autoconf 2.5x. 19129 191302003-09-03 Ahmon Dancy <dancy@dancysoft.com> 19131 19132 * src/main.c init.c options.h: Added --retry-connrefused option so 19133 that Connection Refused failures are treated as non-fatal (when 19134 trying to retrieve from busy servers). 19135 19136 * src/wget.h: New CONNECT_ERROR macro for encapsulating this 19137 modification. 19138 19139 * src/ftp.c http.c : Use CONNECT_ERROR macro in places where 19140 ECONNREFUSED was checked. 19141 191422003-03-09 Nicolas Schodet <contact@ni.fr.eu.org> 19143 19144 * Makefile.in: Fixed bad configure.bat scrdir. 19145 191462003-02-25 Hrvoje Niksic <hniksic@xemacs.org> 19147 19148 * libtool.m4, ltmain.sh, config.sub, config.guess: Upgrade to 19149 libtool 1.5.14. 19150 191512003-02-24 Hrvoje Niksic <hniksic@xemacs.org> 19152 19153 * configure.in: Don't check for AI_ADDRCONFIG here, it is checked 19154 for in the source directly. 19155 191562003-02-23 Hrvoje Niksic <hniksic@xemacs.org> 19157 19158 * libtool.m4, ltmain.sh, config.sub, config.guess: Upgrade to 19159 libtool 1.5.8. 19160 191612003-01-11 Ian Abbott <abbotti@mev.co.uk> 19162 19163 * src/ftp.c (ftp_retrieve_glob): Reject insecure filenames as determined 19164 by calling new function has_insecure_name_p. This is based on a 19165 patch by Red Hat. 19166 19167 * src/fnmatch.c (has_insecure_name_p): New function: returns non-zero 19168 if filename starts with `/' or contains `../' and is therefore 19169 considered insecure. 19170 19171 * src/fnmatch.h: Declare has_insecure_name_p(). 19172 191732002-08-03 Hrvoje Niksic <hniksic@xemacs.org> 19174 19175 * src/init.c (cmd_file): Allocate RESULT correctly. 19176 191772002-07-24 Hrvoje Niksic <hniksic@xemacs.org> 19178 19179 * src/recur.c (retrieve_tree): Check whether downloaded_html_set is 19180 non-NULL before using it. 19181 191822002-05-27 Ian Abbott <abbotti@mev.co.uk> 19183 19184 * windows/config.h.bor: Do #define WGET_USE_STDARG. 19185 191862002-05-27 Hrvoje Niksic <hniksic@arsdigita.com> 19187 19188 * src/html-parse.c (NAME_CHAR_P): Allow almost any character here. 19189 191902002-05-24 Hrvoje Niksic <hniksic@arsdigita.com> 19191 19192 * src/progress.c (bar_set_params): Fall back to dot progress if the 19193 terminal type is "emacs". 19194 191952002-05-20 Hrvoje Niksic <hniksic@arsdigita.com> 19196 19197 * windows/config.h.ms: Ditto. 19198 19199 * windows/config.h.bor: Don't #define __STDC__. 19200 192012002-05-20 Hrvoje Niksic <hniksic@arsdigita.com> 19202 19203 * src/log.c: Don't #undef WGET_USE_STDARG. 19204 192052002-05-18 Hrvoje Niksic <hniksic@arsdigita.com> 19206 19207 * ALL: Update the license to reflect the OpenSSL exception. 19208 192092002-05-16 Ian Abbott <abbotti@mev.co.uk> 19210 19211 * src/url.c (schemes_are_similar_p): New function to test enumerated 19212 scheme codes for similarity. 19213 19214 * src/url.h: Declare it. 19215 19216 * src/recur.c (download_child_p): Use it to compare schemes. This 19217 also fixes a bug that allows hosts to be spanned (without the 19218 -H option) when the parent scheme is https and the child's is 19219 http or vice versa. 19220 192212002-05-16 Ian Abbott <abbotti@mev.co.uk> 19222 19223 * src/recur.c (download_child_p): Minor optimization to avoid an 19224 unnecessary additional call to schemes_are_similar_p function. 19225 192262002-05-16 Hrvoje Niksic <hniksic@arsdigita.com> 19227 19228 * src/hash.c (prime_size): Store the offset of the prime number in the 19229 prime table. When searching, start with the given offset. 19230 (hash_table_new): Pass the pointer to ht->prime_offset to 19231 prime_size. 19232 (grow_hash_table): Ditto. 19233 (prime_size): Make 13 the first prime to make empty hash tables 19234 slightly smaller. 19235 192362002-05-14 Bill Richardson <bill@riverstonenet.com> 19237 19238 * src/ftp.c (getftp): Don't ftruncate stdout. 19239 19240 * src/http.c (gethttp): Don't ftruncate stdout. 19241 192422002-05-09 Ian Abbott <abbotti@mev.co.uk> 19243 19244 * src/cmpt.c (strptime_internal): Synched with glibc-2.1.3. 19245 (get_number): Ditto. 19246 (get_alt_number): Ditto. 19247 (__isleap): New function-like macro used by strptime. 19248 (day_of_the_week): New function used by strptime. 19249 (day_of_the_year): Ditto. 19250 (__mon_yday): Now shared by mktime and strptime implementations. 19251 192522002-05-08 Hrvoje Niksic <hniksic@arsdigita.com> 19253 19254 * src/cookies.c (check_domain_match): Use match_tail in case 19255 insensitive mode. 19256 19257 * src/utils.c (match_tail): Allow the caller to specify case 19258 insensitive mode. 19259 19260 * src/cookies.c (store_cookie): When expiry_time is 0, print it as 19261 undefined, not indefinite. 19262 192632002-05-07 Ian Abbott <abbotti@mev.co.uk> 19264 19265 * src/cookies.c (cookie_jar_process_set_cookie): Do not store 19266 discarded cookie. 19267 192682002-04012 Ian Abbott <abbotti@mev.co.uk> 19269 19270 * src/http.c (http_loop): Compensate for MS Windows two-second 19271 granularity of file modification time when comparing timestamps. 19272 19273 * src/ftp.c (ftp_retrieve_list): Ditto. 19274 192752002-04-24 Hrvoje Niksic <hniksic@arsdigita.com> 19276 19277 * doc/wget.texi (Robot Exclusion): Explain how to turn off the robot 19278 exclusion support from the command line. 19279 (Wgetrc Commands): Explain that the `robots' variable also takes 19280 effect on the "nofollow" matching. 19281 192822002-04-23 Ian Abbott <abbotti@mev.co.uk> 19283 19284 * windows/config.h.ms: Accounted for MSVC not defining `__STDC__' when 19285 Microsoft's extensions are enabled and define it anyway (set to `1'). 19286 Defined some things that broke as a result of this. 19287 192882002-04-21 Thomas Lussnig <thomas.lussnig@bewegungsmelder.de> 19289 19290 * src/gen_ssl.c: 19291 - allow checking of server cert 19292 - allow defining client cert type 19293 - allow limit of ssl protocol 19294 - check more return values 19295 - added debug message on break 19296 192972002-04-21 Hrvoje Niksic <hniksic@arsdigita.com> 19298 19299 * src/recur.c (download_child_p): Revert order of items in check 19300 number 6 for clarity. 19301 193022002-04-21 Hrvoje Niksic <hniksic@arsdigita.com> 19303 19304 * src/cookies.c (check_domain_match): Allow cookies to be set for 19305 subdomains of unknown top-level domains under some circumstances. 19306 193072002-04-20 Hrvoje Niksic <hniksic@arsdigita.com> 19308 19309 * src/init.c: Ditto. 19310 19311 * src/main.c: Ditto. 19312 19313 * src/http.c: Use the new interface. 19314 19315 * src/cookies.c: Provide an OO-style "cookie jar" interface to enable 19316 separate cookie jars. 19317 19318 * src/http.c (http_atotm): Declare argument as const. 19319 193202002-04-20 Hrvoje Niksic <hniksic@arsdigita.com> 19321 19322 * src/cookies.c (cookie_new): Default to PORT_ANY. 19323 (find_cookie_chain_exact): Only search by DOMAIN. 19324 (find_matching_cookie): Also check that PORT matches. 19325 (store_cookie): Only match the domain. 19326 (set_cookie_header_cb): When a cookie "fakes" a domain, assume it 19327 is valid for that host rather than discarding it completely. 19328 (find_matching_chains): Don't search by PORT. 19329 (matching_cookie): Also match PORT. 19330 (load_cookies): Set the port if specified, otherwise leave it as 19331 ANY. 19332 (save_cookies_mapper): Save the port if specified, otherwise leave 19333 it empty. 19334 193352002-04-20 Hrvoje Niksic <hniksic@arsdigita.com> 19336 19337 * po/de.po: Updated from the TP. 19338 193392002-04-19 Thomas Lussnig <thomas.lussnig@bewegungsmelder.de> 19340 19341 * src/init.c: The option `egdfile' was not in sort order. 19342 193432002-04-16 Hrvoje Niksic <hniksic@arsdigita.com> 19344 19345 * src/http.c (gethttp): If Content-Type is not given, assume 19346 text/html. 19347 193482002-04-16 Hrvoje Niksic <hniksic@arsdigita.com> 19349 19350 * src/ftp.c (getftp): Treat directories that begin with <letter>: as 19351 absolute. 19352 (getftp): Strip trailing slashes from con->id before merging it 19353 with TARGET. 19354 193552002-04-15 Ian Abbott <abbotti@mev.co.uk> 19356 19357 Makefile.in: Updated several dependencies for object files to take 19358 account of nested include files. 19359 193602002-04-15 Ian Abbott <abbotti@mev.co.uk> 19361 19362 Makefile.in: The target `connect$o' (connect.o) now depends on 19363 `utils.h' 19364 193652002-04-15 Ian Abbott <abbotti@mev.co.uk> 19366 19367 * src/host.c (SET_H_ERRNO): New function-like macro to set `h_errno'. 19368 (gethostbyname_with_timeout): Use it. 19369 19370 * src/utils.c: Don't define `SETJMP()', `run_with_timeout_env' or 19371 `abort_run_with_timeout()' when `USE_SIGNAL_TIMEOUT' is undefined. 19372 193732002-04-15 Hrvoje Niksic <hniksic@arsdigita.com> 19374 19375 * src/recur.c (download_child_p): Don't ignore rejection of HTML 19376 documents that are themselves leaves of recursion. 19377 193782002-04-15 Hrvoje Niksic <hniksic@arsdigita.com> 19379 19380 * src/host.c (getaddrinfo_with_timeout): New function. 19381 (gethostbyname_with_timeout): Ditto. 19382 (lookup_host): Use them. 19383 193842002-04-15 Hrvoje Niksic <hniksic@arsdigita.com> 19385 19386 * po/hr.po: Editing the Project-Id-Version to say "wget" rather 19387 than "GNU Wget". 19388 193892002-04-15 Hrvoje Niksic <hniksic@arsdigita.com> 19390 19391 * doc/wget.texi (Download Options): Fix the documentation of 19392 `--progress'. 19393 193942002-04-14 Hrvoje Niksic <hniksic@arsdigita.com> 19395 19396 * src/utils.c (number_to_string): Handle the case when n < -INT_MAX. 19397 193982002-04-14 Hrvoje Niksic <hniksic@arsdigita.com> 19399 19400 * src/retr.c (retrieve_url): Make sure that POST is not honored for 19401 redirections. 19402 19403 * src/http.c (gethttp): Send the POST data when requested. 19404 (post_file): New function. 19405 (gethttp): Use it. 19406 19407 * src/main.c (main): Ditto. 19408 19409 * src/init.c: Add new options. 19410 19411 * src/options.h (struct options): New options post_data and 19412 post_file_name. 19413 194142002-04-14 Hrvoje Niksic <hniksic@arsdigita.com> 19415 19416 * src/main.c (print_help): Document `--post-data' and `--post-file'. 19417 194182002-04-14 Hrvoje Niksic <hniksic@arsdigita.com> 19419 19420 * src/init.c (comind): Use a marginally faster implementation of 19421 binary search. To quote Martin Buchholz, "a nanosecond saved is a 19422 nanosecond earned." 19423 194242002-04-14 Hrvoje Niksic <hniksic@arsdigita.com> 19425 19426 * src/http.c (gethttp): Ditto. 19427 19428 * src/retr.c (retrieve_url): Initialize variables to appease the 19429 compiler. 19430 19431 * src/gen_sslfunc.c (ssl_iread): Don't handle EINTR when calling 19432 select_fd. 19433 (ssl_iwrite): Ditto. 19434 19435 * src/connect.c (select_fd): Rewrite to handle EINTR. Set errno to 19436 ETIMEDOUT in case of timeout. 19437 (iread): No need to handle EINTR when calling select_fd. 19438 (iwrite): Ditto. 19439 194402002-04-14 Hrvoje Niksic <hniksic@arsdigita.com> 19441 19442 * src/connect.c (connect_with_timeout): Firing SIGALRM can result in 19443 connect() exiting with EINTR. Treat EINTR the same as ETIMEDOUT. 19444 194452002-04-14 Hrvoje Niksic <hniksic@arsdigita.com> 19446 19447 * doc/wget.texi (Wgetrc Commands): Document `--limit-rate'. 19448 194492002-04-13 Hrvoje Niksic <hniksic@arsdigita.com> 19450 19451 * src/url.c (getproxy): Accept a struct url argument. This obviates 19452 the need for USE_PROXY_P. 19453 19454 * src/retr.c (retrieve_url): Allow proxy to be a non-FTP URL. 19455 19456 * src/ftp.c (getftp): Recognize FWTK-style proxy. 19457 194582002-04-13 Hrvoje Niksic <hniksic@arsdigita.com> 19459 19460 * src/connect.c (connect_with_timeout): Use it. 19461 19462 * src/utils.c (run_with_timeout): New function. 19463 194642002-04-12 Ian Abbott <abbotti@mev.co.uk> 19465 19466 * windows/config.h.bor: Account for Borland not defining `__STDC__' 19467 when Borland's extensions enabled, and define it anyway. 19468 194692002-04-12 Ian Abbott <abbotti@mev.co.uk> 19470 19471 * windows/Makefile.src.bor: Removed pre-compiled header options as 19472 they increase build time (on my machine). 19473 194742002-04-12 Ian Abbott <abbotti@mev.co.uk> 19475 19476 * src/utils.c (has_html_suffix_p): New function to test filename for 19477 common html extensions. 19478 19479 * src/utils.h: Declare it. 19480 19481 * src/http.c (http_loop): Use it instead of previous test. 19482 19483 * src/retr.c (retrieve_url): Ditto. 19484 19485 * src/recur.c (download_child_p): Ditto. 19486 194872002-04-12 Ian Abbott <abbotti@mev.co.uk> 19488 19489 * src/Makefile.in: Specify libtool mode explicitly when linking. 19490 194912002-04-12 Hrvoje Niksic <hniksic@arsdigita.com> 19492 19493 * src/connect.c (connect_with_timeout): New function. 19494 (connect_to_one): Use it. 19495 19496 * src/config.h.in: Add stubs for HAVE_SIGSETJMP, HAVE_SIGBLOCK, and 19497 HAVE_SETJMP_H. 19498 194992002-04-12 Hrvoje Niksic <hniksic@arsdigita.com> 19500 19501 * src/config.h.in: Only define _VA_LIST when compiled with gcc. 19502 195032002-04-12 Hrvoje Niksic <hniksic@arsdigita.com> 19504 19505 * src/config.h.in: Define _VA_LIST on Solaris to prevent stdio.h from 19506 declaring va_list. 19507 From Kevin Rodgers <kevinr@ihs.com>. 19508 195092002-04-12 Hrvoje Niksic <hniksic@arsdigita.com> 19510 19511 * configure.in: Check for <setjmp.h>. Check for sigsetjmp and 19512 sigblock. 19513 195142002-04-11 Hrvoje Niksic <hniksic@arsdigita.com> 19515 19516 * src/url.c (url_filename): Use compose_file_name regardless of 19517 whether opt.dirstruct is set. 19518 (mkstruct): Don't handle the query and the reencoding of DIR; that 19519 is done in compose_file_name. 19520 195212002-04-11 Hrvoje Niksic <hniksic@arsdigita.com> 19522 19523 * src/progress.c (struct progress_implementation): Use PARAMS when 19524 declaring the parameters of *create, *update, *finish, and 19525 *set_params. 19526 19527 * src/netrc.c: Ditto. 19528 19529 * src/http.c: Reformat some function definitions so that ansi2knr can 19530 read them. 19531 19532 * src/hash.c (struct hash_table): Use the PARAMS macro around 19533 parameters in the declaration of hash_function and test_function. 19534 (prime_size): Spell 2580823717UL and 3355070839UL as (unsigned 19535 long)0x99d43ea5 and (unsigned long)0xc7fa5177 respectively, so 19536 that pre-ANSI compilers can read them. 19537 (find_mapping): Use PARAMS when declaring EQUALS. 19538 (hash_table_put): Ditto. 19539 19540 * src/ftp.h: Wrap the parameters of ftp_index declaration in PARAMS. 19541 19542 * src/cookies.c (cookie_new): Use (unsigned long)0 instead of 0UL, 19543 which was unsupported by pre-ANSI compilers. 19544 19545 From Nelson H. F. Beebe <beebe@math.utah.edu>, for the most part. 19546 195472002-04-11 Hrvoje Niksic <hniksic@arsdigita.com> 19548 19549 * src/progress.c (bar_create): If INITIAL is larger than TOTAL, fix 19550 TOTAL. 19551 (bar_finish): Likewise. 19552 195532002-04-11 Hrvoje Niksic <hniksic@arsdigita.com> 19554 19555 * src/log.c: Set WGET_USE_STDARG if __STDC__ is defined and stdarg.h 19556 is present. 19557 195582002-04-11 Hrvoje Niksic <hniksic@arsdigita.com> 19559 19560 * src/html-url.c (tag_handle_form): New function. Pick up form 19561 actions and mark them for conversion only. 19562 195632002-04-10 Hrvoje Niksic <hniksic@arsdigita.com> 19564 19565 * src/wget.h: Ditto for extern char *exec_name. 19566 19567 * src/options.h: Don't guard against OPTIONS_DEFINED_HERE -- it is 19568 perfectly legal to follow an `extern' with a non-`extern' ones, 19569 provided the types match. 19570 19571 * src/main.c: Don't define OPTIONS_DEFINED_HERE. 19572 195732002-04-10 Hrvoje Niksic <hniksic@arsdigita.com> 19574 19575 * src/progress.c (create_image): Revert to calculating ETA based on 19576 average download speed. 19577 (create_image): Don't print ETA until the download has been active 19578 for at least 3 seconds. 19579 (create_image): When ETA is not available, don't print anything. 19580 The previous version would print --:--. 19581 195822002-04-10 Hrvoje Niksic <hniksic@arsdigita.com> 19583 19584 * src/progress.c (bar_update): Keep updating a subinterval until it 19585 reaches or exceeds a watermark. That way the measurement will be 19586 guaranteed to span a configurable minimum of time. The current 19587 default is 3s in 30 100ms intervals. 19588 195892002-04-10 Hrvoje Niksic <hniksic@arsdigita.com> 19590 19591 * doc/wget.texi: Warn about the dangers of specifying passwords on the 19592 command line and in unencrypted files. 19593 195942002-04-09 Ian Abbott <abbotti@mev.co.uk> 19595 19596 * windows/config.h.bor: define `HACK_BCC_UTIME_BUG'. Define `utime' 19597 as `borland_utime' if `HACK_BCC_UTIME_BUG' is defined. 19598 195992002-04-09 Ian Abbott <abbotti@mev.co.uk> 19600 19601 * src/mswindows.c (borland_utime): New function conditionally defined 19602 when `HACK_BCC_UTIME_BUG' is defined. A reimplementation of 19603 `utime()' as Borland's `utime()' function is broken on Windows 9x 19604 systems. (Original patch by Chin-yuan Kuo <sr1111111@yahoo.com.tw>.) 19605 196062002-04-09 Hrvoje Niksic <hniksic@arsdigita.com> 19607 19608 * src/progress.c (bar_update): Maintain an array of the time it took 19609 to perform previous 30 network reads. 19610 (create_image): Calculate the download speed and ETA based on the 19611 last 30 reads, not the entire download. 19612 (create_image): Make sure that the ETA is not changed more than 19613 once per second. 19614 196152002-04-08 Hrvoje Niksic <hniksic@arsdigita.com> 19616 19617 * src/ftp.c (ftp_loop): Propagate the result of ftp_retrieve_glob. 19618 196192002-03-26 Ian Abbott <abbotti@mev.co.uk> 19620 19621 * windows/wget.dep: Updated several dependencies for object files. 19622 196232002-03-26 Ian Abbott <abbotti@mev.co.uk> 19624 19625 * src/Makefile.in: Updated several dependencies for object files. 19626 196272002-03-20 Ian Abbott <abbotti@mev.co.uk> 19628 19629 * windows/config.h.bor: 19630 * windows/config.h.ms: 19631 Removed conditional cruft that was there for Unix-like systems. 19632 196332002-03-20 Ian Abbott <abbotti@mev.co.uk> 19634 19635 * src/mswindows.c: Include "utils.h". 19636 196372002-03-20 Ian Abbott <abbotti@mev.co.uk> 19638 19639 * * windows/wget.dep: Fix dependencies for target mswindows$o 19640 (mswindows.obj) 19641 196422002-03-19 Chin-yuan Kuo <sr1111111@yahoo.com.tw> 19643 19644 * configure.bat.in: Do not check %BORPATH% as C++Builder compiler 19645 does not use it. 19646 19647 * windows/Makefile.src.bor: 19648 * windows/config.h.bor: 19649 Migrated to free (as in beer) C++Builder compiler. 19650 196512002-03-18 Ian Abbott <abbotti@mev.co.uk> 19652 19653 * src/host.h: Don't include netdb.h on windows. 19654 196552002-03-13 Ian Abbott <abbotti@mev.co.uk> 19656 19657 * configure.bat: Removed (renamed to configure.bat.ini). 19658 19659 * configure.bat.in: New (renamed from configure.bat). 19660 19661 * Makefile.in: Add rule to copy configure.bat.in to configure.bat, 19662 converting line endings to MS-DOS format in the process. 19663 196642002-02-19 Hrvoje Niksic <hniksic@arsdigita.com> 19665 19666 * src/url.c (url_parse): Don't treat '?' as query string separator 19667 when parsing FTP URLs. 19668 196692002-02-19 Hrvoje Niksic <hniksic@arsdigita.com> 19670 19671 * src/recur.c (retrieve_tree): Handle the case when start_url doesn't 19672 parse. 19673 196742002-02-19 Hrvoje Niksic <hniksic@arsdigita.com> 19675 19676 * src/host.h: Include Unix-specific includes #ifndef WINDOWS. 19677 Patch originally provided by Christian Lackas. 19678 196792002-02-19 Andreas Damm <andreas-sourceforge@radab.org> 19680 19681 * src/wget.h (DO_REALLOC_FROM_ALLOCA): Multiply with sizeof(type) when 19682 calling xmalloc and memcpy. 19683 196842002-02-19 Alan Eldridge <alane@geeksrus.net> 19685 19686 * src/host.h: Also include <netinet/in.h> and <sys/socket.h>. 19687 19688 * src/ftp-basic.c: Also include <netinet/in.h>. 19689 196902002-02-11 Christian Lackas <delta@lackas.net> 19691 19692 * src/recur.c: recurive downloading for https fixed. 19693 196942002-02-05 Ian Abbott <abbotti@mev.co.uk> 19695 19696 * src/http.c (gethttp): when -c used, mark already fully retrieved 19697 file as successfully retrieved. 19698 196992002-02-01 Hrvoje Niksic <hniksic@arsdigita.com> 19700 19701 * src/html-url.c (tag_handle_meta): Don't crash on <meta 19702 http-equiv=refresh> where content is missing. 19703 197042002-01-31 Herold Heiko <Heiko.Herold@previnet.it> 19705 19706 * src/ftp-basic.c, host.c: don't include sys/socket.h, arpa/inet.h, 19707 netdb.h on windows. 19708 197092002-01-30 Hrvoje Niksic <hniksic@arsdigita.com> 19710 19711 * src/retr.c (retrieve_url): Remove redirection cycle detection. This 19712 is because some sites legitimately redirect the user back to the 19713 same location, e.g. after an authorization check performed by 19714 another page. MAX_REDIRECTIONS is still used to prevent infinite 19715 redirection loops. 19716 197172002-01-26 Hrvoje Niksic <hniksic@arsdigita.com> 19718 19719 * src/url.c (urlchr_table): Make square braces reserved, so we can 19720 parse http://[::1]/. 19721 (url_parse): Handle host in braces. 19722 (url_string): If url->host contains colons, wrap it in braces. 19723 197242002-01-26 Hrvoje Niksic <hniksic@arsdigita.com> 19725 19726 * src/url.c (url_parse): Allow all hex digits, not only decimal ones, 19727 to form an IP address. 19728 197292002-01-26 Hrvoje Niksic <hniksic@arsdigita.com> 19730 19731 * src/http.c (gethttp): Wrap host name in square brackets if it 19732 contains a colon. 19733 197342002-01-24 Hrvoje Niksic <hniksic@arsdigita.com> 19735 19736 * src/source: Integrated IPv6 support. 19737 Written by Thomas Lussnig <thomas.lussnig@bewegungsmelder.de>. 19738 197392002-01-24 Hrvoje Niksic <hniksic@arsdigita.com> 19740 19741 * src/host.c (lookup_host): Use sizeof(ip4_address) to calculate the 19742 offset. 19743 (address_list_new): Use map_ipv4_to_ip. 19744 (wget_sockaddr_set_address): Convert ADDR to IPv4 before using it 19745 in IPv4 context. 19746 197472002-01-24 Hrvoje Niksic <hniksic@arsdigita.com> 19748 19749 * src/connect.c (resolve_bind_address): New function. 19750 (connect_to_one): Use it. 19751 (bindport): Ditto. 19752 19753 * src/init.c: Don't resolve bind-address here. 19754 19755 * src/host.c (wget_sockaddr_set_address): Would bug out with ADDR == NULL. 19756 197572002-01-17 Hrvoje Niksic <hniksic@arsdigita.com> 19758 19759 * src/netrc.c (parse_netrc): Skip leading whitespace before testing 19760 whether the line is empty. Empty lines still contain the line 19761 terminator. 19762 197632002-01-15 Ian Abbott <abbotti@mev.co.uk> 19764 19765 * src/init.c (cmd_file): Change `\' to `/' for Windows (yes, really!) 19766 (cmd_directory): New function. Like cmd_file(), but strips 19767 trailing directory separators. 19768 (commands): Change action for "dirprefix" from `cmd_file' to 19769 `cmd_directory'. 19770 19771 * src/utils.c (make_directory): Allow intermediate `mkdir' calls to 19772 fail, as not all path components that do not exist should be 19773 directory components, especially under Windows. 19774 197752002-01-15 Hrvoje Niksic <hniksic@arsdigita.com> 19776 19777 * src/gen_sslfunc.c (ssl_iread): Call select on the file descriptor 19778 only if no data is pending in SSL buffers. 19779 From tony@bluetail.com. 19780 197812002-01-15 Hrvoje Niksic <hniksic@arsdigita.com> 19782 19783 * MACHINES: OS X entry by Jonathan Davis. 19784 197852002-01-14 Hrvoje Niksic <hniksic@arsdigita.com> 19786 19787 * src/url.c (parse_uname): URL-decode *USER and *PASSWD. 19788 197892002-01-14 Hrvoje Niksic <hniksic@arsdigita.com> 19790 19791 * src/http.c (gethttp): Invalidate SOCK if get_contents encountered an 19792 error. 19793 197942002-01-14 Hrvoje Niksic <hniksic@arsdigita.com> 19795 19796 * src/headers.c (header_get): Strip trailing whitespace from the 19797 header. 19798 197992002-01-07 Ian Abbott <abbotti@mev.co.uk> 19800 19801 * src/url.c (uri_merge_1): Deal with "net path" relative URL (one that 19802 starts with "//"). 19803 198042001-12-24 Hrvoje Niksic <hniksic@arsdigita.com> 19805 19806 * src/version.c: Wget 1.8.1 is released. 19807 198082001-12-19 Hrvoje Niksic <hniksic@arsdigita.com> 19809 19810 * src/version.c: Wget 1.8.1-pre3 is released. 19811 198122001-12-19 Hrvoje Niksic <hniksic@arsdigita.com> 19813 19814 * src/recur.c (retrieve_tree): Enqueue the canonical representation of 19815 start_url, so that the test against dl_url_file_map works. 19816 198172001-12-19 Hrvoje Niksic <hniksic@arsdigita.com> 19818 19819 * src/log.c (logputs): Check for requested verbosity before printing 19820 anything. 19821 198222001-12-19 Hrvoje Niksic <hniksic@arsdigita.com> 19823 19824 * src/html-url.c (tag_handle_link): Treat the "shortcut icon" link as 19825 inline. 19826 198272001-12-19 Csaba Raduly <csaba.raduly@sophos.com> 19828 19829 * windows/Makefile.watcom: add gen-md5.obj and progress.obj to the 19830 list of "sources" 19831 19832 * configure.bat: add section for Watcom 19833 198342001-12-18 Ian Abbott <abbotti@mev.co.uk> 19835 19836 * src/recur.c (retrieve_tree): Pass on referring URL when retrieving 19837 recursed URL. 19838 198392001-12-18 Hrvoje Niksic <hniksic@arsdigita.com> 19840 19841 * src/recur.c (retrieve_tree): Make a copy of file obtained from 19842 dl_url_file_map because the code calls xfree(file) later. 19843 198442001-12-18 Hrvoje Niksic <hniksic@arsdigita.com> 19845 19846 * src/recur.c (register_html): Maintain a hash table of HTML files 19847 along with the list. Disallow duplicates. 19848 (retrieve_tree): Use downloaded_html_set to check whether the file 19849 found in dl_url_file_map is an HTML file, and descend into it if 19850 so. 19851 (convert_all_links): Don't guard against duplicates in 19852 downloaded_html_list, since they are no longer possible. 19853 198542001-12-17 Hrvoje Niksic <hniksic@arsdigita.com> 19855 19856 * src/version.c: Wget 1.8.1-pre2 is released. 19857 198582001-12-17 Hrvoje Niksic <hniksic@arsdigita.com> 19859 19860 * src/retr.c (sleep_between_retrievals): Simplify indentation. 19861 198622001-12-17 Hrvoje Niksic <hniksic@arsdigita.com> 19863 19864 * src/gen_sslfunc.c (ssl_init_prng): Use random_number to get a byte 19865 of "randomness" at a time. 19866 (ssl_init_prng): Don't seed the PRNG; random_number will do that. 19867 19868 * src/retr.c (sleep_between_retrievals): Use it. Make sure that the 19869 random amount averages in opt.wait. 19870 (sleep_between_retrievals): Don't seed the PRNG; random_number 19871 will do that. 19872 19873 * src/utils.c (random_number): New function. 19874 198752001-12-16 Hrvoje Niksic <hniksic@arsdigita.com> 19876 19877 * doc/wget.texi (Wgetrc Commands): Undocument simple_host_check. 19878 198792001-12-14 Hrvoje Niksic <hniksic@arsdigita.com> 19880 19881 * src/url.c (path_simplify): Move here from utils.c, and make static. 19882 198832001-12-13 Hrvoje Niksic <hniksic@arsdigita.com> 19884 19885 * src/version.c: Wget 1.8.1-pre1 is released. 19886 198872001-12-13 Hrvoje Niksic <hniksic@arsdigita.com> 19888 19889 * src/res.c (matches): Fix broken URL in the docstring. 19890 198912001-12-13 Hrvoje Niksic <hniksic@arsdigita.com> 19892 19893 * src/recur.c (register_download): Don't abort when one URL references 19894 two different files. 19895 198962001-12-13 Hrvoje Niksic <hniksic@arsdigita.com> 19897 19898 * src/init.c (wgetrc_file_name): Print correct message when loading 19899 getenv("WGETRC") fails. 19900 199012001-12-13 Hrvoje Niksic <hniksic@arsdigita.com> 19902 19903 * src/http.c (gethttp): Check for conn->scheme, not u->scheme, before 19904 calling ssl_iwrite. 19905 199062001-12-13 Hrvoje Niksic <hniksic@arsdigita.com> 19907 19908 * src/html-url.c (tag_url_attributes): Mark <embed href=...> as 19909 external. 19910 199112001-12-13 Hrvoje Niksic <hniksic@arsdigita.com> 19912 19913 * po/ja.po: Ditto. 19914 19915 * po/sv.po: Ditto. 19916 19917 * po/de.po: Ditto. 19918 19919 * po/es.po: Ditto. 19920 19921 * po/fr.po: Ditto. 19922 19923 * po/et.po: Ditto. 19924 19925 * po/tr.po: Ditto. 19926 19927 * po/ru.po: Update from TP. 19928 199292001-12-13 Hrvoje Niksic <hniksic@arsdigita.com> 19930 19931 * doc/wget.texi (Robots): Fix broken URLs that point to the webcrawler 19932 web site. 19933 199342001-12-12 Hrvoje Niksic <hniksic@arsdigita.com> 19935 19936 * src/url.c (get_urls_file): Cosmetic changes. 19937 199382001-12-12 Hrvoje Niksic <hniksic@arsdigita.com> 19939 19940 * src/html-url.c (collect_tags_mapper): Break into several functions. 19941 (tag_url_attributes): Collect <embed href=...>. 19942 199432001-12-12 Hrvoje Niksic <hniksic@arsdigita.com> 19944 19945 * src/html-url.c (append_one_url): Resurrect warning when unable to 19946 resolve a relative link. 19947 199482001-12-12 Hrvoje Niksic <hniksic@arsdigita.com> 19949 19950 * configure.in: Autodetect SSL. Check for SSL includes too. 19951 199522001-12-11 Hrvoje Niksic <hniksic@arsdigita.com> 19953 19954 * src/host.c: New type ipv4_address. Use it consistently instead of 19955 `unsigned char[4]' and `unsigned char *'. 19956 (pretty_print_address): Accept a `const void *', to require even 19957 less casting. 19958 199592001-12-11 Hrvoje Niksic <hniksic@arsdigita.com> 19960 19961 * src/ftp-ls.c (ftp_parse_vms_ls): Fix obvious memory leaks. 19962 199632001-12-11 Hrvoje Niksic <hniksic@arsdigita.com> 19964 19965 * doc/wget.texi (HTTP Options): Explain how to make IE produce a 19966 `cookies.txt'-compatible file. 19967 Reported by Herold Heiko. 19968 199692001-12-11 Hrvoje Niksic <hniksic@arsdigita.com> 19970 19971 * doc/texi2pod.pl.in: Handle @asis in table. 19972 199732001-12-11 Hrvoje Niksic <hniksic@arsdigita.com> 19974 19975 * configure.in: Check for md5_calc rather than MD5Update when 19976 looking for Solaris md5. 19977 199782001-12-11 Hrvoje Niksic <hniksic@arsdigita.com> 19979 19980 * config.sub: Ditto. 19981 19982 * config.guess: Ditto. 19983 19984 * aclocal.m4: Ditto. 19985 19986 * ltmain.sh: Upgrade to libtool 1.4.2. 19987 199882001-12-10 Hrvoje Niksic <hniksic@arsdigita.com> 19989 19990 * src/utils.c (path_simplify): Rewrite, with better comments, and 19991 without the use of strcpy to move overlapping blocks. 19992 199932001-12-10 Hrvoje Niksic <hniksic@arsdigita.com> 19994 19995 * src/utils.c (path_simplify): Correctly handle the unlikely case that 19996 b starts out as path + 1. 19997 199982001-12-10 Hrvoje Niksic <hniksic@arsdigita.com> 19999 20000 * src/utils.c (long_to_string): Return a pointer after where the 20001 number ends. 20002 (long_to_string): Rename to number_to_string. 20003 200042001-12-10 Hrvoje Niksic <hniksic@arsdigita.com> 20005 20006 * src/main.c (main): Initialize progress after fork_to_background, so 20007 that it knows when to use dots. 20008 20009 * src/mswindows.c (ws_hangup): Call log_request_redirect_output. 20010 20011 * src/utils.c (fork_to_background): Print the PID of the child 20012 process. 20013 20014 * src/log.c (log_request_redirect_output): Set a flag that output 20015 redirection has been requested. Doing anything else in a signal 20016 handler is unsafe. 20017 (check_redirect_output): New function: check whether redirection 20018 has been requested and, if so, call redirect_output(). 20019 (logputs): Call check_redirect_output. 20020 (logprintf): Ditto. 20021 (debug_logprintf): Ditto. 20022 (redirect_output): Print clearer messages. 20023 20024 * src/main.c (redirect_output_signal): Don't call 20025 redirect_output_signal directly. Instead, call 20026 log_request_redirect_output. 20027 20028 * src/utils.c (memfatal): Ditto. 20029 20030 * src/progress.c (display_image): Use it. 20031 20032 * src/log.c (log_set_save_context): New function: allow the caller to 20033 turn off saving log context lines. 20034 200352001-12-10 Hrvoje Niksic <hniksic@arsdigita.com> 20036 20037 * src/host.c (address_list_set_faulty): Uncomment a sanity check. 20038 200392001-12-09 Hrvoje Niksic <hniksic@arsdigita.com> 20040 20041 * src/version.c: Wget 1.8 is released. 20042 200432001-12-09 Hrvoje Niksic <hniksic@arsdigita.com> 20044 20045 * src/url.c (reencode_string): Declare static. 20046 20047 * src/res.c (registered_specs): Declare static. 20048 20049 * src/progress.c (current_impl_locked): Declare static. 20050 20051 * src/log.c (flush_log_p): Declare static. 20052 (needs_flushing): Ditto. 20053 20054 * src/http.c (digest_authentication_encode): Declare static. 20055 20056 * src/html-url.c (init_interesting): Declare static. 20057 20058 * src/host.c (host_name_addresses_map): Declare static. 20059 20060 * src/cookies.c (find_matching_chains): Declare static. 20061 20062 * src/ftp-ls.c (ftp_parse_vms_ls): Warn about the memory leak 20063 indicated by lint. 20064 20065 * src/utils.c (path_simplify): Remove unused variable STUB_CHAR. 20066 20067 * src/host.c (address_list_set_faulty): Document that INDEX is 20068 currently unused. 20069 20070 * src/url.c (rewrite_shorthand_url): Remove unused variable PATH. 20071 200722001-12-09 Hrvoje Niksic <hniksic@arsdigita.com> 20073 20074 * src/progress.c (create_image): Fix ETA padding when hours are prined. 20075 200762001-12-09 Hrvoje Niksic <hniksic@arsdigita.com> 20077 20078 * src/main.c (main): Remove stray debugging message. 20079 200802001-12-09 Hrvoje Niksic <hniksic@arsdigita.com> 20081 20082 * src/init.c (cmd_spec_progress): Resurrect. Check whether VAL is a 20083 valid progress type before setting it. 20084 200852001-12-09 Hrvoje Niksic <hniksic@arsdigita.com> 20086 20087 * doc/wget.texi: Bump version to 1.8. 20088 200892001-12-08 R.I.P. Deaddog <maddog@linuxhall.org> 20090 20091 * po/zh_TW.po: Updated for 1.8. 20092 200932001-12-08 Hrvoje Niksic <hniksic@arsdigita.com> 20094 20095 * src/version.c: Wget 1.8-pre2 is released. 20096 200972001-12-08 Hrvoje Niksic <hniksic@arsdigita.com> 20098 20099 * po/tr.po: Ditto. 20100 20101 * po/sv.po: Ditto. 20102 20103 * po/ru.po: Ditto. 20104 20105 * po/fr.po: Ditto. 20106 20107 * po/es.po: Ditto. 20108 20109 * po/de.po: Update from TP. 20110 201112001-12-08 Hrvoje Niksic <hniksic@arsdigita.com> 20112 20113 * doc/wget.texi (HTTP Options): Provide more specific information 20114 about how --load-cookies is meant to be used. 20115 201162001-12-08 Hrvoje Niksic <hniksic@arsdigita.com> 20117 20118 * doc/texi2pod.pl: Include the EXAMPLES section. 20119 20120 * doc/wget.texi (Overview): Shorten the man page DESCRIPTION. 20121 (Examples): Redo the Examples chapter. Include it in the man 20122 page. 20123 201242001-12-06 Hrvoje Niksic <hniksic@arsdigita.com> 20125 20126 * src/version.c: Wget 1.8-pre1 is released. 20127 201282001-12-06 Hrvoje Niksic <hniksic@arsdigita.com> 20129 20130 * src/utils.c (read_whole_line): Handle lines beginning with \0. 20131 201322001-12-06 Hrvoje Niksic <hniksic@arsdigita.com> 20133 20134 * src/url.c (scheme_disable): New function. 20135 20136 * src/main.c (main): Call ssl_init_prng from here rather than from 20137 init_ssl, so that it has a chance to disable support for https 20138 before a URL has been resolved. 20139 20140 * src/gen_sslfunc.c (ssl_init_prng): Seed with rand() if all else 20141 failed. 20142 (ssl_init_prng): Disable support for https if seeding the PRNG 20143 fails. 20144 201452001-12-06 Hrvoje Niksic <hniksic@arsdigita.com> 20146 20147 * src/progress.c (progress_handle_sigwinch): Set up the signal again. 20148 20149 * src/utils.c: Include <sys/termios.h>, where Solaris defines 20150 TIOCGWINSZ. 20151 20152 * src/progress.c (bar_create): Don't use the last column on the screen. 20153 (create_image): Pad ETA to constant size. Pad SIZE to nine digits 20154 only until it exceeded them. 20155 201562001-12-06 Hrvoje Niksic <hniksic@arsdigita.com> 20157 20158 * src/progress.c (progress_create): Make sure that, when the output is 20159 redirected, the progress implementation gets changed to the 20160 fallback one. 20161 (bar_set_params): Set current_impl_locked to 1 when "force" is 20162 specified. 20163 (progress_create): Don't change the progress implementation if 20164 current_impl_locked is non-zero. 20165 20166 * src/main.c (redirect_output_signal): Call 20167 progress_schedule_redirect. 20168 20169 * src/progress.c (progress_schedule_redirect): New function. 20170 201712001-12-06 Hrvoje Niksic <hniksic@arsdigita.com> 20172 20173 * src/log.c (logvprintf): Restructure to allow being called multiple 20174 times. 20175 (logprintf): Call logvprintf in a loop. 20176 (debug_logprintf): Ditto. 20177 201782001-12-06 Hrvoje Niksic <hniksic@arsdigita.com> 20179 20180 * src/gen_sslfunc.c (ssl_init_prng): Make the printed message 20181 translatable. 20182 201832001-12-06 Hrvoje Niksic <hniksic@arsdigita.com> 20184 20185 * src/gen_sslfunc.c (ssl_init_prng): Allow the user to disable EGD by 20186 setting egd_file it to empty string. 20187 20188 * src/main.c (main): Change the option name from --sslegdsock to 20189 --egd-file. 20190 201912001-12-06 Hrvoje Niksic <hniksic@arsdigita.com> 20192 20193 * po/et.po: Update from the TP. 20194 201952001-12-06 Hrvoje Niksic <hniksic@arsdigita.com> 20196 20197 * po/de.po: Ditto. 20198 20199 * po/fr.po: Ditto. 20200 20201 * po/tr.po: Ditto. 20202 20203 * po/sv.po: Ditto. 20204 20205 * po/et.po: Update from TP. 20206 20207 * po/hu.po: New file from TP. 20208 202092001-12-06 Hrvoje Niksic <hniksic@arsdigita.com> 20210 20211 * configure.in: Check for <termios.h> 20212 202132001-12-05 Hrvoje Niksic <hniksic@arsdigita.com> 20214 20215 * src/utils.c (path_simplify): Document with test cases. 20216 202172001-12-05 Hrvoje Niksic <hniksic@arsdigita.com> 20218 20219 * src/recur.c (convert_all_links): Guard against duplicates in 20220 downloaded_html_files. 20221 (register_download): Don't invalidate similar-looking URLs. 20222 (match_except_index): New function. 20223 202242001-12-04 Ian Abbott <abbotti@mev.co.uk> 20225 20226 * src/snprintf.c (dopr): Use `unsigned int' as the second argument to 20227 va_arg when casting to `unsigned short' is intended. 20228 202292001-12-04 Hrvoje Niksic <hniksic@arsdigita.com> 20230 20231 * src/url.c (local_quote_string): Reenable quoting of question marks, 20232 but only when `--html-extension' is used. 20233 202342001-12-04 Hrvoje Niksic <hniksic@arsdigita.com> 20235 20236 * src/recur.c (retrieve_tree): Check whether the URL was already 20237 downloaded before downloading it again. 20238 (descend_child_p): Renamed to download_child_p. 20239 (register_download): When one URL is downloaded to a file already 20240 "owned" by another URL, delete all references that map any URL to 20241 that file. 20242 (register_delete_file): New function. 20243 (retrieve_tree): Use it after deleting a file. 20244 20245 * src/url.c (url_parse): Re-canonicalize the URL also if the path is 20246 empty, so that e.g. "http://www.server.com" -> 20247 "http://www.server.com/". 20248 (lowercase_str): Use ISUPPER instead of !ISLOWER. 20249 20250 * src/retr.c (retrieve_url): Use the canonical URL form when calling 20251 register_download(). 20252 202532001-12-04 Hrvoje Niksic <hniksic@arsdigita.com> 20254 20255 * src/gen_sslfunc.c: Ditto. 20256 20257 * src/rbuf.c: Include <string.h>. 20258 202592001-12-04 Herold Heiko <Heiko.Herold@previnet.it> 20260 20261 * windows\Makefile.src: add gen_sslfunc.c 20262 20263 * windows\Makefile.src.bor: ditto. 20264 202652001-12-04 Herold Heiko <Heiko.Herold@previnet.it> 20266 20267 * src/gen_sslfunc.c: on windows provide ssl crypto random 20268 initialization through RAND_screen(); could possibly 20269 be not enough for strong ssl communication (see the 20270 relevant manual page from the openssl package). 20271 202722001-12-03 Hrvoje Niksic <hniksic@arsdigita.com> 20273 20274 * src/version.c: Wget 1.8-beta3 is released. 20275 202762001-12-03 Hrvoje Niksic <hniksic@arsdigita.com> 20277 20278 * src/snprintf.c (dopr): Replace `short int' and `unsigned short int' 20279 with `int' when using it as the second argument to `va_arg'. 20280 202812001-12-03 Hrvoje Niksic <hniksic@arsdigita.com> 20282 20283 * src/snprintf.c (dopr): Cast the result of va_arg to short int and 20284 short unsigned int where these types are expected to be used. 20285 202862001-12-03 Hrvoje Niksic <hniksic@arsdigita.com> 20287 20288 * src/host.c (address_list_new_one): New function. 20289 (lookup_host): Use it. 20290 202912001-12-03 Hrvoje Niksic <hniksic@arsdigita.com> 20292 20293 * src/ftp-basic.c (ftp_port): Don't return HOSTERR if we fail getting 20294 the socket data. 20295 20296 * src/ftp.c: Ditto. 20297 20298 * src/http.c: No need to declare h_errno. 20299 20300 * src/host.c: Declare h_errno. 20301 203022001-12-03 Andre Majorel <amajorel@teaser.fr> 20303 20304 * src/host.c (lookup_host): Don't initialize TMPSTORE directly because 20305 it's not legal C. 20306 203072001-12-02 Hrvoje Niksic <hniksic@arsdigita.com> 20308 20309 * src/version.c: Wget 1.8-beta2 is released. 20310 203112001-12-02 Hrvoje Niksic <hniksic@arsdigita.com> 20312 20313 * src/utils.c (file_merge): If BASE doesn't contain a slash, just 20314 return a copy of FILE. 20315 203162001-12-01 Hrvoje Niksic <hniksic@arsdigita.com> 20317 20318 * src/version.c: Wget 1.8-beta1 is released. 20319 203202001-12-01 Hrvoje Niksic <hniksic@arsdigita.com> 20321 20322 * src/url.c (url_full_path): Document better. 20323 20324 * src/http.c (gethttp): Use the full path when creating digest 20325 authorization. 20326 203272001-12-01 Hrvoje Niksic <hniksic@arsdigita.com> 20328 20329 * src/url.c (replace_attr_refresh_hack): New function. 20330 (convert_links): Call replace_attr_refresh_hack for Refresh 20331 links. It will add the "TMOUT; URL=" junk before the link. 20332 20333 * src/html-url.c (collect_tags_mapper): Set ID to the ID of the 20334 "content" attribute, not "http-equiv". 20335 (collect_tags_mapper): Don't use OFFSET to hack the raw_* values; 20336 instead, store the information that this entry belongs to a 20337 "refresh" link. 20338 203392001-12-01 Hrvoje Niksic <hniksic@arsdigita.com> 20340 20341 * src/url.c (get_urls_file): If opt.base_href is specified, merge each 20342 URL with the base. 20343 203442001-12-01 Hrvoje Niksic <hniksic@arsdigita.com> 20345 20346 * src/recur.c (retrieve_tree): Allow -p retrievals to exceed maximum 20347 depth by more than one. 20348 203492001-12-01 Hrvoje Niksic <hniksic@arsdigita.com> 20350 20351 * src/main.c (print_help): Don't document the removed `-nh'. 20352 203532001-12-01 Hrvoje Niksic <hniksic@arsdigita.com> 20354 20355 * src/ftp.c (getftp): When PWD fails, assume "/". 20356 20357 * src/ftp-basic.c (ftp_syst): Fix indentation. 20358 203592001-12-01 Hrvoje Niksic <hniksic@arsdigita.com> 20360 20361 * src/cookies.c (path_matches): Return 0 if PREFIX doesn't begin with 20362 '/'. 20363 203642001-12-01 Hrvoje Niksic <hniksic@arsdigita.com> 20365 20366 * src/cookies.c (path_matches): FULL_PATH doesn't begin with '/', but 20367 PREFIX does. 20368 203692001-12-01 Hrvoje Niksic <hniksic@arsdigita.com> 20370 20371 * src/cookies.c (check_domain_match): Reimplement to match Netscape's 20372 "preliminary specification" for cookies. 20373 203742001-12-01 Hrvoje Niksic <hniksic@arsdigita.com> 20375 20376 * po/hr.po: Updated Croatian translation. 20377 203782001-12-01 Hrvoje Niksic <hniksic@arsdigita.com> 20379 20380 * doc/wget.texi: Update the manual with the new recursive retrieval 20381 stuff. 20382 203832001-11-30 T. Bharath <TBharath@responsenetworks.com> 20384 20385 * src/http.c (persistent_available_p): Call SHUTDOWN_SSL if 20386 test_socket_open fails. 20387 203882001-11-30 Ingo T. Storm <tux-sparc@computerbild.de> 20389 20390 * doc/sample.wgetrc: Document ftp_proxy, too. 20391 203922001-11-30 Hrvoje Niksic <hniksic@arsdigita.com> 20393 20394 * src/retr.c (retrieve_url): Don't allow more than 20 redirections. 20395 203962001-11-30 Hrvoje Niksic <hniksic@arsdigita.com> 20397 20398 * src/recur.c (retrieve_tree): Skip the non-inline entries when 20399 enqueuing the children of a leaf HTML node in -p mode. 20400 (descend_url_p): Ignore opt.no_parent when in -p mode and UPOS is 20401 "inline". 20402 20403 * src/html-url.c (get_urls_html): Don't accept dash_p_leaf_HTML. 20404 (collect_tags_mapper): When an entry is "inline", mark it as such. 20405 20406 * src/recur.c (descend_url_p): Fix test when checking for 20407 acceptance/rejection rules. 20408 204092001-11-30 Hrvoje Niksic <hniksic@arsdigita.com> 20410 20411 * src/progress.c (display_image): Just print one CR to reset the 20412 cursor position. 20413 204142001-11-30 Christian Fraenkel <c.fraenkel@gmx.net> 20415 20416 * src/init.c: New command `ssl_egd_sock'. 20417 20418 * src/main.c (main): New option `--sslegdsock'. 20419 20420 * src/gen_sslfunc.c (ssl_init_prng): Seed the RNG using EGD. 20421 204222001-11-29 Hrvoje Niksic <hniksic@arsdigita.com> 20423 20424 * src/recur.c (descend_url_p): When resolving no_parent, compare with 20425 start_url, not parent url. Otherwise link from /a/b/ to /a/c/ 20426 wouldn't be followed, although the download started from /a/. 20427 204282001-11-29 Hrvoje Niksic <hniksic@arsdigita.com> 20429 20430 * src/http.c (http_process_range): Accept the broken output of 20431 "JavaWebServer/1.1.1". 20432 204332001-11-29 Hrvoje Niksic <hniksic@arsdigita.com> 20434 20435 * src/host.c (address_list_new): Initialize al->faulty. 20436 204372001-11-29 Hrvoje Niksic <hniksic@arsdigita.com> 20438 20439 * src/headers: Guard against header files being included twice. 20440 204412001-11-29 Hrvoje Niksic <hniksic@arsdigita.com> 20442 20443 * src/gen-md5.c: Use unsigned char * as the buffer argument to 20444 gen_md5_update. 20445 204462001-11-29 Hrvoje Niksic <hniksic@arsdigita.com> 20447 20448 * src/connect.h: Declare select_fd. 20449 204502001-11-29 Hrvoje Niksic <hniksic@arsdigita.com> 20451 20452 * src/cmpt.c (memmove): Include a simple memmove implementation. 20453 204542001-11-29 Hrvoje Niksic <hniksic@arsdigita.com> 20455 20456 * configure.in: Use SSL's MD5 if we're compiling with SSL anyway. 20457 204582001-11-28 Hrvoje Niksic <hniksic@arsdigita.com> 20459 20460 * src/progress.c (dot_set_params): If PARAMS is unspecified, use 20461 dot_style, if available. 20462 20463 * src/init.c: Ditto. 20464 20465 * src/main.c (main): Resurect --dot-style. 20466 20467 * src/progress.c (dot_finish): Print the quantity if we're left at the 20468 beginning of a row. 20469 204702001-11-27 Ian Abbott <abbotti@mev.co.uk> 20471 20472 * src/retr.c (retrieve_from_file): Initialize `new_file' to NULL to 20473 prevent seg fault. 20474 204752001-11-27 Hrvoje Niksic <hniksic@arsdigita.com> 20476 20477 * src/url.c (convert_links): Don't translate %d-%d. 20478 20479 * src/main.c (print_help): Remove stray HAVE_RANDOM code. 20480 204812001-11-27 Hrvoje Niksic <hniksic@arsdigita.com> 20482 20483 * src/progress.c: Change the default progress implementation to "bar". 20484 204852001-11-27 Hrvoje Niksic <hniksic@arsdigita.com> 20486 20487 * src/progress.c (bar_create): Print two newlines. 20488 204892001-11-27 Hrvoje Niksic <hniksic@arsdigita.com> 20490 20491 * src/ftp.c (getftp): Improve output after sending PASV. Don't 20492 attempt to "look up" the IP address we already know; call 20493 connect_to_one directly. 20494 204952001-11-27 Hrvoje Niksic <hniksic@arsdigita.com> 20496 20497 * src/connect.c (connect_to_many): Use address_list_set_faulty to 20498 prevent the faulty address from being reused. 20499 20500 * src/host.c (address_list_set_faulty): New function. 20501 (address_list_get_bounds): New function, instead of 20502 address_list_count. 20503 205042001-11-27 Hrvoje Niksic <hniksic@arsdigita.com> 20505 20506 * src/cmpt.c (random): Removed. 20507 20508 * src/retr.c (sleep_between_retrievals): Use the more portable rand() 20509 instead of random(). 20510 205112001-11-27 Hrvoje Niksic <hniksic@arsdigita.com> 20512 20513 * src/cmpt.c (random): New function, a simple-minded replacement for 20514 random() on systems that don't have it. 20515 205162001-11-27 Hrvoje Niksic <hniksic@arsdigita.com> 20517 20518 * po/hr.po: Updated. 20519 205202001-11-27 Hrvoje Niksic <hniksic@arsdigita.com> 20521 20522 * configure.in: Don't check for random. 20523 205242001-11-27 Hrvoje Niksic <hniksic@arsdigita.com> 20525 20526 * configure.in: Check for random. 20527 205282001-11-26 Ian Abbott <abbotti@mev.co.uk> 20529 20530 * src/http.c (gethttp): fix undeclared variable 'err' when compiled 20531 with HAVE_SSL. 20532 205332001-11-26 Hrvoje Niksic <hniksic@arsdigita.com> 20534 20535 * src/recur.c (retrieve_tree): In case of followed redirection, 20536 blacklist the pre-redirection URL. 20537 205382001-11-26 Hrvoje Niksic <hniksic@arsdigita.com> 20539 20540 * src/recur.c (descend_redirect_p): New function. 20541 (retrieve_tree): Make sure redirections are not blindly followed. 20542 205432001-11-26 Hrvoje Niksic <hniksic@arsdigita.com> 20544 20545 * src/progress.c: Don't allocate new timers; use the timing data 20546 propagated from the caller. 20547 20548 * src/retr.c (get_contents): Allocate and use a timer. 20549 205502001-11-26 Hrvoje Niksic <hniksic@arsdigita.com> 20551 20552 * src/http.c (last_host_ip): Made into an address_list. 20553 (invalidate_persistent): Release pc_last_host_ip. 20554 (register_persistent): Use lookup_host. 20555 (persistent_available_p): Check for equality of hosts using 20556 address_list_match_all. Call address_list_release. 20557 (http_cleanup): New function. 20558 20559 * src/ftp.c (getftp): Use lookup_host and connect_to_many. 20560 20561 * src/http.c (gethttp): Use lookup_host and connect_to_many. 20562 20563 * src/connect.c (make_connection): Removed. 20564 (connect_to_one): New function. 20565 (connect_to_many): Ditto. 20566 (set_connection_host_name): Ditto. 20567 20568 * src/host.c (lookup_host): New function; new return type. 20569 (address_list_new): New function. 20570 (address_list_count): Ditto. 20571 (address_list_copy_one): Ditto. 20572 (address_list_delete): Ditto. 20573 (address_list_release): Ditto. 20574 (pretty_print_address): Ditto. 20575 205762001-11-26 Hrvoje Niksic <hniksic@arsdigita.com> 20577 20578 * src/config.h.in: Put a HAVE_USLEEP stub. 20579 20580 * src/cmpt.c (usleep): Replacement implementation of usleep using 20581 select. 20582 20583 * src/init.c: New option init_rate. 20584 20585 * src/main.c (main): New option --limit-rate. 20586 20587 * src/retr.c (limit_bandwidth): New function. 20588 (get_contents): Call it to limit the bandwidth used when 20589 downloading. 20590 20591 * src/progress.c (dot_update): Would print the wrong download speed on 20592 rows other than the first one when the download was continued. 20593 (dot_finish): Ditto. 20594 205952001-11-26 Hrvoje Niksic <hniksic@arsdigita.com> 20596 20597 * configure.in: Check for usleep. 20598 205992001-11-25 Hrvoje Niksic <hniksic@arsdigita.com> 20600 20601 * util/dist-wget: New file: the script used for building Wget. 20602 206032001-11-25 Hrvoje Niksic <hniksic@arsdigita.com> 20604 20605 * src/url.c (reencode_string): Use unsigned char, not char -- 20606 otherwise the hex digits come out wrong for 8-bit chars such as 20607 nbsp. 20608 (lowercase_str): New function. 20609 (url_parse): Canonicalize u->url if needed. 20610 (get_urls_file): Parse each URL, and return only the valid ones. 20611 (free_urlpos): Call url_free. 20612 (mkstruct): Add :port if the port is non-standard. 20613 (mkstruct): Append the query string to the file name, if any. 20614 (urlpath_length): Use strpbrk_or_eos. 20615 (uri_merge_1): Handle the cases where LINK is an empty string, 20616 where LINK consists only of query, and where LINK consists only of 20617 fragment. 20618 (convert_links): Count and report both kinds of conversion. 20619 (downloaded_file): Use a hash table, not a list. 20620 (downloaded_files_free): Free the hash table. 20621 20622 * src/retr.c (retrieve_from_file): Ditto. 20623 20624 * src/main.c (main): Call either retrieve_url or retrieve_tree 20625 for each URL, not both. 20626 20627 * src/retr.c (register_all_redirections): New function. 20628 (register_redirections_mapper): Ditto. 20629 (retrieve_url): Register the redirections. 20630 (retrieve_url): Make the string "Error parsing proxy ..." 20631 translatable. 20632 20633 * src/res.c (add_path): Strip leading slash from robots.txt paths so 20634 that the path representations are "compatible". 20635 (free_specs): Free each individual path, too. 20636 (res_cleanup): New function. 20637 (cleanup_hash_table_mapper): Ditto. 20638 20639 * src/recur.c (url_queue_new): New function. 20640 (url_queue_delete): Ditto. 20641 (url_enqueue): Ditto. 20642 (url_dequeue): Ditto. 20643 (retrieve_tree): New function, replacement for recursive_retrieve. 20644 (descend_url_p): New function. 20645 (register_redirection): New function. 20646 20647 * src/progress.c (create_image): Cosmetic changes. 20648 20649 * src/init.c (cleanup): Do all those complex cleanups only if 20650 DEBUG_MALLOC is defined. 20651 20652 * src/main.c: Removed --simple-check and the corresponding 20653 simple_host_check in init.c. 20654 20655 * src/html-url.c (handle_link): Parse the URL here, and propagate the 20656 parsed URL to the caller, who would otherwise have to parse it 20657 again. 20658 20659 * src/host.c (xstrdup_lower): Moved to utils.c. 20660 (realhost): Removed. 20661 (same_host): Ditto. 20662 206632001-11-25 Hrvoje Niksic <hniksic@arsdigita.com> 20664 20665 * src/url.c (convert_links): Handle CO_NULLIFY_BASE. 20666 20667 * src/recur.c (retrieve_tree): Ignore download-ignorable children. 20668 (convert_all_links): Specify CO_NULLIFY_BASE when link_base_p. 20669 20670 * src/html-url.c (handle_link): Return the newly created urlpos. 20671 (collect_tags_mapper): When dealing with BASE, store the base 20672 reference and mark it as download-ignorable. 20673 206742001-11-25 Hrvoje Niksic <hniksic@arsdigita.com> 20675 20676 * src/url.c (convert_links): Attempt to quote '?' as "%3F" when 20677 linking to local files. Given up on the attempt, as it breaks 20678 local browsing. 20679 206802001-11-25 Hrvoje Niksic <hniksic@arsdigita.com> 20681 20682 * src/recur.c (descend_url_p): Be more conservative with blacklisting 20683 URLs. 20684 (convert_all_links): Print how many files have been converted, and 20685 how long it took. 20686 20687 * src/progress.c (create_image): Place the number of downloaded bytes 20688 right after the progress bar. 20689 20690 * src/utils.c (suffix): Return a pointer into the string. 20691 206922001-11-25 Hrvoje Niksic <hniksic@arsdigita.com> 20693 20694 * src/progress.c (dot_create): Align the "[ skipping ... ]" string 20695 with the dots. 20696 20697 * src/retr.c (rate): Split into two functions: calc_rate and 20698 retr_rate. 20699 20700 * src/progress.c (create_image): Draw a dummy progress bar even when 20701 total size is unknown. 20702 (display_image): Place the text cursor at the end of the "image". 20703 207042001-11-25 Hrvoje Niksic <hniksic@arsdigita.com> 20705 20706 * src/main.c (private_initialize): Removed. 20707 (main): Don't call private_initialize. 20708 20709 * src/http.c: Call lookup_host. 20710 20711 * src/host.c (host_init): Removed. 20712 (add_host_to_cache): Initialize host_name_address_map here, on 20713 demand. 20714 (ngethostbyname): Commented out. 20715 20716 * src/connect.c (make_connection): Remove dead code; use lookup_host. 20717 20718 * src/host.c (store_hostaddress): Renamed to lookup_host and reversed 20719 the args. 20720 Removed host_address_name_map and host_slave_master_map. 20721 207222001-11-24 Hrvoje Niksic <hniksic@arsdigita.com> 20723 20724 * src/utils.c (path_simplify): Preserver the (non-)existence of 20725 leading slash. Return non-zero if changes were made. 20726 207272001-11-24 Hrvoje Niksic <hniksic@arsdigita.com> 20728 20729 * src/retr.c (retrieve_url): When the redirection URL doesn't parse, 20730 print the correct error message rather than "UNKNOWN". 20731 207322001-11-24 Hrvoje Niksic <hniksic@arsdigita.com> 20733 20734 * src/recur.c (recursive_retrieve): Fix typo. 20735 207362001-11-24 Hrvoje Niksic <hniksic@arsdigita.com> 20737 20738 * src/progress.c (bar_update): Don't modify bp->total_length if it is 20739 zero. 20740 207412001-11-24 Hrvoje Niksic <hniksic@arsdigita.com> 20742 20743 * src/progress.c (bar_finish): If the timer didn't record any time 20744 since the download beginning, fake 1ms. 20745 207462001-11-23 Lemble Gregory <gregory.lemble@st.com> 20747 20748 * src/gen_sslfunc.c (ssl_init_prng): New function; seed the SSL RNG. 20749 207502001-11-23 Hrvoje Niksic <hniksic@arsdigita.com> 20751 20752 * src/utils.c (determine_screen_width): New function. 20753 20754 * src/main.c (main): New option `--progress=TYPE'. 20755 (main): Implement compatibility with the old option `--dot-style'. 20756 20757 * src/init.c: Removed cmd_spec_dotstyle -- that logic is now in 20758 dp_set_params. 20759 (cmd_spec_progress): New function. 20760 20761 * src/retr.c (get_contents): Use the progress_* functions instead of 20762 the old show_progress(). 20763 (show_progress): Removed. 20764 (rate): Print "xxxx.xx K/s" instead of "KB/s". Ditto for MB/s, 20765 etc. 20766 20767 * src/progress.c (set_progress_implementation): New function. 20768 (valid_progress_implementation_p): Ditto. 20769 (progress_create): Ditto. 20770 (progress_update): Ditto. 20771 (progress_finish): Ditto. 20772 (dp_create): Ditto. 20773 (dp_update): Ditto. 20774 (dp_finish): Ditto. 20775 (dp_set_params): Ditto. 20776 (print_elapsed): Ditto. 20777 207782001-11-23 Hrvoje Niksic <hniksic@arsdigita.com> 20779 20780 * src/progress.c: Renamed dp_* functions to dot_* for greater clarity 20781 and consistency with bar_*. 20782 (print_download_speed): Get rid of the unneeded '@' character. 20783 (create_image): Fix download rate geometry. 20784 20785 * src/progress.c (print_elapsed): Remove spurious space. 20786 (print_elapsed): Renamed to print_download_speed, since that's 20787 what it does. 20788 207892001-11-23 Hrvoje Niksic <hniksic@arsdigita.com> 20790 20791 * src/progress.c (create_image): Don't translate "%ld ". 20792 207932001-11-23 Hrvoje Niksic <hniksic@arsdigita.com> 20794 20795 * src/progress.c (bar_update): If the downloaded amount becomes larger 20796 than the expected amount, adjust the expected amount accordingly. 20797 207982001-11-23 Hrvoje Niksic <hniksic@arsdigita.com> 20799 20800 * src/progress.c (bar_set_params): Allow the user to force the use of 20801 the bar. 20802 208032001-11-23 Hrvoje Niksic <hniksic@arsdigita.com> 20804 20805 * po/wget.pot: Rebuild. 20806 20807 * po/POTFILES.in: Update with the new source files. 20808 208092001-11-23 Hrvoje Niksic <hniksic@arsdigita.com> 20810 20811 * po/hr.po: A major overhaul. 20812 208132001-11-23 Hrvoje Niksic <hniksic@arsdigita.com> 20814 20815 * doc/wget.texi (Download Options): Document the new `--progress' 20816 option. 20817 208182001-11-23 Hrvoje Niksic <hniksic@arsdigita.com> 20819 20820 * configure.in: Check for sys/ioctl.h. 20821 208222001-11-22 Jochen Hein <jochen@jochen.org> 20823 20824 * src/main.c (main): Split the copyright notice for easier 20825 translation. 20826 208272001-11-22 Hrvoje Niksic <hniksic@arsdigita.com> 20828 20829 * windows/Makefile.doc: Update docs generation. 20830 208312001-11-22 Hrvoje Niksic <hniksic@arsdigita.com> 20832 20833 * src/utils.c (path_simplify): Don't remove trailing slashes. 20834 20835 * src/ftp.c (ftp_get_listing): Use it. 20836 20837 * src/utils.c (file_merge): New function. 20838 20839 * src/url.c (opt_url): Removed. 20840 20841 * src/recur.c (recursive_retrieve): Inline "opt_url" logic. 20842 20843 * src/main.c (main): Use xfree(), not free(). 20844 20845 * src/url.c (rewrite_url_maybe): Renamed to rewrite_shorthand_url. 20846 20847 * src/ftp.c (ccon): Move `ccon' typedef here, since it's only used 20848 internally. 20849 20850 * src/config.h.in: Include a stub for HAVE_STRPBRK. 20851 20852 * src/cmpt.c (strpbrk): Include a replacement for systems without 20853 strpbrk(). 20854 20855 * src/ftp.c: Use url_set_dir and url_set_file when modifying the URL. 20856 20857 * src/url.c (url_set_dir): New function. 20858 (url_set_file): Ditto. 20859 20860 * src/ftp-basic.c (ftp_process_type): Process FTP type here; the URL 20861 parser makes the URL "params" available, so we can do that in this 20862 function. 20863 20864 * src/retr.c: Ditto. 20865 20866 * src/ftp.c: Ditto; pass the local file information in `ccon'. 20867 20868 * src/http.c: Get rid of the ugly kludge that had URL being replaced 20869 with the proxy URL when proxy retrieval was requested. Use a 20870 separate parameter to http_loop and gethttp for the proxy URL. 20871 20872 * src/http.c: Changed to reflect the fact that local file, proxy, and 20873 referer information are no longer stored in struct url. The local 20874 file information is passed in `struct hstat' now. 20875 20876 * src/url.c: Reworked URL parsing to be more regular. Reencode the 20877 URL using reencode_string. 20878 Removed non-URL-related information from struct url. This 20879 includes fields `proxy', `local', and `referer'. 20880 208812001-11-22 Hrvoje Niksic <hniksic@arsdigita.com> 20882 20883 * src/retr.c (show_progress): Use it. 20884 20885 * src/log.c (log_set_flush): New function. 20886 208872001-11-22 Hrvoje Niksic <hniksic@arsdigita.com> 20888 20889 * doc/wget.texi (Proxies): Fix typo. 20890 (Proxies): Sync the text with the example. 20891 (Wgetrc Commands): There is no -f option. It's --follow-ftp. 20892 Reported by Wojtek Kotwica. 20893 208942001-11-22 Hrvoje Niksic <hniksic@arsdigita.com> 20895 20896 * configure.in: Check for strpbrk(). 20897 208982001-11-22 Herold Heiko <Heiko.Herold@previnet.it> 20899 20900 * windows/Readme 20901 * windows/Makefile.doc 20902 Windows documentation update. 20903 * windows/Makefile.src 20904 Cleanup config.h 20905 209062001-11-20 Hrvoje Niksic <hniksic@arsdigita.com> 20907 20908 * src/url.c (parseurl): Don't depend on the now-obsolete TYPE. 20909 209102001-11-19 Hrvoje Niksic <hniksic@arsdigita.com> 20911 20912 * src/url.c: Clean up handling of URL schemes. 20913 209142001-11-19 Hrvoje Niksic <hniksic@arsdigita.com> 20915 20916 * src/url.c (getproxy): Handle URL shorthands. 20917 209182001-11-19 Hrvoje Niksic <hniksic@arsdigita.com> 20919 20920 * src/main.c: Remove --wait / --waitretry backwards compatibility 20921 code. 20922 209232001-11-19 Hrvoje Niksic <hniksic@arsdigita.com> 20924 20925 * src/main.c (main): Use it. 20926 20927 * src/url.c (rewrite_url_maybe): New function. 20928 209292001-11-18 Hrvoje Niksic <hniksic@arsdigita.com> 20930 20931 * src/version.c: Wget 1.7.1 is released. 20932 209332001-11-18 Hrvoje Niksic <hniksic@arsdigita.com> 20934 20935 * src/res.c (res_register_specs): Initialize OLD and HP_OLD to appease 20936 the compiler. 20937 209382001-11-18 Hrvoje Niksic <hniksic@arsdigita.com> 20939 20940 * src/md5.h: Renamed to gnu-md5.h. 20941 20942 * src/md5.c: Renamed to gnu-md5.c. 20943 20944 * src/http.c: Ditto. 20945 20946 * src/ftp-opie.c: Use the new macros. 20947 20948 * src/sysdep.h: Define md5-related macros. 20949 20950 * src/config.h.in: Define HAVE_SOLARIS_MD5 or HAVE_BUILTIN_MD5 20951 depending on which md5 implementation is used. 20952 209532001-11-18 Hrvoje Niksic <hniksic@arsdigita.com> 20954 20955 * src/http.c (gethttp): Print the whole response line when printing 20956 headers is requested. 20957 209582001-11-18 Hrvoje Niksic <hniksic@arsdigita.com> 20959 20960 * src/Makefile.in: Conditionally compile getopt.o. 20961 209622001-11-18 Hrvoje Niksic <hniksic@arsdigita.com> 20963 20964 * po/: Installed ja.po, et.po, he.po, fr.po, da.po, uk.po, es.po, 20965 sl.po, nl.po from the Translation Project. 20966 209672001-11-18 Hrvoje Niksic <hniksic@arsdigita.com> 20968 20969 * configure.in: Check for getopt_long in libc. 20970 209712001-11-18 Hrvoje Niksic <hniksic@arsdigita.com> 20972 20973 * configure.in: Check for Solaris libmd5. 20974 209752001-11-17 Hrvoje Niksic <hniksic@arsdigita.com> 20976 20977 * doc/Makefile.in (install.info): If info files from the build 20978 directory are not available, use the ones from $(srcdir). 20979 209802001-11-16 Peter Farmer <peter.farmer@zveno.com> 20981 20982 * doc/Makefile.in: Use $? instead of $<. Use TEXI2POD more 20983 consistently. 20984 209852001-11-16 Hrvoje Niksic <hniksic@arsdigita.com> 20986 20987 * src/html-parse.c (map_html_tags): Support XML-style empty tags. 20988 209892001-11-16 Hrvoje Niksic <hniksic@arsdigita.com> 20990 20991 * src/html-parse.c (advance_declaration): Use 0x22 instead of '"' or 20992 '\"'. Different compilers' assert macros are broken in different 20993 ways. 20994 209952001-11-16 Hrvoje Niksic <hniksic@arsdigita.com> 20996 20997 * src/headers.c (header_extract_number): Ignore trailing whitespace. 20998 209992001-11-16 Chris Seawood <cls@seawood.org> 21000 21001 * src/init.c: Ditto. 21002 21003 * src/host.c: Ditto. 21004 21005 * src/connect.c: Ditto. 21006 21007 * src/sysdep.h: Support compilation under BEOS. 21008 210092001-11-04 Alan Eldridge <alane@geeksrus.net> 21010 21011 * src/config.h.in: added HAVE_RANDOM. 21012 21013 * src/options.h: added random_wait to struct options. 21014 21015 * src/main.c (print_help [HAVE_RANDOM], main): added arg parsing, help 21016 for --random-wait. 21017 21018 * src/retr.c (sleep_between_retrievals) [HAVE_RANDOM]: added 21019 implementation of random wait times. 21020 21021 * src/init.c (commands): added "randomwait" keyword. 21022 210232001-11-04 Alan Eldridge <alane@geeksrus.net> 21024 21025 * doc/wget.texi: Document --random-wait, randomwait=on/off. 21026 210272001-10-31 Daniel BODEA <dali@dali-designs.com> 21028 21029 * src/netrc.c (search_netrc): When slack_default is 0, still look for 21030 an account with matching password, just not the "default account". 21031 HTTP Authorization using .netrc should now work as expected. 21032 210332001-09-29 Christian Fraenkel <c.fraenkel@gmx.net> 21034 21035 * src/http.c (gethttp): print debug output for errors occuring during 21036 the ssl handshake. 21037 210382001-08-24 Ian Abbott <abbotti@mev.co.uk> 21039 21040 * src/html-url.c (collect_tags_mapper): Fix bug converting links 21041 with -k option for tags with multiple link attributes by 21042 handling links in the order they appear. 21043 210442001-08-21 Dave Turner <dct25@hermes.cam.ac.uk> 21045 21046 * src/ftp-basic.c (ftp_size): New function to send non-standard SIZE 21047 command to server to request file size. 21048 * src/ftp.h (ftp_size): Export it. 21049 * src/ftp.c (getftp): Use new ftp_size function if restoring 21050 transfer of a file with unknown size. 21051 210522001-08-15 Ian Abbott <abbotti@mev.co.uk> 21053 21054 * src/ftp.c (ftp_loop_internal): Avoid a potential buffer overflow in 21055 the call to the 'rate' function by moving it past the error 21056 checking for the 'getftp' function return value. 21057 210582001-06-26 Hrvoje Niksic <hniksic@arsdigita.com> 21059 21060 * src/wget.h (DO_REALLOC_FROM_ALLOCA): Set SIZEVAR after the memcpy() 21061 call because it needs the old value. 21062 210632001-06-26 Hrvoje Niksic <hniksic@arsdigita.com> 21064 21065 * src/wget.h (DO_REALLOC_FROM_ALLOCA): Check for do_realloc_newsize in 21066 loop condition because we're no longer setting SIZEVAR here. 21067 210682001-06-18 Hrvoje Niksic <hniksic@arsdigita.com> 21069 21070 * src/url.c (url_filename): Make sure that slashes that sneak in to 21071 u->file via query string get protected. 21072 (file_name_protect_query_string): New function. 21073 210742001-06-18 Hrvoje Niksic <hniksic@arsdigita.com> 21075 21076 * src/cookies.c (ATTR_NAME_CHAR): Allow almost any character to be in 21077 an attribute name. 21078 210792001-06-16 Hrvoje Niksic <hniksic@arsdigita.com> 21080 21081 * doc/wget.texi: Updated version to 1.7.1. 21082 210832001-06-16 Hrvoje Niksic <hniksic@arsdigita.com> 21084 21085 * MACHINES: Added mips-sgi-irix6.5, as reported by Edward 21086 J. Sabol. 21087 210882001-06-15 Hrvoje Niksic <hniksic@arsdigita.com> 21089 21090 * po/da.po: New version from TP. 21091 210922001-06-15 Hrvoje Niksic <hniksic@arsdigita.com> 21093 21094 * doc/Makefile.in (install.wgetrc): Use $(DESTDIR) when testing 21095 whether $(WGETRC) exists. 21096 210972001-06-15 Hrvoje Niksic <hniksic@arsdigita.com> 21098 21099 * doc/Makefile.in (install.wgetrc): Take $(DESTDIR) into account when 21100 running mkinstalldirs. 21101 211022001-06-15 Hrvoje Niksic <hniksic@arsdigita.com> 21103 21104 * config.sub: New version from libtool 1.4. 21105 21106 * config.guess: New version from libtool 1.4. 21107 21108 * ltmain.sh: New version from libtool 1.4. 21109 21110 * aclocal.m4: Imported `libtool.m4' from libtool 1.4. 21111 21112 * ltconfig: Removed. 21113 21114 * configure.in: First check the compiler, then invoke libtool. 21115 211162001-06-15 Adam J. Richter <adam@yggdrasil.com> 21117 21118 * doc/Makefile.in (install.wgetrc): Make `make install' 21119 non-interactive in all cases. 21120 211212001-06-14 Maciej W. Rozycki <macro@ds2.pg.gda.pl> 21122 21123 * configure.in: Use `libtool' to test linking of external 21124 libraries. 21125 211262001-06-14 Hrvoje Niksic <hniksic@arsdigita.com> 21127 21128 * src/sysdep.h (MAP_FAILED): Provide MAP_FAILED for systems that don't 21129 define it. 21130 211312001-06-14 Hrvoje Niksic <hniksic@arsdigita.com> 21132 21133 * src/recur.c (recursive_retrieve): Also check undesirable_urls with 21134 canonicalized URL. 21135 211362001-06-14 Hrvoje Niksic <hniksic@arsdigita.com> 21137 21138 * src/http.c (gethttp): Search `.netrc' with real host, not the proxy 21139 one. 21140 211412001-06-14 Hrvoje Niksic <hniksic@arsdigita.com> 21142 21143 * po/: Install new files from the TP: sv.po, cs.po, et.po, tr.po, 21144 es.po, de.po, gl.po, sk.po, ru.po, fr.po. 21145 211462001-06-14 Hrvoje Niksic <hniksic@arsdigita.com> 21147 21148 * configure.in: Check for both gethostbyname and inet_ntoa before 21149 concluding that -lnsl is not needed. 21150 211512001-06-09 Jan Prikryl <prikryl@cg.tuwien.ac.at> 21152 21153 * src/ftp.h: Provide correct prototype for ftp_parse_ls(). 21154 211552001-06-08 Edward J. Sabol <sabol@alderaan.gsfc.nasa.gov> 21156 21157 * src/url.c (url_equal): Fix a memory leak when parseurl returns an 21158 error on the second URL. Also, since url_equal is not used at the 21159 moment, do not compile it. 21160 21161 * src/url.h: Ditto for the prototype of url_equal. 21162 211632001-06-05 Jan Prikryl <prikryl@cg.tuwien.ac.at> 21164 21165 * po/cs.po: Updated to match the 1.7 POT. 21166 211672001-06-05 Jan Prikryl <prikryl@cg.tuwien.ac.at> 21168 21169 * doc/Makefile.in (wget.info): Added -I$(srcdir) to support compilation 21170 outside the source tree. 21171 (install.man): Replaced $(srcdir)$(MAN) with $(MAN). The former 21172 did not work when compiling outside the source tree. 21173 211742001-06-04 Hrvoje Niksic <hniksic@arsdigita.com> 21175 21176 * src/version.c: Wget 1.7 is released. 21177 211782001-06-04 Hrvoje Niksic <hniksic@arsdigita.com> 21179 21180 * po/: New versions of de.po and gl.po from the TP. 21181 211822001-06-03 Karl Eichwalder <ke@suse.de> 21183 21184 * src/ftp-ls.c (ftp_parse_ls): Fix typo. 21185 211862001-06-03 Hrvoje Niksic <hniksic@arsdigita.com> 21187 21188 * po/wget.pot: Updated. 21189 211902001-06-03 Hrvoje Niksic <hniksic@arsdigita.com> 21191 21192 * po/hr.po: Updated to match the new POT. 21193 211942001-06-03 Hrvoje Niksic <hniksic@arsdigita.com> 21195 21196 * po/es.po: Use the version from TP. 21197 211982001-06-02 R.I.P. Deaddog <maddog@linuxhall.org> 21199 21200 * po/zh_TW.po: Updated for 1.7. 21201 212022001-06-02 Hrvoje Niksic <hniksic@arsdigita.com> 21203 21204 * po/pl.po: Use iso-8859-1 as charset. 21205 21206 * po/hr.po: Update. 21207 212082001-06-02 Hrvoje Niksic <hniksic@arsdigita.com> 21209 21210 * po/: Updated ru.po, et.po, and sv.po. Added tr.po. 21211 212122001-05-31 Hrvoje Niksic <hniksic@arsdigita.com> 21213 21214 * doc/wget.texi (Mailing List): Fix the mailing list address. 21215 212162001-05-28 Maciej W. Rozycki <macro@ds2.pg.gda.pl> 21217 21218 * configure.in: Use $host_os instead of non-existent "$opsys" when 21219 deciding based on host type. 21220 21221 * configure.in: Print "cross" when cross-compiling. 21222 212232001-05-27 Hrvoje Niksic <hniksic@arsdigita.com> 21224 21225 * src/all: Update copyright information. 21226 212272001-05-27 Hrvoje Niksic <hniksic@arsdigita.com> 21228 21229 * doc/wget.texi (Copying): Clarify. Link to 21230 "free-software-for-freedom.html". 21231 212322001-05-26 Hrvoje Niksic <hniksic@arsdigita.com> 21233 21234 * src/version.c: Wget 1.7-pre1 is released. 21235 212362001-05-26 Hrvoje Niksic <hniksic@arsdigita.com> 21237 21238 * src/version.c: Updated version to 1.7-pre1. 21239 212402001-05-26 Hrvoje Niksic <hniksic@arsdigita.com> 21241 21242 * src/http.c (gethttp): Indicate that the continued download failed 21243 for *this* file. 21244 212452001-05-26 Hrvoje Niksic <hniksic@arsdigita.com> 21246 21247 * po/hr.po: Updated. 21248 21249 * po/wget.pot: Regenerated from sources. 21250 21251 * README: Updated copyright statement. 21252 21253 * INSTALL: Document the new OpenSSL autodetector. 21254 212552001-05-26 Hrvoje Niksic <hniksic@arsdigita.com> 21256 21257 * doc/wget.texi: Updated version to 1.7. 21258 212592001-05-26 Hrvoje Niksic <hniksic@arsdigita.com> 21260 21261 * doc/wget.texi: Updated version to 1.7-pre1. 21262 212632001-05-26 Hrvoje Niksic <hniksic@arsdigita.com> 21264 21265 * doc/wget.texi (Contributors): Updated list of contributors. 21266 212672001-05-26 Hrvoje Niksic <hniksic@arsdigita.com> 21268 21269 * configure.in: Provide a default for AC_TRY_RUN when 21270 cross-compiling. Effectively, assume that when cross-compiling, 21271 working linkage implies working executable. 21272 212732001-05-25 Hrvoje Niksic <hniksic@arsdigita.com> 21274 21275 * configure.in: Rewrote OpenSSL library detection. Now the code 21276 loops over system locations where libssl/libcrypto might be 21277 located. Aside from linking, it actually tries to run the 21278 executable before concluding that the linking "worked". 21279 212802001-05-16 Csaba Raduly <csaba.raduly@sophos.com> 21281 21282 * windows/Makefile.watcom: Make linker accept space-separated list 21283 of object files. 21284 212852001-05-14 Hrvoje Niksic <hniksic@arsdigita.com> 21286 21287 * src/http.c (gethttp): Use real URL data for cookies, not the proxy 21288 stuff. 21289 212902001-05-14 Hrvoje Niksic <hniksic@arsdigita.com> 21291 21292 * src/gen_sslfunc.c: Don't include <sys/time.h> directly. 21293 212942001-05-14 Herold Heiko <Heiko.Herold@previnet.it> 21295 21296 * windows/Makefile.src: Update for SSL. 21297 212982001-05-14 Herold Heiko <Heiko.Herold@previnet.it> 21299 21300 * windows/Makefile.src: 21301 * windows/Makefile.src.bor: 21302 * windows/Makefile.watcom: 21303 * windows/config.h.bor: 21304 * windows/config.h.ms: 21305 * windows/wget.dep: 21306 Windows update. 21307 213082001-05-14 Csaba Raduly <csaba.raduly@sophos.com> 21309 21310 * windows/Makefile.watcom: Updated. 21311 213122001-05-14 Csaba Raduly <csaba.raduly@sophos.com> 21313 21314 * windows/Makefile.watcom: Rewritten. 21315 213162001-05-13 Hrvoje Niksic <hniksic@arsdigita.com> 21317 21318 * src/url.c: Get rid of `protostrings'. 21319 (skip_proto): Don't use protostrings. 21320 (has_proto): Ditto. 21321 213222001-05-12 Hrvoje Niksic <hniksic@arsdigita.com> 21323 21324 * src/res.c: New file. Implement all RES-related code here. 21325 213262001-05-12 Hrvoje Niksic <hniksic@arsdigita.com> 21327 21328 * src/main.c (print_help): Document `--no-http-keep-alive'. 21329 21330 * src/utils.c (numdigit): Handle negative numbers *correctly*. 21331 21332 * src/hash.c (make_nocase_string_hash_table): Use term "nocase" rather 21333 than the confusing "unsigned". 21334 21335 * src/utils.c (string_set_contains): Renamed from string_set_exists. 21336 21337 * src/hash.c (hash_table_contains): Renamed from hash_table_exists. 21338 21339 * src/cookies.c: Move case-insensitive hash tables to hash.c. 21340 213412001-05-09 Hrvoje Niksic <hniksic@arsdigita.com> 21342 21343 * src/http.c (gethttp): Before concluding that the file is already 21344 fully retrieved, make sure that the file existed and `Range' was 21345 actually requested. 21346 213472001-05-09 Hrvoje Niksic <hniksic@arsdigita.com> 21348 21349 * src/cookies.c (eliminate_dups): New function. 21350 (build_cookies_request): Use it. 21351 (build_cookies_request): Set chain_store_size after reallocating 21352 all_chains. 21353 (check_domain_match): Annotated for easier future debugging. 21354 (store_cookie): In the debug message, print whether the cookie is 21355 permanent. 21356 213572001-05-08 Hrvoje Niksic <hniksic@arsdigita.com> 21358 21359 * src/http.c (http_loop): Reset no_truncate before deciding whether to 21360 set it. 21361 (gethttp): Further clarify "-c conflicts with existing file" error 21362 message, based on input from Herold Heiko. 21363 213642001-05-07 Hrvoje Niksic <hniksic@arsdigita.com> 21365 21366 * src/http.c (http_loop): If restval is set, set no_truncate to 1 21367 unconditionally. 21368 213692001-05-02 Jan Prikryl <prikryl@cg.tuwien.ac.at> 21370 21371 * src/ftp-ls.c (ftp_parse_winnt_ls): Assure months are being correctly 21372 converted. Pointed out by <Stefan.Weil@de.heidelberg.com>. 21373 (ftp_parse_vms_ls): Ditto. 21374 213752001-04-30 Hrvoje Niksic <hniksic@arsdigita.com> 21376 21377 * src/init.c (cmd_address): Zero SIN before using it; apparently 21378 needed on *BSD. 21379 213802001-04-29 Hrvoje Niksic <hniksic@arsdigita.com> 21381 21382 * src/main.c (main): Make `--cookies' respect its argument. 21383 213842001-04-29 Hrvoje Niksic <hniksic@arsdigita.com> 21385 21386 * src/ftp.c (ftp_loop_internal): Don't set NO_TRUNCATE if the file is 21387 empty. 21388 213892001-04-28 Hrvoje Niksic <hniksic@arsdigita.com> 21390 21391 * src/main.c (main): Removed undocumented option `--email-address'. 21392 21393 * src/netrc.c: Use the latest read_whole_line. 21394 21395 * src/init.c (defaults): Set opt.ftp_pass to "-wget@". 21396 21397 * src/mswindows.c (pwd_cuserid): Ditto. 21398 21399 * src/utils.c (pwd_cuserid): Removed. 21400 21401 * src/host.c (ftp_getaddress): Removed. 21402 214032001-04-28 Hrvoje Niksic <hniksic@arsdigita.com> 21404 21405 * src/http.c (gethttp): Return RETRUNNEEDED when the retrieval is 21406 unneeded because the file is already there and fully downloaded, 21407 and -c is specified. 21408 (http_loop): Handle RETRUNNEEDED. 21409 21410 * src/wget.h (uerr_t): New value RETRUNNEEDED. 21411 21412 * src/http.c (http_loop): Set no_truncate for files that both exist 21413 and are non-empty. 21414 (gethttp): Consider the download finished when restval >= contlen, 21415 not only when restval==contlen. 21416 (gethttp): Handle redirection before giving up due to -c. 21417 (gethttp): Clarify error message which explains that -c will not 21418 truncate the file. 21419 (gethttp): When returning CONTNOTSUPPORTED, don't forget to free 21420 the stuff that needs freeing and release the socket. 21421 214222001-04-28 Hrvoje Niksic <hniksic@arsdigita.com> 21423 21424 * doc/wget.texi (Wgetrc Commands): Update docs for `continue'. 21425 214262001-04-28 Hrvoje Niksic <hniksic@arsdigita.com> 21427 21428 (http_loop): Allocate space for filename_plus_orig_suffix with 21429 alloca; this is more efficient and removes the need to free it 21430 before each and every return. 21431 214322001-04-28 Herold Heiko <Heiko.Herold@previnet.it> 21433 21434 * windows/wget.dep: Update. 21435 21436 * windows/Makefile.src: Update. 21437 21438 * windows/config.h.ms: Define inline to __inline. 21439 Define ftruncate to chsize. 21440 214412001-04-28 Csaba Raduly <csaba.raduly@sophos.com> 21442 21443 * windows/Makefile.watcom: Update. 21444 214452001-04-27 Hrvoje Niksic <hniksic@arsdigita.com> 21446 21447 * src/safe-ctype.h: Instead of throwing #error when isalpha is 21448 defined, redefine it to something that will throw a compile-time 21449 error if actually *used*. Do the same for the rest of the 21450 standard C macros. 21451 214522001-04-27 Hrvoje Niksic <hniksic@arsdigita.com> 21453 21454 * src/main.c (print_help): Wget booleans accept "off", not "no". 21455 214562001-04-27 Hrvoje Niksic <hniksic@arsdigita.com> 21457 21458 * src/http.c (mktime_from_utc): Improve documentation. 21459 (http_atotm): Put format strings into a separate array. 21460 214612001-04-27 Hrvoje Niksic <hniksic@arsdigita.com> 21462 21463 * src/http.c (http_loop): If allow_cache is zero, always disable 21464 caching, not only when retrieving through proxy. 21465 21466 * src/init.c: Ditto. 21467 21468 * src/options.h (struct options): Rename proxy_cache to allow_cache. 21469 214702001-04-27 Hrvoje Niksic <hniksic@arsdigita.com> 21471 21472 * po/ja.po: New update by Hiroshi Takekawa. 21473 214742001-04-27 Hrvoje Niksic <hniksic@arsdigita.com> 21475 21476 * po/hr.po: Updated. 21477 214782001-04-27 Hrvoje Niksic <hniksic@arsdigita.com> 21479 21480 * doc/wget.texi (HTTP Options): Document cookie options. 21481 214822001-04-26 Hrvoje Niksic <hniksic@arsdigita.com> 21483 21484 * src/url.c (getproxy): Ignore empty proxy vars. 21485 214862001-04-25 Roger L. Beeman <beeman@cisco.com> 21487 21488 * src/http.c (http_atotm): Initialize t.tm_isdst to 0. 21489 (mktime_from_utc): Prevent mktime() from having discontinuities at 21490 DST transition points. 21491 214922001-04-25 Hrvoje Niksic <hniksic@arsdigita.com> 21493 21494 * src/utils.c: Document timer functions. 21495 21496 * src/retr.c (rate): Use it. 21497 (rate): Print in GB/s if transfer rate exceeds 1 GB/s. 21498 21499 * src/utils.c (wtimer_granularity): New function. 21500 215012001-04-25 Hrvoje Niksic <hniksic@arsdigita.com> 21502 21503 * src/utils.c: Define each DIGITS_* in one line. 21504 215052001-04-25 Hrvoje Niksic <hniksic@arsdigita.com> 21506 21507 * src/url.c (UNSAFE_CHAR): Reimplement using a static table. 21508 (url_init): Removed. 21509 (init_unsafe_char_table): Removed. 21510 215112001-04-25 Hrvoje Niksic <hniksic@arsdigita.com> 21512 21513 * src/snprintf.c (dopr): Replace ISDIGIT with '0' <= ch && ch <= '9'. 21514 215152001-04-25 Hrvoje Niksic <hniksic@arsdigita.com> 21516 21517 * src/http.c (http_loop): Would load cookies every time. 21518 21519 * src/cookies.c (load_cookies): Handle cookies whose values contain 21520 embedded spaces. 21521 215222001-04-25 Hrvoje Niksic <hniksic@arsdigita.com> 21523 21524 * src/html-url.c (get_urls_html): Fix documentation. 21525 215262001-04-25 Hrvoje Niksic <hniksic@arsdigita.com> 21527 21528 * po/POTFILES.in: Add src/cookies.c. 21529 215302001-04-24 Hrvoje Niksic <hniksic@arsdigita.com> 21531 21532 * src/utils.c (numdigit): Handle negative numbers. 21533 215342001-04-24 Hrvoje Niksic <hniksic@arsdigita.com> 21535 21536 * src/utils.c (long_to_string): New, faster version. Favors smaller 21537 numbers; much of the calculation is now done at compile-time. 21538 215392001-04-24 Hrvoje Niksic <hniksic@arsdigita.com> 21540 21541 * src/retr.c (show_progress): Ditto. 21542 21543 * src/ftp.c (getftp): Ditto. 21544 21545 * src/http.c (gethttp): Use new timer functions. 21546 21547 * src/utils.c (wtimer_allocate): New function. 21548 (wtimer_new): Ditto. 21549 (wtimer_delete): Ditto. 21550 (wtimer_reset): Ditto. 21551 (wtimer_elapsed): Ditto. 21552 215532001-04-23 Hrvoje Niksic <hniksic@arsdigita.com> 21554 21555 * src/retr.c (show_progress): Print the download rate even when the 21556 percentages are not available. 21557 215582001-04-21 Hrvoje Niksic <hniksic@arsdigita.com> 21559 21560 * src/ftp.c (getftp): Adjust expected_bytes if the length is 21561 authoritative. 21562 215632001-04-15 Ian Abbott <abbotti@mev.co.uk> 21564 21565 windows/wget.dep: The target `connect$o' (connect.obj) now depends on 21566 `utils.h'. 21567 215682001-04-15 Hrvoje Niksic <hniksic@arsdigita.com> 21569 21570 * po/da.po: Ditto. 21571 21572 * po/de.po: Ditto. 21573 21574 * po/el.po: Ditto. 21575 21576 * po/es.po: Ditto. 21577 21578 * po/et.po: Ditto. 21579 21580 * po/fr.po: Ditto. 21581 21582 * po/gl.po: Ditto. 21583 21584 * po/he.po: Ditto. 21585 21586 * po/ja.po: Ditto. 21587 21588 * po/pl.po: Ditto. 21589 21590 * po/sk.po: Ditto. 21591 21592 * po/sl.po: Ditto. 21593 21594 * po/sv.po: Ditto. 21595 21596 * po/tr.po: Ditto. 21597 21598 * po/zh_TW.po: Update from TP. 21599 21600 * po/ca.po: Ditto. 21601 21602 * po/bg.po: New file from TP. 21603 216042001-04-14 Hrvoje Niksic <hniksic@arsdigita.com> 21605 21606 * src/url.c: Don't declare `construct'. 21607 21608 * src/hash.c (grow_hash_table): Speed up rehashing; inline storing of 21609 mappings to new locations. 21610 (hash_table_new): Make resize_threshold a field in the hash table, 21611 so we don't have to recalculate it in each hash_table_put. 21612 (grow_hash_table): Update resize_threshold. 21613 (MAX): Remove unused macro. 21614 (prime_size): Made static. 21615 216162001-04-14 Hrvoje Niksic <hniksic@arsdigita.com> 21617 21618 * src/retr.c (retrieve_url): Call uri_merge, not url_concat. 21619 21620 * src/html-url.c (collect_tags_mapper): Call uri_merge, not 21621 url_concat. 21622 21623 * src/url.c (mkstruct): Use encode_string instead of xstrdup followed 21624 by URL_CLEANSE. 21625 (path_simplify_with_kludge): Deleted. 21626 (contains_unsafe): Deleted. 21627 (construct): Renamed to uri_merge_1. 21628 (url_concat): Renamed to uri_merge. 21629 216302001-04-13 Hrvoje Niksic <hniksic@arsdigita.com> 21631 21632 * src/wget.h (XDIGIT_TO_xchar): Define here. 21633 21634 * src/url.c (decode_string): Use new name. 21635 (encode_string): Ditto. 21636 21637 * src/http.c (XDIGIT_TO_xchar): Rename HEXD2asc to XDIGIT_TO_xchar. 21638 (dump_hash): Use new name. 21639 21640 * src/wget.h: Rename ASC2HEXD and HEXD2ASC to XCHAR_TO_XDIGIT and 21641 XDIGIT_TO_XCHAR respectively. 21642 216432001-04-13 Hrvoje Niksic <hniksic@arsdigita.com> 21644 21645 * src/url.c (str_url): Use encode_string instead of the unnecessary 21646 CLEANDUP. 21647 (encode_string_maybe): New function, returns input string if no 21648 encoding is needed. 21649 (encode_string): Call encode_string_maybe to do the dirty work, 21650 xstrdup if no work needed. 21651 216522001-04-13 Hrvoje Niksic <hniksic@arsdigita.com> 21653 21654 * src/init.c: Include cookies.h. 21655 21656 * src/cookies.h: Declare cookies_cleanup. 21657 21658 * src/cookies.c (check_domain_match): Remove unused variable. 21659 (save_cookies): Remove extraneous argument from debug statement. 21660 21661 * src/host.c (same_host): Don't call skip_url. 21662 21663 * src/url.c (skip_url): Removed. Removed its calls from various 21664 functions in url.c. 21665 216662001-04-13 Hrvoje Niksic <hniksic@arsdigita.com> 21667 21668 * src/cookies.c (unsigned_string_hash): Use the new code in 21669 string_hash as reference. 21670 21671 * src/hash.c (hash_table_map): Allow deletion and change of the 21672 element processed by MAPFUN. 21673 (string_hash): Use the function from glib. 21674 216752001-04-12 Hrvoje Niksic <hniksic@arsdigita.com> 21676 21677 * src/hash.h: Declare hash_table_get_pair and hash_table_count. 21678 216792001-04-12 Hrvoje Niksic <hniksic@arsdigita.com> 21680 21681 * src/ftp-ls.c (ftp_parse_vms_ls): Make seconds optional in time 21682 specification. 21683 216842001-04-12 Hrvoje Niksic <hniksic@arsdigita.com> 21685 21686 * src/ftp-ls.c (ftp_parse_unix_ls): Use octal constants for 21687 permissions. A compiler that doesn't accept octal constants is 21688 seriously broken and shouldn't be used -- octal constants were 21689 present in K&R C! 21690 216912001-04-12 Hrvoje Niksic <hniksic@arsdigita.com> 21692 21693 * src/cookies.c: Declare http_atotm. 21694 216952001-04-12 Hrvoje Niksic <hniksic@arsdigita.com> 21696 21697 * src/config.h.in: Include #undef stub. 21698 21699 * src/hash.c (hash_table_remove): Rewrite to actually clear deleted 21700 entries instead of just marking them as deleted. 21701 217022001-04-12 Hrvoje Niksic <hniksic@arsdigita.com> 21703 21704 * configure.in: Check for inline. 21705 217062001-04-11 Hrvoje Niksic <hniksic@arsdigita.com> 21707 21708 * src/url.c (parseurl): Don't strip trailing slash when u->dir is "/" 21709 because that strips the *leading* slash, thus forcing relative 21710 FTP retrieval. 21711 217122001-04-11 Hrvoje Niksic <hniksic@arsdigita.com> 21713 21714 * po/zh_TW.po: Reinstated, after an update by Abel Cheung. 21715 21716 * po/zh_TW.Big5.po: Removed. 21717 217182001-04-11 Hrvoje Niksic <hniksic@arsdigita.com> 21719 21720 * po/zh_TW.Big5.po: New file, submitted by Abel Cheung. 21721 21722 * po/zh.po: Removed outdated file. 21723 217242001-04-10 Jan Prikryl <prikryl@cg.tuwien.ac.at> 21725 21726 * src/ftp.c (getftp): Convert initial FTP directory from VMS to UNIX 21727 notation for VMS servers. 21728 (ftp_retrieve_dirs): Do not prepend '/' to f->name when 21729 odir is an empty string. 21730 217312001-04-10 Jan Prikryl <prikryl@cg.tuwien.ac.at> 21732 21733 * src/ftp-ls.c (ftp_parse_winnt_ls): Made the fix for AM/PM more 21734 effective. Suggested by Edward J. Sabol. 21735 217362001-04-10 Hrvoje Niksic <hniksic@arsdigita.com> 21737 21738 * src/cookies.c (build_cookies_request): Use and sort cookies from all 21739 matching domains. 21740 (build_cookies_request): Check for duplicates before generating 21741 the `Cookies' header. 21742 21743 * src/main.c (main): Don't load cookies here. 21744 (main): Make loadcookies and savecookies call the correct command. 21745 21746 * src/http.c (http_loop): Load cookies on-demand. 21747 217482001-04-09 Hrvoje Niksic <hniksic@arsdigita.com> 21749 21750 * src/init.c (cmd_file): New function. 21751 (enable_tilde_expansion): New variable. 21752 (run_wgetrc): Use it. 21753 (cmd_file): Use it. 21754 217552001-04-09 Hrvoje Niksic <hniksic@arsdigita.com> 21756 21757 * src/http.c (gethttp): Fix indentation of SSL ifdef. 21758 217592001-04-09 Hrvoje Niksic <hniksic@arsdigita.com> 21760 21761 * src/ftp.c (ftp_retrieve_dirs): Don't forcibly prepend "/" to u->dir; 21762 that hack is no longer necessary. 21763 (getftp): Prepend initial directory to *non*-absolute u->dir's. 21764 217652001-04-08 Jan Prikryl <prikryl@cg.tuwien.ac.at> 21766 21767 * src/ftp-ls.c (ftp_parse_winnt_ls): The AM/PM change did assume 21768 12:01PM == 00:01, which was obviously wrong. Taken care of this 21769 anomaly. 21770 21771 * src/ChangeLog: Removed an excess conflict marker. Reformatted the 21772 entry by Philipp Thomas from 2001-03-09. 21773 21774 * src/ftp-ls.c (ftp_parse_winnt_ls): Ensure that adjusted PM hours lay 21775 between 0 and 23. Elminate unused variable `sec'. 21776 217772001-04-08 Hrvoje Niksic <hniksic@arsdigita.com> 21778 21779 * src/utils.c (datetime_str): New function. 21780 217812001-04-08 Hrvoje Niksic <hniksic@arsdigita.com> 21782 21783 * src/init.c: Include cookie-related options. 21784 21785 * src/main.c (main): Include cookie-specific options. 21786 (main): Load cookies before download is finished. 21787 (main): Save cookies when done. 21788 21789 * src/http.c (gethttp): Process the `Set-Cookie' header. 21790 (gethttp): Include cookies in the response. 21791 21792 * src/cookies.c: New file. 21793 217942001-04-08 Hrvoje Niksic <hniksic@arsdigita.com> 21795 21796 * src/hash.c (hash_table_count): New function. 21797 217982001-04-06 Hrvoje Niksic <hniksic@arsdigita.com> 21799 21800 * src/utils.c (read_file): Cast MAP_FAILED to char *. Enforced by 21801 Digital Unix cc. 21802 218032001-04-06 Hrvoje Niksic <hniksic@arsdigita.com> 21804 21805 * src/sysdep.h: Don't define VERY_LONG_FORMAT. 21806 21807 * src/utils.c (very_long_to_string): New function. 21808 (legible_very_long): Use it; don't use VERY_LONG_FORMAT. 21809 218102001-04-06 Hrvoje Niksic <hniksic@arsdigita.com> 21811 21812 * src/http.c (gethttp): Prepend literal newline with `\n\'. 21813 218142001-04-06 Hrvoje Niksic <hniksic@arsdigita.com> 21815 21816 * src/hash.c: Include <string.h>. 21817 218182001-04-06 Hrvoje Niksic <hniksic@arsdigita.com> 21819 21820 * src/config.h.in: Oops, do the namespace tweaks only on systems we 21821 know about. 21822 218232001-04-06 Hrvoje Niksic <hniksic@arsdigita.com> 21824 21825 * src/config.h.in: Define "compilation environment" options that work 21826 under Linux and Solaris. To be reviewed on other OS'es. 21827 218282001-04-06 Hrvoje Niksic <hniksic@arsdigita.com> 21829 21830 * aclocal.m4 (AM_PROG_CC_STDC): Don't use -Xc under SYSV. It 21831 forces strict ANSI mode, which means we lose `long long'. 21832 Generally, don't require __STDC__ to be defined to 1 because that 21833 signifies strict ANSI. 21834 218352001-04-04 Hrvoje Niksic <hniksic@arsdigita.com> 21836 21837 * NEWS: Cosmetic changes. 21838 218392001-04-04 Christian Fraenkel <christian.fraenkel@gmx.net> 21840 21841 * src/url.c (parse_uname): Would run past the end of the string if the 21842 username was present, but the URL did not contain a slash, e.g. 21843 http://foo:bar@myhost. 21844 218452001-04-03 Trond Eivind Glomsrod <teg@redhat.com> 21846 21847 * po/da.po: Ditto. 21848 21849 * po/no.po: The charset is iso-8859-1, not iso-8859-2. 21850 218512001-04-03 Paul Bludov <paul@ozero.net> 21852 21853 * src/mswindows.c (sleep): Use SleepEx() instead of Sleep(). 21854 (ws_changetitle): Use alloca() instead of malloc() to avoid memory 21855 leak. 21856 (ws_mypath): Use GetModuleFileName instead of argv[0]. 21857 (ws_startup): Use data.wVersion for comparison. 21858 218592001-04-03 KOJIMA Hajime <kjm@rins.ryukoku.ac.jp> 21860 21861 * src/http.c (http_atotm): Use %A instead of %a to match full 21862 weekday. (On most systems there is no difference.) 21863 218642001-04-02 Hrvoje Niksic <hniksic@arsdigita.com> 21865 21866 * src/retr.c (retrieve_url): New variable global_download_count used 21867 to identify first retrieval. 21868 21869 * src/ftp.c (getftp): Ditto. 21870 21871 * src/http.c (gethttp): Rewind opt.dfp only on first retrieval. 21872 218732001-04-02 Hrvoje Niksic <hniksic@arsdigita.com> 21874 21875 * src/netrc.c (parse_netrc): Don't trim the line endings explicitly; 21876 they will be handled as whitespace. 21877 (parse_netrc): Correctly handle lines that end with whitespace. 21878 218792001-04-02 Hrvoje Niksic <hniksic@arsdigita.com> 21880 21881 * src/init.c (cmd_address): Heap-allocate the address that gets stored 21882 to CLOSURE. Old code would simply assign an address on the stack. 21883 218842001-04-02 Hrvoje Niksic <hniksic@arsdigita.com> 21885 21886 * src/http.c (http_loop): Ditto. 21887 21888 * src/ftp.c (ftp_loop_internal): Made the check whether to continue 21889 retrieval `-O'-friendly. 21890 218912001-04-02 Hrvoje Niksic <hniksic@arsdigita.com> 21892 21893 * po/et.po: New version by Toomas Soome. 21894 218952001-04-01 Nicolas Lichtmaier <nick@debian.org> 21896 21897 * src/main.c (main): Add -C to the string that is the third arg to 21898 getopt_long(). 21899 219002001-04-01 Nicolas Lichtmaier <nick@debian.org> 21901 21902 * src/ftp.c (ftp_get_listing): Propagate error status. 21903 (ftp_retrieve_glob): Use it. 21904 (ftp_loop): Ditto. 21905 219062001-04-01 Nicolas Lichtmaier <nick@debian.org> 21907 21908 * po/es.po: New file. 21909 219102001-04-01 Hrvoje Niksic <hniksic@arsdigita.com> 21911 21912 * src/ftp.c (getftp): Don't start the download from scratch if `-c' 21913 was specified, but the file is already fully downloaded. 21914 21915 * src/http.c (gethttp): Don't truncate a pre-existing file if `-c' was 21916 specified and the server doesn't support continued download. 21917 (gethttp): Don't start the download from scratch if `-c' was 21918 specified, but the file is already fully downloaded. 21919 219202001-04-01 Hrvoje Niksic <hniksic@arsdigita.com> 21921 21922 * doc/wget.texi (Recursive Retrieval Options): Document more 21923 accurately what --convert-links does. 21924 219252001-03-31 Hrvoje Niksic <hniksic@arsdigita.com> 21926 21927 * src/retr.c (retrieve_url): Call register_download() for downloaded 21928 files and register_html() for downloaded HTML files. 21929 21930 * src/recur.c (register_download): New function; register here that a 21931 file has been downloaded, rather than in recursive_retrieve(). 21932 (register_html): New function; enqueue the location of HTML files 21933 here rather than in recursive_retrieve(). 21934 219352001-03-31 Hrvoje Niksic <hniksic@arsdigita.com> 21936 21937 * src/recur.c (recursive_retrieve): Clear the hash tables only when 21938 they are defined. 21939 219402001-03-31 Hrvoje Niksic <hniksic@arsdigita.com> 21941 21942 * src/main.c (print_help): Use multiple fputs instead of a single ugly 21943 printf(). 21944 (main): Consistently assign numbers >128 to options without a 21945 corresponding character. 21946 219472001-03-31 Hrvoje Niksic <hniksic@arsdigita.com> 21948 21949 * src/http.c (gethttp): Make sure the socket is closed with 21950 CLOSE_INVALIDATE before we have drained the body. 21951 219522001-03-31 Hrvoje Niksic <hniksic@arsdigita.com> 21953 21954 (recursive_retrieve): Don't clear the hash tables at this point at 21955 all; it interferes with the normal operation of register_download. 21956 219572001-03-27 Dan Harkless <wget@harkless.org> 21958 21959 * src/Makefile.in: Moved top_builddir out of "User configuration 21960 section" of top Makefile and analogous spot in this one. 21961 219622001-03-27 Dan Harkless <wget@harkless.org> 21963 21964 * doc/Makefile.in: Moved top_builddir out of "User configuration 21965 section" of top Makefile and analogous spot in this one. 21966 219672001-03-27 Dan Harkless <wget@harkless.org> 21968 21969 * INSTALL: Updated to reflect --with-ssl's new optional parameter. 21970 21971 * configure.in: Christian Fraenkel's tests for -lcrypto and -lssl 21972 were in the wrong order, causing a link failure if you're using 21973 libcrypto.a and libssl.a rather than shared libraries. Also put 21974 in checks for -ldl, necessary since the libcrypto shared library 21975 doesn't record its dependency on libdl. 21976 21977 * {.,util,windows}/Makefile.in: Moved top_builddir out of "User 21978 configuration section" of top Makefile and analogous spot in others. 21979 21980 * po/Makefile.in.in: Previous addition of top_builddir to 21981 po/Makefile.in was bogus -- it's generated from po/Makefile.in.in. 21982 219832001-03-26 Dan Harkless <wget@harkless.org> 21984 21985 * doc/wget.texi (Recursive Retrieval Options): Explained that you need 21986 to use -r -l1 -p to get the two levels of requisites for a 21987 <FRAMESET> page. Also made a few other wording improvements. 21988 219892001-03-26 Dan Harkless <wget@harkless.org> 21990 21991 * TODO: -p should probably go "_two_ more hops" on <FRAMESET> pages. 21992 219932001-03-22 Dan Harkless <wget@harkless.org> 21994 21995 * MACHINES: Added rs6000-ibm-aix4.3.3.0. 21996 219972001-03-21 Dan Harkless <wget@harkless.org> 21998 21999 * MACHINES: Added armv4l-unknown-linux-gnu. 22000 220012001-03-20 Dan Harkless <wget@harkless.org> 22002 22003 * TODO: Oops. Hostless absolute link conversion _is_ working. My 22004 test that led me to believe it wasn't was exposing a different bug 22005 -- URLs specified on the commandline as opposed to being recursed 22006 to don't always get re-converted at the end of the Wget run. 22007 220082001-03-17 Dan Harkless <wget@harkless.org> 22009 22010 * src/Makefile.in: Include @SSL_INCLUDES@ substition in INCLUDES. 22011 Define top_builddir. Link wget with libtool so the user doesn't 22012 have to supply a bunch of custom environment variables to 22013 correctly link with the OpenSSL shared libraries. 22014 220152001-03-17 Dan Harkless <wget@harkless.org> 22016 22017 * doc/Makefile.in: Using '^' in the sed call caused a weird failure on 22018 Solaris 2.6. Changed it to a ','. Defined top_builddir. 22019 220202001-03-17 Dan Harkless <wget@harkless.org> 22021 22022 * aclocal.m4: Appended libtool 1.3.5's libtool.m4 to it. 22023 22024 * configure.in: Use AM_PROG_LIBTOOL macro (now defined in our 22025 aclocal.m4) to create a libtool script from ltconfig and ltmain.sh. 22026 If --with-ssl specified, look in /usr/local/ssl/lib by default for 22027 OpenSSL libs. Allow override with --with-ssl=<OpenSSL_root_dir>. 22028 Set up -I<OpenSSL_root_dir>/include and -R<OpenSSL_root_dir>/lib 22029 (possibly rewritten by libtool) as well. Don't appear to be 22030 looking for a function main() in -lcrypto. If the OpenSSL lib 22031 checks fail, don't just silently build a wget without https 22032 support -- issue a warning. Define top_builddir. 22033 22034 * ltconfig: New file from libtool 1.3.5 distribution. 22035 22036 * ltmain.sh: New file from libtool 1.3.5 distribution. 22037 22038 * {.,po,util,windows}/Makefile.in: Define top_builddir. 22039 220402001-03-16 Dan Harkless <wget@harkless.org> 22041 22042 * TODO: For some reason on 2000-11-19, Hrvoje removed the item 22043 about converting hostless absolute links. That isn't working yet, 22044 so I've put the item back, with a modified wording. 22045 22046 * config.guess: Hadn't been updated since 1996 -- didn't work for recent 22047 machines and OSes, such as NetWinder ARM Linux. Updated to latest 22048 version (2001-03-16) from <ftp://ftp.gnu.org/pub/gnu/config/>. 22049 22050 * config.sub: Ditto -- updated to latest version (2001-03-12). 22051 220522001-03-12 Dan Harkless <wget@harkless.org> 22053 22054 * TODO: Only normal recursion should respect -np -- page-requisite 22055 recursion should not. 22056 220572001-03-09 Philipp Thomas <pthomas@suse.de> 22058 22059 * src/safe-ctype.h: New file. Locale independent ctype.h replacement 22060 taken from libiberty. 22061 22062 * src/safe-ctype.c: New file. Tables for above. 22063 22064 * src/Makefile.in: Add safe-ctype$o to OBJS. Add dependencies for 22065 safe-ctype$o. 22066 22067 * src/cmpt.c: Remove include of ctype.h. Use ISSPACE instead of 22068 isspace. 22069 22070 * src/ftp-basic.c: Don't include ctype.h. 22071 22072 * src/ftp-ls.c: Likewise. 22073 22074 * src/ftp.c: Likewise. 22075 22076 * src/headers.c: Likewise. 22077 22078 * src/host.c: Likewise. 22079 22080 * src/html-parse.c: Likewise. 22081 22082 * src/html-url.c: Likewise. 22083 22084 * src/http.c: Likewise. 22085 22086 * src/init.c: Likewise. 22087 22088 * src/main.c: Likewise. Set LC_CTYPE along with LC_MESSAGES. 22089 22090 * src/netrc.c: Likewise. 22091 22092 * src/recur.c: Likewise. 22093 22094 * src/retr.c: Likewise. 22095 22096 * src/snprintf.c: Replace ctype.h with safe-ctype.h. Use ISDIGIT 22097 instead of isdigit. 22098 22099 * src/sysdep.h: Remove defines of ctype macros as they aren't needed 22100 for safe-ctype-h. 22101 22102 * src/url.c: Don't include ctype.h. 22103 22104 * src/utils.c: Likewise. 22105 22106 * src/wget.h: Include safe-ctype.h. 22107 221082001-03-07 Jan Prikryl <prikryl@cg.tuwien.ac.at> 22109 22110 * TODO: Removed an obsolete item about adding VMS and MS FTP 22111 server support. 22112 221132001-03-06 Hack Kampbjorn <hack@hackdata.com> 22114 22115 * src/http.c (gethttp): skip :port in host header if it is the 22116 DEFAULT_HTTPS_PORT when using SSL. 22117 22118 * src/url.c: move the #define of DEFAULT_HTTP_PORT, DEFAULT_FTP_PORT 22119 and DEFAULT_HTTPS_PORT to the header file so it can be use in the 22120 rest of the code. 22121 * src/url.h: Ditto 22122 221232001-03-05 Dan Harkless <wget@harkless.org> 22124 22125 * TODO: Add a --range option to download only a given byte range. 22126 221272001-03-01 Jonas Jensen <bones@huleboer.dk> 22128 22129 * src/retr.c (show_progress): Correctly calculate the number of bytes 22130 in the first line of the download that have been actually 22131 downloaded in this run. 22132 221332001-03-01 Dan Harkless <wget@harkless.org> 22134 22135 * ChangeLog.README: Renamed from README.branches and added a note 22136 that Wget has multiple ChangeLog files (currently ./ChangeLog, 22137 doc/ChangeLog, and src/ChangeLog), since this is unusual and 22138 people have complained their patches hadn't been applied after 22139 checking only the top-level ChangeLog. 22140 221412001-02-28 Dan Harkless <wget@harkless.org> 22142 22143 * MACHINES: Explicitly tell people to send us config.guess output. 22144 221452001-02-27 Dan Harkless <wget@harkless.org> 22146 22147 * TODO: Re-use FTP connection if multiple URLs on one host 22148 specified. Make "ftp://<host>/%2F<file>" cause an initial "CWD /". 22149 221502001-02-23 Dan Harkless <wget@harkless.org> 22151 22152 * src/main.c (print_help): --help documentation for -N said it would 22153 re-download files if they had the _same_ timestamp on server. 22154 (print_help): -nr belongs in "FTP options" section of --help 22155 output, not "Recursive retrieval" section. Alphabetized FTP 22156 options by long option name. 22157 221582001-02-23 Dan Harkless <wget@harkless.org> 22159 22160 * doc/wget.texi: Corrections, clarifications, and English fixes to 22161 time-stamping documentation. Also moved -nr from "Recursive 22162 Retrieval Options" to "FTP Options" and gave it a @cindex entry. 22163 Alphabetized FTP options by long option name. Mentioned that 22164 .listing symlinked to /etc/passwd is not a security hole, but that 22165 other files could be, so root shouldn't run wget in user dirs. 22166 221672001-02-23 Dan Harkless <wget@harkless.org> 22168 22169 * NEWS: Note that Wget now has a man page again. 22170 22171 * po/*.po*: Updated after changing --help's description of -N and 22172 moving -nr to a different category. 22173 22174 * TODO: "Timestamps are sometimes not copied over on files 22175 retrieved by FTP." removed. Hopefully all the failures I was 22176 seeing were due to the fact that it wasn't documented that 22177 non-globbing, non-recursive FTP downloads need -N to get the 22178 remote timestamp to be preserved. 22179 221802001-02-22 Dan Harkless <wget@harkless.org> 22181 22182 * doc/Makefile.in: Make wget man page and install it if we have 22183 pod2man. Added some missing '$(srcdir)/'s. Added missing 22184 dependencies on install targets (allowing you to just do `make 22185 install' rather than forcing you to do `make && make install'). 22186 Also, Makefile rules should always use output file parameters if 22187 available rather than redirecting stdout with '>', or you falsely 22188 satisfy dependencies if the tool you're running is missing or 22189 fails -- fixed call of texi2pod.pl that did this wrong. 22190 22191 * doc/texi2pod.pl: Removed from CVS. Now automatically generated. 22192 22193 * doc/texi2pod.pl.in: This new file is processed into texi2pod.pl, 22194 getting the appropriate path to the Perl 5+ executable on this 22195 system and becoming executable (CVS files, by contrast, don't 22196 arrive executable). 22197 221982001-02-22 Dan Harkless <wget@harkless.org> 22199 22200 * TODO: Remove empty directories created due to --accept/--reject. 22201 22202 * configure.in: Look for perl and pod2man and make substitutions. 22203 22204 * Makefile.in (install): Do install.man if we have pod2man. 22205 222062001-02-19 Dan Harkless <wget@harkless.org> 22207 22208 * doc/wget.texi (Download Options): Further improvement to --continue 22209 documentation -- explain interaction with -r and -N, mention 22210 usefulness for downloading new sections of appended-to files, etc. 22211 222122001-02-16 Dan Harkless <wget@harkless.org> 22213 22214 * src/init.c (commands): Hack Kampbjørn <hack@hackdata.com> discovered 22215 that "httpsproxy" had been inserted into commands[] out of 22216 alphabetical order, causing "BUG: unknown command `httpuser'". 22217 222182001-02-13 Jan Prikryl <prikryl@cg.tuwien.ac.at> 22219 22220 * windows/Makefile.src: Removed references to ftpparse sources. 22221 22222 * windows/wget.dep: Ditto. 22223 22224 * windows/Makefile.watcom: Ditto. 22225 222262001-02-13 Jan Prikryl <prikryl@cg.tuwien.ac.at> 22227 22228 * src/ftp-ls.c (ftp_parse_ls): Added support of ST_MACOS (Unix-like 22229 listing without correct permissons). 22230 22231 * src/ftp.h (stype): Added ST_MACOS to identify the NetPresenz MacOS 22232 FTP server. 22233 22234 * src/ftp.c (ftp_retrieve_list): New mirroring logic: A remote file 22235 shall be donwloaded only when it's newer than the local copy or 22236 when it has the same timeestamp but its size is different. ST_VMS 22237 and ST_MACOS as special cases that lie about file size. 22238 22239 * src/ftp-ls.c (ftp_parse_ls): Support for ST_MACOS. 22240 22241 * src/Makefile.in: Removed dependency on ftpparse library due to unclear 22242 copyright issues and absence of any feedback to our queries. 22243 22244 * src/ftp-ls.c: Removed dependency on ftpparse library due to unclear 22245 copyright issues and absence of any feedback to our queries. 22246 (ftp_parse_ls): Added a warning message when remote server system 22247 does not seem to be suported by wget. 22248 (ftp_parse_vms_ls): New function for parsing VMS ftp 22249 server listing output. 22250 (clean_line): New function responsible for removing 22251 end-of-line characters from FTP listing texts. 22252 22253 * src/ftp.c (getftp): Global variables pwd and host_type are now 22254 member of the ccon structure under names ccon.id and ccon.rs. 22255 22256 * src/ftp.h (struct ccon): Added formed global variables from ftp.c, 22257 enum stype rs (remote system identification) and char *id (initial 22258 working directory), as suggested by Hrvoje. 22259 22260 * src/url.c (parse_uname): Added support for passwords containing '@' 22261 characters. 22262 (skip_uname): Ditto. 22263 222642001-02-11 Hrvoje Niksic <hniksic@arsdigita.com> 22265 22266 * src/ftp.c (ftp_loop_internal): Disable padding. 22267 (getftp): Ditto. 22268 22269 * src/http.c (http_loop): Disable padding. 22270 22271 * src/retr.c (show_progress): Use it to enable padding. 22272 22273 * src/retr.c (rate): Optional parameter PAD for padding the rate. 22274 222752001-02-11 Hrvoje Niksic <hniksic@arsdigita.com> 22276 22277 * src/ftp.c (ftp_loop): Reset con. 22278 222792001-02-11 Hack Kampbjørn <hack@hackdata.com> 22280 22281 * src/url.c (parseurl): Debug-print u->ftp_type. 22282 222832001-02-10 Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu> 22284 22285 * src/ftp.h: Rename enums `command' to `wget_ftp_command' and 22286 `fstatus' to `wget_ftp_status' because old names clash with Tru64 22287 net/if.h. 22288 222892001-02-10 Jonas Jensen <bones@huleboer.dk> 22290 22291 * src/retr.c (show_progress): Print the download rate along with the 22292 percentages. 22293 Along with Anders Thorsby <anders@thorsby.dk>. 22294 222952001-02-10 Hrvoje Niksic <hniksic@arsdigita.com> 22296 22297 * src/retr.c (show_progress): Make sure that the last output line 22298 includes progress. 22299 223002001-02-08 Christian Fraenkel <christian.fraenkel@gmx.net> 22301 22302 * src/gen_sslfunc.c: verify_callback is now static 22303 22304 * src/gen_sslfunc.c (init_ssl): load certificate if specified 22305 22306 * src/gen_sslfunc.c (ssl_printerr): new function 22307 22308 * src/init.c: added new --sslcertfile and --sslcertkey switches 22309 22310 * src/main.c: ditto 22311 22312 * src/options.h: ditto 22313 22314 * src/http.c (gethttp): abort when init_ssl fails 22315 223162001-01-23 Herold Heiko <Heiko.Herold@previnet.it> 22317 22318 * windows/Makefile.src: Don't attempt to compile in alloca.c; it 22319 doesn't work and it's not needed. 22320 223212001-01-23 Herold Heiko <Heiko.Herold@previnet.it> 22322 22323 * src/mswindows.h: Include <malloc.h>; it's needed for alloca(). 22324 223252001-01-23 Herold Heiko <Heiko.Herold@previnet.it> 22326 22327 * src/config.h.ms, mswindows.h: defined HAVE_ISATTY, use _isatty for 22328 MS VC; somebody with Borland compiler please check and provide 22329 patch if possible; 22330 22331 * src/cmpt.c: provided a usleep emulation. 22332 223332001-01-20 Karl Eichwalder <ke@suse.de> 22334 22335 * src/Makefile.in: Provide and use DESTDIR according to the Coding 22336 Standards. 22337 223382001-01-20 Karl Eichwalder <ke@suse.de> 22339 22340 * doc/Makefile.in: Provide and use DESTDIR according to the Coding 22341 Standards. 22342 223432001-01-16 Hrvoje Niksic <hniksic@arsdigita.com> 22344 22345 * NEWS: Added more NEWS items. 22346 223472001-01-15 Jan Prikryl <prikryl@cg.tuwien.ac.at> 22348 22349 * util/wget.spec: Updated to 1.7, merged with the spec file from 22350 RedHat. 22351 22352 * po/Makefile.in.in: `make realclean' equal to `make 22353 maintainer-clean'. 22354 22355 * Makefile.in (realclean-top): Remove 'configure' as well. 22356 223572001-01-15 Dan Harkless <wget@harkless.org> 22358 22359 * NEWS: Was not being maintained. Added some significant 1.7-dev stuff. 22360 223612001-01-11 Dan Harkless <wget@harkless.org> 22362 22363 * TODO: If -c used with -N, check to make sure a file hasn't 22364 changed on the server before "continuing" to download it. 22365 223662001-01-11 Adrian Aichner <Adrian.Aichner@t-online.de> 22367 22368 * windows/Makefile.src: Updated. 22369 22370 * windows/wget.dep: Ditto. 22371 223722001-01-10 Dan Harkless <wget@harkless.org> 22373 22374 * src/url.c (str_url): Clarified this function's comment header after 22375 Hrvoje answered my question on the list as to when hide != 1. 22376 Also Hrvoje pointed out I need to use xstrdup() on the string literal. 22377 223782001-01-09 Dan Harkless <wget@harkless.org> 22379 22380 * src/html-url.c: A bunch of fixup of `--page-requisites'-related 22381 comments to reflect Hrvoje's changes to my code when transplanting 22382 it into this new file, to fix spelling mistakes, to clarify, etc. 22383 22384 * src/url.c (write_backup_file): Clarified a comment. 22385 (str_url): Henrik van Ginhoven pointed out on the list that we 22386 shouldn't give away the number of characters in the password by 22387 replacing each character with a 'x'. Use "<password>" instead. 22388 22389 * src/ftp.c (ftp_retrieve_dirs): The bug where recursion into FTP 22390 directories didn't work if logging in put you in a directory other 22391 than "/" is fixed now. Removed the comment here warning of the bug. 22392 22393 * src/main.c (print_help): --continue's description was misleading. 22394 We don't "restart", we "resume". Also, better to say 22395 "partially-downloaded file" rather than just "existing file". 22396 223972001-01-09 Dan Harkless <wget@harkless.org> 22398 22399 * doc/wget.texi (Download Options): Did a bunch of clarification and 22400 correction to the description of --continue. 22401 224022001-01-09 Dan Harkless <wget@harkless.org> 22403 22404 * TODO: If -c is on, don't re-download a 100%-downloaded file. 22405 22406 * TODO: The bug where you couldn't recurse into ftp directories if 22407 logging in put you somewhere else besides the server's "/" 22408 directory got fixed without the TODO entry for it being removed. 22409 22410 * TODO: Add a "rollback" option to have --continue throw away X 22411 corrupted (e.g. by proxy) bytes from end of file before resuming. 22412 22413 * po/*.po*: Updated after changing --help's description of -c. 22414 224152001-01-06 Jan Prikryl <prikryl@cg.tuwien.ac.at> 22416 22417 * src/url.c (parse_uname): Added support for passwords containing '@' 22418 characters. 22419 (skip_uname): Ditto. 22420 224212001-01-06 Jan Prikryl <prikryl@cg.tuwien.ac.at> 22422 22423 * doc/wget.texi (Reporting Bugs): Deleted the setence about Cc-ing the 22424 bug report to Wget mailing list as the bug report address is an 22425 alias for the mailing ist anyway. 22426 (Mailing List): Added URL for the alternate archive. 22427 22428 * doc/wget.texi: Bunch of cosmetical changes. 22429 22430 * doc/Makefile.in: Added targets for manpage generation using 22431 texi2pod.pl and pod2man (comes with Perl5). As we cannot rely on 22432 Perl5 being available on the system, manpage is not being built 22433 automatically. Updated '*clean' targets to remove 22434 'sample.wgetrc.munged...', 'wget.pod', and 'wget.man'. 22435 22436 * doc/texi2pod.pl: New file copied from GCC distribution to facilitate 22437 automatic manpage generation. 22438 224392001-01-06 Hrvoje Niksic <hniksic@arsdigita.com> 22440 22441 * src/connect.c (bindport): Declare addrlen as int. Diagnosed by 22442 Drazen Kacar <dave@arsdigita.com>. 22443 (conaddr): Ditto. 22444 224452001-01-06 Dan Harkless <wget@harkless.org> 22446 22447 * src/ChangeLog: The '[Not in 1.6 branch.]'s were decided not to be 22448 the best way to go about my aim. Removed them in favor of: 22449 22450 * src/ChangeLog-branches/1.6_branch.ChangeLog: New file. 22451 224522001-01-06 Dan Harkless <wget@harkless.org> 22453 22454 * doc/ChangeLog: The '[Not in 1.6 branch.]'s were decided not to be 22455 the best way to go about my aim. Removed them in favor of: 22456 22457 * doc/ChangeLog-branches/1.6_branch.ChangeLog: New file. 22458 224592001-01-06 Dan Harkless <wget@harkless.org> 22460 22461 * ChangeLog: The '[Not in 1.6 branch.]'s were decided not to be 22462 the best way to go about my aim. Removed them in favor of: 22463 22464 * ChangeLog-branches/1.6_branch.ChangeLog: New file. 22465 22466 * README.branches: Explains the 1.6_branch.ChangeLog files. 22467 22468 * README.cvs: Falsely claimed you only needed GNU autoconf to 22469 build from the CVS sources. You also need GNU gettext and 22470 texinfo. I also did a bunch of general re-writing of this file. 22471 224722001-01-04 Hrvoje Niksic <hniksic@arsdigita.com> 22473 22474 * src/url.c (replace_attr): New function, to be used by both 22475 TO_COMPLETE and TO_RELATIVE case in convert_links. 22476 (find_fragment): New function for finding URL fragments. 22477 (replace_attr): Better handle the case where the original string 22478 is not quoted. Use find_fragment. 22479 (convert_links): Use replace_attr(). 22480 224812001-01-03 Dan Harkless <wget@harkless.org> 22482 22483 * TODO: We should make a simple man page referring to info doco. 22484 224852000-12-31 Dan Harkless <wget@harkless.org> 22486 22487 * src/ChangeLog: Since this flat file doesn't have multiple branches, 22488 looking at the dates would make you think that things went into 22489 1.6 that actually just went into the 1.7-dev branch. Added "[Not 22490 in 1.6 branch.]" where appropriate to clarify. 22491 224922000-12-31 Dan Harkless <wget@harkless.org> 22493 22494 * doc/Makefile.in (distclean): sample.wgetrc.munged_for_texi_inclusion 22495 needs to be included in the distribution or it'll get regenerated 22496 due to the wget.info dependency, and then that file will get 22497 regenerated, forcing people to have makeinfo installed 22498 unnecessarily. We could use a kludge of a 0-length file in the 22499 distro, but the file isn't that big and should compress very well. 22500 22501 * doc/wget.texi: Changed "VERSION 1.5.3+dev" to "VERSION 1.7-dev" and 22502 "UPDATED Feb 2000" to "UPDATED Dec 2000". Like the comment in the 22503 file says, it'd be nice if these were handled automatically... 22504 22505 * doc/ChangeLog: Since this flat file doesn't have multiple branches, 22506 looking at the dates would make you think that things went into 22507 1.6 that actually just went into the 1.7-dev branch. Added "[Not 22508 in 1.6 branch.]" where appropriate to clarify. 22509 225102000-12-31 Dan Harkless <wget@harkless.org> 22511 22512 * README: Changed 1.5.3 in the FTP URL to 1.6. 22513 22514 * NEWS: Released Wget version 1.6. 22515 22516 * po/*.po: 'Project-Id-Version's were very haphazard, saying 22517 either "wget" or "GNU wget", and with versions of 1.5.2-b[124], 22518 1.5.3, the nonexistent 1.5.4, and 1.6-pre. Standardized all to 22519 "GNU Wget 1.7-dev". Perhaps this is wrong to do because some of 22520 the translations haven't been updated since the versions they 22521 state, but I know some of the files were updated specifically for 22522 1.6, and none of them used this version (unless you count the sole 22523 "1.6-pre" guy). In any case, the 'POT-Creation-Date's and 22524 'PO-Revision-Date's remain the best indicator of whether a 22525 translation's out of date. 22526 22527 * ChangeLog: Since this flat file doesn't have multiple branches, 22528 looking at the dates would make you think that things went into 22529 1.6 that actually just went into the 1.7-dev branch. Added "[Not 22530 in 1.6 branch.]" where appropriate to clarify. 22531 225322000-12-30 Dan Harkless <wget@harkless.org> 22533 22534 * src/ftp.c, http.c: Applied Hack Kampbjørn <hack@hackdata.com>'s 22535 patch to deal with h_errno not being defined in netdb.h under Cygwin. 22536 225372000-12-18 Csaba Raduly <csaba.raduly@sophos.com> 22538 22539 * windows/Makefile.watcom: Updated. 22540 225412000-12-18 Csaba Raduly <csaba.raduly@sophos.com> 22542 22543 * src/sysdep.h: Include <malloc.h> and <io.h> under Watcom. 22544 225452000-12-17 Igor Khristophorov <igor@atdot.org> 22546 22547 * src/http.c (check_end): Fix test for '+' or '-'. 22548 225492000-12-17 Hrvoje Niksic <hniksic@arsdigita.com> 22550 22551 * src/url.c (parseurl): Rename inner loop var from i to ind to avoid 22552 clash with the function top-level-declared variable i. 22553 (str_url): Likewise, rename inner-loop i to j. 22554 22555 * src/recur.c (parse_robots): Don't declare LEN at top of function. 22556 (robots_match): Renamed parameter FORBIDDEN to avoid hiding of 22557 global variable. 22558 22559 * src/main.c (main): Change erroneous use of bitwise and to logical. 22560 22561 * src/init.c (cmd_address): Don't heap-allocate `sin'; it can be on 22562 the stack because it will be copied to closure. 22563 22564 Thanks to Csaba Raduly's run of PC-LINT over the sources. 22565 225662000-12-17 Hrvoje Niksic <hniksic@arsdigita.com> 22567 22568 * src/mswindows.c: Include <errno.h>. 22569 22570 * src/gen_sslfunc.c: Include <errno.h>. 22571 22572 * src/ftp-basic.c: Don't attempt to declare errno or h_errno because 22573 they're not used. 22574 22575 * src/main.c: Include <errno.h> because errno is used. 22576 22577 * src/ftp.c: Ditto. 22578 22579 * src/http.c: Include <netdb.h> for h_errno. 22580 225812000-12-17 Hrvoje Niksic <hniksic@arsdigita.com> 22582 22583 * src/http.c (basic_authentication_encode): Use xmalloc(), not 22584 malloc(). Thanks to Csaba Raduly's run of PC-LINT over the 22585 sources. 22586 225872000-12-17 Csaba Raduly <csaba.raduly@sophos.com> 22588 22589 * src/sysdep.h: Test for __EMX__ rather than for EMXOS2 for OS/2 22590 compilation. 22591 225922000-12-13 Hrvoje Niksic <hniksic@arsdigita.com> 22593 22594 * src/html-parse.c (advance_declaration): MSVC assert() chokes on 22595 '\"'. Use '"' instead. 22596 225972000-12-11 Hrvoje Niksic <hniksic@arsdigita.com> 22598 22599 * src/utils.c (xfree_real): Removed. 22600 (xfree_debug): Just call free(). 22601 22602 * src/wget.h (xfree): Make it an alias for free. 22603 226042000-12-11 Hrvoje Niksic <hniksic@arsdigita.com> 22605 22606 * src/http.c (http_loop): Furthermore, touch output_document only if 22607 it is known to be an existing regular file. 22608 226092000-12-11 Hrvoje Niksic <hniksic@arsdigita.com> 22610 22611 * src/ftp.c (ftp_retrieve_list): Ditto. 22612 22613 * src/http.c (http_loop): Touch output_document if that is used for 22614 output. 22615 226162000-12-10 Hrvoje Niksic <hniksic@arsdigita.com> 22617 22618 * po/POTFILES.in: Updated. 22619 226202000-12-10 Hrvoje Niksic <hniksic@arsdigita.com> 22621 22622 * doc/Makefile.in (install.info): Info files are *not* in $(srcdir), 22623 but in the current build dir. 22624 226252000-12-10 Hrvoje Niksic <hniksic@arsdigita.com> 22626 22627 * configure.in: Add windows/Makefile to the output block. 22628 22629 * windows/Makefile.in: New file. 22630 22631 * README.cvs: New file. 22632 226332000-12-06 Hrvoje Niksic <hniksic@arsdigita.com> 22634 22635 * src/rbuf.h: Implement only a single version of RBUF_READCHAR, using 22636 rbuf_read_bufferful when the buffer is depleted. 22637 22638 * src/rbuf.c (rbuf_read_bufferful): New function. 22639 226402000-12-06 Hrvoje Niksic <hniksic@arsdigita.com> 22641 22642 * src/http.c: Include gen_sslfunc.h after including Wget's headers. 22643 (persistent_available_p): Needed coma before `int ssl'. 22644 226452000-12-06 Hrvoje Niksic <hniksic@arsdigita.com> 22646 22647 * src/gen_sslfunc.h: Use ansi2knr style function declarations. 22648 22649 * src/gen_sslfunc.c: Reformat according to the GNU coding standards. 22650 More should be done. 22651 22652 * src/http.c (persistent_available_p): Place the cheap SSL test nearer 22653 the top of the function. 22654 (CLOSE_FINISH, CLOSE_INVALIDATE): Define only one version of each. 22655 226562000-12-06 Hrvoje Niksic <hniksic@arsdigita.com> 22657 22658 * src/ftp.c (ftp_loop_internal): Ditto. 22659 22660 * src/http.c (http_loop): Use it. 22661 22662 * src/retr.c (sleep_between_retrievals): New function that handles the 22663 logic of opt.wait and opt.waitretry. 22664 226652000-12-05 Hrvoje Niksic <hniksic@arsdigita.com> 22666 22667 * src/url.c (init_unsafe_char_table): Reinstate space as an unsafe 22668 char. 22669 226702000-12-05 Hrvoje Niksic <hniksic@arsdigita.com> 22671 22672 * configure.in: Don't unconditionally define HAVE_SSL, even when 22673 --with-ssl is given. 22674 226752000-12-03 Christian Fraenkel <christian.fraenkel@gmx.net> 22676 22677 * src/Makefile.in: added gen_sslfunc object 22678 * src/config.h.in: added HAVE_SSL define 22679 * src/connect.c: changed select_fd from static int to int 22680 * src/connect.h: ditto 22681 * src/gen_sslfunc.h: New file 22682 * src/gen_sslfunc.c: ditto 22683 * src/http.c: added HTTPS fuctionality 22684 * src/retrc.c: ditto 22685 * src/url.c: ditto 22686 * src/init.c: added opt.httpsproxy 22687 * src/options.h: ditto 22688 * src/rbuf.h: added alternate rbuf struct 22689 * src/wget.h: added CONSSLERR 22690 * src/rbuf.c: ditto 22691 22692 * src/http.c: Added HTTPS fuctionality. 22693 22694 * src/retrc.c: Ditto. 22695 22696 * src/url.c: Ditto. 22697 22698 * src/init.c: Added opt.httpsproxy. 22699 22700 * src/options.h: Ditto. 22701 22702 * src/rbuf.h: Added alternate rbuf struct. 22703 22704 * src/wget.h: Added CONSSLERR. 22705 22706 * src/rbuf.c: Ditto. 22707 227082000-12-03 Christian Fraenkel <christian.fraenkel@gmx.net> 22709 22710 * INSTALL: Added the --with-ssl switch. 22711 22712 * configure.in: Ditto. 22713 22714 * TODO: Removed the corresponding entry. 22715 227162000-11-30 Jan Prikryl <prikryl@cg.tuwien.ac.at> 22717 22718 * src/ftp-ls.c (ftp_parse_unix_ls): Added second parameter 22719 "ignore_perms" to ignore file and directory permissions for 22720 Windows NT FTP server listings. 22721 (ftp_parse_winnt_ls): New function. 22722 (ftp_parse_ls): Parses UNIX and Windows NT listings 22723 separately. Simple heuristics for distinguishing between UNIX and 22724 MS-DOS-like FTP listing provided by Windows NT FTP service. 22725 227262000-11-30 Jan Prikryl <prikryl@cg.tuwien.ac.at> 22727 22728 * src/ftp-ls.c (ftp_parse_unix_ls): Added second parameter 22729 "ignore_perms" to ignore file and directory permissions for 22730 Windows NT FTP server listings. 22731 (ftp_parse_winnt_ls): New function. 22732 (ftp_parse_ls): Parses UNIX and Windows NT listings 22733 separately. Simple heuristics for distinguishing between UNIX 22734 and MS-DOS-like FTP listing provided by Windows NT FTP service. 22735 227362000-11-29 John Summerfield <summer@OS2.ami.com.au> 22737 22738 * src/netrc.c (parse_netrc): Get rid of line ending. 22739 227402000-11-25 Karl Eichwalder <ke@suse.de> 22741 22742 * Makefile.in (SUBDIRS): Add 'windows'. 22743 (dist, DISTFILES): Don't distribute CVS directories. 22744 227452000-11-25 Hrvoje Niksic <hniksic@arsdigita.com> 22746 22747 * src/ftp.c (ftp_retrieve_list): Undo typo "fix" until resolution by 22748 Dan. 22749 227502000-11-24 Karl Eichwalder <ke@suse.de> 22751 22752 * src/main.c (print_help): Untabify. 22753 227542000-11-23 Hrvoje Niksic <hniksic@arsdigita.com> 22755 22756 * src/utils.c (xrealloc_debug): Do the unregister/register thing only 22757 if the pointer has actually changed. 22758 (xmalloc_real): Declare `static' in DEBUG_MALLOC builds. 22759 (xfree_real): Ditto. 22760 (xrealloc_real): Ditto. 22761 (xstrdup_real): Ditto. 22762 227632000-11-23 Hrvoje Niksic <hniksic@arsdigita.com> 22764 22765 * configure.in: Build ALL_LINGUAS dynamically. 22766 227672000-11-22 Hrvoje Niksic <hniksic@arsdigita.com> 22768 22769 * src/ftp.c (getftp): ftp_getaddress() returns a malloc'ed copy of the 22770 string; no need to strdup() it. 22771 (getftp): Make pwd_len a local variable. 22772 (ftp_loop): Free PWD before returning. 22773 22774 * src/init.c (cleanup): Free opt.ftp_pass only if it's non-NULL. 22775 227762000-11-22 Hrvoje Niksic <hniksic@arsdigita.com> 22777 22778 * src/all: Use xfree() instead of free. 22779 22780 * src/utils.c (xfree): New function. 22781 227822000-11-21 Hrvoje Niksic <hniksic@arsdigita.com> 22783 22784 * src/url.c (convert_links): HTML-quote the converted string. 22785 22786 * src/utils.c (html_quote_string): Move here from ftp-ls.c 22787 (html_quote_string): Make non-static; declare in utils.h. 22788 (html_quote_string): Convert SP to  . 22789 227902000-11-21 Hrvoje Niksic <hniksic@arsdigita.com> 22791 22792 * src/hash.c (hash_table_put): Don't overwrite deleted mappings. 22793 227942000-11-21 Hrvoje Niksic <hniksic@arsdigita.com> 22795 22796 * src/hash.c (find_mapping): New function. 22797 (hash_table_get): Use it. 22798 (hash_table_get_pair): Ditto. 22799 (hash_table_exists): Ditto. 22800 (hash_table_remove): Ditto. 22801 (hash_table_remove): Really delete the entry if the mapping 22802 following LOCATION is empty. 22803 22804 * src/utils.c (string_set_add): Check whether the element has existed 22805 before. 22806 22807 * src/hash.c (hash_table_get_pair): New function. 22808 228092000-11-21 Hrvoje Niksic <hniksic@arsdigita.com> 22810 22811 * src/ftp.c (getftp): Reformat Jan's code according to GNU coding 22812 standards; remove (debugging?) printf's; use '\0' for the ASCII 22813 zero character. Use alloca() instead of malloc() for 22814 inter-function temporary allocations. 22815 228162000-11-20 Hrvoje Niksic <hniksic@arsdigita.com> 22817 22818 * src/version.c: Bump version from 1.5.3+dev to 1.7-dev. 22819 228202000-11-20 Hrvoje Niksic <hniksic@arsdigita.com> 22821 22822 * src/recur.c (recursive_retrieve): Print the "so we don't load" 22823 debugging message only if we really don't load. 22824 22825 * src/http.c (gethttp): Inhibit keep-alive if proxy is being used. 22826 (gethttp): Don't request keep-alive if keep-alive is inhibited. 22827 228282000-11-20 Hrvoje Niksic <hniksic@arsdigita.com> 22829 22830 * src/http.c (http_process_type): Ignore trailing whitespace; use 22831 strdupdelim(). 22832 22833 * src/recur.c (recursive_retrieve): Use the new `convert' field. 22834 (convert_all_links): Ditto. 22835 (convert_all_links): Don't respect meta_disallow_follow. 22836 22837 * src/html-url.c (handle_link): Fill out link_relative_p and 22838 link_complete_p. 22839 22840 * src/url.h (struct _urlpos): Make elements more readable. 22841 22842 * src/recur.c (recursive_retrieve): Call slist_prepend instead of 22843 slist_append. 22844 (convert_all_links): Call slist_nreverse before iterating through 22845 urls_html. 22846 22847 * src/utils.c (slist_prepend): New function. 22848 (slist_nreverse): Ditto. 22849 228502000-11-20 Hrvoje Niksic <hniksic@arsdigita.com> 22851 22852 * src/http.c (http_loop): If username and password are known, try the 22853 `Basic' authentication scheme by default. 22854 22855 * src/connect.h: Declare test_socket_open. 22856 228572000-11-20 Hrvoje Niksic <hniksic@arsdigita.com> 22858 22859 * src/http.c (gethttp): Don't use the return value of sprintf(). 22860 (gethttp): Inhibit keep-alive if opt.http_keep_alive is 0. 22861 228622000-11-20 Hrvoje Niksic <hniksic@arsdigita.com> 22863 22864 * src/http.c (check_end): Constify. 22865 228662000-11-19 Hrvoje Niksic <hniksic@arsdigita.com> 22867 22868 * src/url.c (convert_links): Handle UREL2ABS case. 22869 22870 * src/recur.c (recursive_retrieve): Instead of the list 22871 urls_downloaded, use hash tables dl_file_url_map and 22872 dl_url_file_map. 22873 (convert_all_links): Use them to retrieve data. 22874 22875 * src/host.c (clean_hosts): Free the hash tables. 22876 22877 * src/main.c (private_initialize): Call host_init(). 22878 22879 * src/host.c (store_hostaddress): Use a saner, hash table-based data 22880 model. 22881 (realhost): Ditto. 22882 (host_init): Initialize the hash tables. 22883 228842000-11-19 Hrvoje Niksic <hniksic@arsdigita.com> 22885 22886 * src/retr.c (get_contents): If use_expected, make sure that the 22887 appropriate amount of data is being read. 22888 22889 * src/http.c (gethttp): Check for both `Keep-Alive: ...' and 22890 `Connection: Keep-Alive'. 22891 22892 * src/wget.h (DEBUGP): Call debug_logprintf only if opt.debug is 22893 turned on. 22894 228952000-11-19 Hrvoje Niksic <hniksic@arsdigita.com> 22896 22897 * src/http.c (gethttp): Make the HTTP persistent connections more 22898 robust. 22899 229002000-11-19 Hrvoje Niksic <hniksic@arsdigita.com> 22901 22902 * src/http.c (connection_available_p): Use it. 22903 22904 * src/connect.c (test_socket_open): New function. 22905 22906 * src/http.c (gethttp): Support persistent connections. Based on the 22907 ideas, and partly on code, by Sam Horrocks <sam@daemoninc.com>. 22908 (register_persistent): New function. 22909 (connection_available_p): Ditto. 22910 (invalidate_connection): Ditto. 22911 229122000-11-18 Jan Prikryl <prikryl@cg.tuwien.ac.at> 22913 22914 * src/ftpparse.c, ftpparse.h: New files. 22915 22916 * src/ftp-ls.c (ftp_parse_ls): Use ftp_parse_unix_ls for UNIX servers 22917 only. Use ftp_parse_nonunix_ls otherwise. 22918 (ftp_parse_nonunix_ls): Stub to the ftpparse library handling all 22919 exotic FTP servers. 22920 22921 * src/ftp.h (stype): New enum, distinguishes UNIX, VMS, and "other" 22922 FTP servers. 22923 22924 * src/ftp.c: New static wariables host_type, pwd, and pwd_len. 22925 (getftp): Support for VMS. Support for FTP servers that do not 22926 place you in the root directory after login. 22927 (ftp_retrieve_list): VMS is silent about the real file size, issue 22928 a more appropriate message. 22929 (ftp_get_listing): Pass host_type to ftp_parse_ls. 22930 22931 * src/ftp-basic.c (ftp_pwd, ftp_syst): New functions. 22932 229332000-11-18 Jan Prikryl <prikryl@cg.tuwien.ac.at> 22934 22935 * src/ftpparse.c, ftpparse.h: New files. 22936 22937 * src/ftp-ls.c (ftp_parse_ls): Use ftp_parse_unix_ls for UNIX servers 22938 only. Use ftp_parse_nonunix_ls otherwise. 22939 (ftp_parse_nonunix_ls): Stub to the ftpparse library handling all 22940 exotic FTP servers. 22941 22942 * src/ftp.h (stype): New enum, distinguishes UNIX, VMS, and "other" 22943 FTP servers. 22944 22945 * src/ftp.c: New static wariables host_type, pwd, and pwd_len. 22946 (getftp): Support for VMS. Support for FTP servers that do not 22947 place you in the root directory after login. 22948 (ftp_retrieve_list): VMS is silent about the real file size, issue 22949 a more appropriate message. 22950 (ftp_get_listing): Pass host_type to ftp_parse_ls. 22951 22952 * src/ftp-basic.c (ftp_pwd, ftp_syst): New functions. 22953 229542000-11-18 Hrvoje Niksic <hniksic@arsdigita.com> 22955 22956 * src/utils.c (slist_append): Eviscerate NOSORT. Hash tables are now 22957 used for what the sorted slists used to be used for. 22958 (slist_contains): Don't rely on the list being sorted. 22959 (slist_append): Simplify the code. 22960 22961 * src/recur.c (recursive_cleanup): Use free_string_set. 22962 22963 * src/utils.c (string_set_add, string_set_exists, string_set_free): 22964 New functions for easier freeing of hash tables whose keys are 22965 strdup'ed strings. 22966 22967 * src/recur.c (recursive_retrieve): Use the hash table functions for 22968 storing undesirable URLs. 22969 22970 * src/hash.c: New file. 22971 229722000-11-17 Hrvoje Niksic <hniksic@arsdigita.com> 22973 22974 * src/main.c (private_initialize): Call url_init. 22975 (main): Call private_initialize. 22976 22977 * src/url.c (unsafe_char_table): New table. 22978 (UNSAFE_CHAR): Use it. 22979 (init_unsafe_char_table): New function. 22980 (url_init): New function; call init_unsafe_char_table. 22981 229822000-11-16 Hrvoje Niksic <hniksic@arsdigita.com> 22983 22984 * windows/config.h.ms: snprintf and vsnprintf exist under Windows. 22985 22986 * windows/Makefile.src: Back out previous change. 22987 229882000-11-16 Hrvoje Niksic <hniksic@arsdigita.com> 22989 22990 * src/mswindows.h: Define snprintf and vsnprintf to _snprintf and 22991 _vsnprintf respectively. 22992 229932000-11-16 Hrvoje Niksic <hniksic@arsdigita.com> 22994 22995 * doc/wget.texi: Use --- consistently. 22996 Spell "Wget" with starting capital letter consistently. 22997 Use ``...'' or @dfn{} instead of simple double quotes where 22998 appropriate. 22999 Use double space as separator between sentences consistently. 23000 230012000-11-16 Herold Heiko <Heiko.Herold@previnet.it> 23002 23003 * windows/Makefile.src: Compile in vsnprintf.c. 23004 230052000-11-15 Hrvoje Niksic <hniksic@arsdigita.com> 23006 23007 * src/html-url.c (handle_link): Handle HTML fragment identifiers. 23008 23009 * src/recur.c (recursive_retrieve): If norobot info is respected and 23010 the file is specified not to be followed by robots, respect that. 23011 23012 * src/html-url.c (collect_tags_mapper): Handle <meta name=robots 23013 content=X>. For us the important cases are where X is NONE or 23014 where X contains NOFOLLOW. 23015 (get_urls_html): Propagate that information to the caller. 23016 230172000-11-15 Hrvoje Niksic <hniksic@arsdigita.com> 23018 23019 * src/config.h.in: Do the _XOPEN_SOURCE and _SVID_SOURCE things only 23020 on Linux. 23021 230222000-11-15 Hrvoje Niksic <hniksic@arsdigita.com> 23023 23024 * doc/wget.texi (Robots): Rearrange text. Mention the meta tag. 23025 230262000-11-15 Hrvoje Niksic <hniksic@arsdigita.com> 23027 23028 * doc/wget.texi (Robots): Document that we now support the meta tag 23029 exclusion. 23030 230312000-11-14 Hrvoje Niksic <hniksic@arsdigita.com> 23032 23033 * doc/wget.texi: Add GFDL; remove norobots specification. 23034 23035 * doc/wget.texi (Sample Wgetrc): Remove warnings with lateish 23036 makeinfo, mostly by changing xref{} to pxref{} when inside 23037 parentheses. 23038 230392000-11-13 Hrvoje Niksic <hniksic@arsdigita.com> 23040 23041 * src/url.c (convert_links): Unlink the file we might be reading from 23042 before writing to it. 23043 (convert_links): Use alloca instead of malloc for 23044 filename_plus_orig_suffix. 23045 230462000-11-12 Hrvoje Niksic <hniksic@arsdigita.com> 23047 23048 * src/host.c (realhost): Add HOST to the list with quality==0 only if 23049 it wasn't already there. 23050 Based on analysis by Lu Guohan <feng@public.bjnet.edu.cn>. 23051 230522000-11-10 Hrvoje Niksic <hniksic@arsdigita.com> 23053 23054 * src/url.c (get_urls_file): Ditto. 23055 (convert_links): Ditto. 23056 23057 * src/html-url.c (get_urls_html): Use read_file() instead of 23058 load_file(). 23059 23060 * src/utils.c (read_file): New function, instead of the old 23061 load_file(). 23062 (read_file_free): Ditto. 23063 23064 * src/url.c (findurl): Search only for the supported protocols. 23065 (convert_links): Use fwrite() when writing out a region of 23066 characters. 23067 230682000-11-10 Hrvoje Niksic <hniksic@arsdigita.com> 23069 23070 * src/init.c (run_wgetrc): Don't bother killing off '\r' since 23071 pars_line() skips whitespace at end of line anyway. 23072 (parse_line): Oops, it didn't. Now it does. 23073 23074 * src/recur.c (parse_robots): Ditto here. 23075 23076 * src/ftp-ls.c (ftp_parse_unix_ls): Kill off the newline character 23077 manually because read_whole_line no longer does. 23078 23079 * src/utils.c (read_whole_line): Rewrite to: a) use less memory 23080 (reallocates to needed size after work), b) work faster --> 23081 fgets() instead of getc, c) be more correct --> doesn't kill the 23082 newline character at the end of line. 23083 230842000-11-10 Hrvoje Niksic <hniksic@arsdigita.com> 23085 23086 * src/init.c (comind): Initialize MAX to array size - 1. 23087 230882000-11-10 Hrvoje Niksic <hniksic@arsdigita.com> 23089 23090 * src/ftp-ls.c: Move html_quote_string and ftp_index here. 23091 23092 * src/url.c: Remove get_urls_html, since that's now in html-url.c. 23093 23094 * src/html-url.c: New file. 23095 23096 * src/html-parse.c: New file. 23097 230982000-11-10 Hrvoje Niksic <hniksic@arsdigita.com> 23099 23100 * doc/wget.texi: cc.fer.hr -> srk.fer.hr. 23101 231022000-11-10 Hrvoje Niksic <hniksic@arsdigita.com> 23103 23104 * configure.in: Test for MMAP. 23105 231062000-11-08 Hrvoje Niksic <hniksic@arsdigita.com> 23107 23108 * src/url.c (construct): Handle the case where host name is not 23109 followed by a slash. 23110 231112000-11-08 Hrvoje Niksic <hniksic@arsdigita.com> 23112 23113 * src/url.c (construct): Changed last_slash[-1] to *(last_slash - 1). 23114 Suggested by Edward J. Sabol. 23115 231162000-11-06 Hrvoje Niksic <hniksic@arsdigita.com> 23117 23118 * src/init.c: commands[] need to be sorted! ("base" wasn't.) 23119 231202000-11-05 Hrvoje Niksic <hniksic@arsdigita.com> 23121 23122 * src/wget.h (DO_REALLOC_FROM_ALLOCA): Use braces to disambiguate 23123 `if'. 23124 231252000-11-05 Hrvoje Niksic <hniksic@arsdigita.com> 23126 23127 * src/url.c (construct): Insert unneeded initialization for the 23128 compiler to shut up. 23129 23130 * src/config.h.in: Define _XOPEN_SOURCE to 500 to get the prototype 23131 for strptime() (*duh*). Define _SVID_SOURCE to get S_IFLNK which 23132 otherwise gets lost when you define _XOPEN_SOURCE. 23133 23134 * src/utils.c (touch): Include the file name in the error message. 23135 From Debian. 23136 231372000-11-05 Hrvoje Niksic <hniksic@arsdigita.com> 23138 23139 * src/url.c (construct): Fix comment. 23140 (find_last_char): Document. 23141 231422000-11-05 Hrvoje Niksic <hniksic@arsdigita.com> 23143 23144 * src/log.c (logvprintf): Use vsnprintf() in all cases. If necessary, 23145 resize the buffer to fit the formated message. That way, messages 23146 of arbitrary size may be printed. 23147 (logvprintf): Use saved_append() to optionally log the last 23148 several lines of output. 23149 (logputs): Ditto. 23150 (log_close): Adapt to new data structures. 23151 (log_dump): Ditto. 23152 (redirect_output): Print messages to stderr, not to stdout. 23153 23154 * src/log.c (saved_append_1): New function. Replaces the old logging 23155 system ("log all output until 10M characters") with a new, much 23156 more reasonable one ("log last screenful of text"). 23157 (saved_append): New function; call saved_append_1. 23158 (free_log_line): New function. 23159 231602000-11-05 Hrvoje Niksic <hniksic@arsdigita.com> 23161 23162 * doc/wget.texi: Updated names of contributors. 23163 231642000-11-05 Hrvoje Niksic <hniksic@arsdigita.com> 23165 23166 * doc/Makefile.in (sample.wgetrc.munged_for_texi_inclusion): Use $(srcdir). 23167 231682000-11-04 Hrvoje Niksic <hniksic@arsdigita.com> 23169 23170 * src/snprintf.c: New file. 23171 231722000-11-03 Hrvoje Niksic <hniksic@arsdigita.com> 23173 23174 * src/wget.h: If HAVE_STDARG_H is not defined, don't declare argument 23175 types to logprintf() and debug_logprintf(). 23176 231772000-11-02 Tyler Riddle <triddle@liquidmarket.com> 23178 23179 * src/http.c (known_authentication_scheme_p): Recognize NTML 23180 authentication. 23181 (create_authorization_line): Treat NTML the same as `Basic'. 23182 231832000-11-02 Matthew Seaman <m.seaman@inpharmatica.co.uk> 23184 23185 * util/rmold.pl: Various fixes. 23186 231872000-11-02 Junio Hamano <junio@twinsun.com> 23188 23189 * src/ftp-basic.c (ftp_login): Make comparison case-insensitive. 23190 231912000-11-02 Hrvoje Niksic <hniksic@arsdigita.com> 23192 23193 * src/url.c (parseurl): Remove possible reading past the end of 23194 sup_protos[]. Spotted by Mark A. Mankins <Mankins_Mark@prc.com>. 23195 231962000-11-02 Hrvoje Niksic <hniksic@arsdigita.com> 23197 23198 * src/retr.c (retrieve_url): Free url before returning. 23199 (retrieve_url): Free mynewloc before returning. 23200 Spotted by Mark A. Mankins <Mankins_Mark@prc.com>. 23201 232022000-11-02 Hrvoje Niksic <hniksic@arsdigita.com> 23203 23204 * src/ftp.c (ftp_loop_internal): Hide the password from the URL when 23205 printing non-verbose. Problem spotted by Dariusz Mlynarczyk 23206 <darekm@bydg.lomac.com.pl>. 23207 232082000-11-01 Hrvoje Niksic <hniksic@arsdigita.com> 23209 23210 * src/wget.h (enum): Remove extra space after last enumeration. 23211 232122000-11-01 Hrvoje Niksic <hniksic@arsdigita.com> 23213 23214 * src/utils.c (long_to_string): Update with a later, better version. 23215 232162000-11-01 Hrvoje Niksic <hniksic@arsdigita.com> 23217 23218 * src/url.c (path_simplify_with_kludge): New function. 23219 (path_simplify_with_kludge): Disable it. Instead... 23220 (parse_dir): ...make sure that at this point the right thing is 23221 done, i.e. that "query" part of the URL (?...) is always assigned 23222 to the file, never to the directory portion of the path. 23223 232242000-11-01 Hrvoje Niksic <hniksic@arsdigita.com> 23225 23226 * src/url.c (get_urls_html): Decode HTML entities using 23227 html_decode_entities. 23228 23229 * src/html.c (htmlfindurl): Don't count the `#' in numeric entities 23230 (&#NNN;) as an HTML fragemnt. 23231 (html_decode_entities): New function. 23232 232332000-11-01 Hrvoje Niksic <hniksic@arsdigita.com> 23234 23235 * src/url.c (construct): Rewritten for clarity. Avoids the 23236 unnecessary copying and stack-allocation the old version 23237 performed. 23238 232392000-11-01 Hrvoje Niksic <hniksic@arsdigita.com> 23240 23241 * src/retr.c (retrieve_url): Detect redirection cycles. 23242 232432000-11-01 Hrvoje Niksic <hniksic@arsdigita.com> 23244 23245 * src/main.c (main): Use legible_very_long() for printing 23246 opt.downloaded. 23247 23248 * src/utils.c (legible_1): New function that operates on strings and 23249 does the brunt of legible()'s work. 23250 (legible): Use legible_1(). 23251 (legible_very_long): New function; dump the argument with 23252 sprintf(), and call legible_1(). 23253 23254 * src/options.h (struct options): Use VERY_LONG_TYPE for 23255 opt.downloaded. 23256 23257 * src/sysdep.h (VERY_LONG_TYPE): Define it to have a 64-bit or greater 23258 type. 23259 23260 * src/config.h.in: Make sure that SIZEOF_LONG and SIZEOF_LONG_LONG get 23261 defined. Define HAVE_LONG_LONG if long long is available. 23262 232632000-11-01 Hrvoje Niksic <hniksic@arsdigita.com> 23264 23265 * src/main.c (main): In case of opt.downloaded overflowing, print 23266 <overflow> instead of a totally bogus random value. 23267 23268 * src/retr.c (retrieve_from_file): Ditto. 23269 23270 * src/recur.c (recursive_retrieve): Ditto. 23271 23272 * src/main.c (main): Ditto. 23273 23274 * src/http.c (http_loop): Ditto. 23275 23276 * src/ftp.c (ftp_loop_internal): Use downloaded_increase() instead of 23277 `+=', and downloaded_exceeds_quota() instead of the simple-minded 23278 check. 23279 (ftp_retrieve_list): Ditto. 23280 (ftp_retrieve_dirs): Ditto. 23281 (ftp_retrieve_glob): Ditto. 23282 23283 * src/retr.c (downloaded_increase): New function. Notice overflows of 23284 opt.downloaded. 23285 (downloaded_exceeds_quota): Make sure that opt.downloaded is not 23286 used if it overflowed. 23287 23288 * src/options.h (struct options): New member downloaded_overflow. 23289 232902000-11-01 Hrvoje Niksic <hniksic@arsdigita.com> 23291 23292 * src/html.c (htmlfindurl): Fix recognition of # HTML fragments. 23293 232942000-11-01 Hrvoje Niksic <hniksic@arsdigita.com> 23295 23296 * configure.in: Check for size of long and long long. 23297 232982000-10-31 Hrvoje Niksic <hniksic@arsdigita.com> 23299 23300 * src/retr.c (retrieve_url): Use url_concat() to handle relative 23301 redirections instead of /ad hoc/ code. 23302 23303 * src/url.c (url_concat): New function encapsulating weird 23304 construct(). 23305 (urllen_http_hack): New function. 23306 (construct): When constructing new URLs, recognize that `?' does 23307 not form part of the file name in HTTP. 23308 233092000-10-31 Hrvoje Niksic <hniksic@arsdigita.com> 23310 23311 * src/ftp.c (getftp): Ditto. 23312 23313 * src/http.c (gethttp): Rewind the stream when retrying from scratch. 23314 233152000-10-30 Dan Harkless <wget@harkless.org> 23316 23317 * NEWS: Hrvoje pointed out that relative URL grokking deserves mention. 23318 233192000-10-27 Dan Harkless <wget@harkless.org> 23320 23321 * src/retr.c (retrieve_url): Manually applied T. Bharath 23322 <TBharath@responsenetworks.com>'s patch to get wget to grok 23323 illegal relative URL redirects. Reformatted and re-commented it. 23324 233252000-10-27 Dan Harkless <wget@harkless.org> 23326 23327 * TODO: wget now groks illegal relative URL HTTP redirects. 23328 233292000-10-24 Dan Harkless <wget@harkless.org> 23330 23331 * NEWS: Forgot to update regarding new --bind-address option. 23332 233332000-10-23 Hrvoje Niksic <hniksic@arsdigita.com> 23334 23335 * doc/wget.texi (HTTP Options): Remove Netscape bullying. 23336 233372000-10-23 Dan Harkless <wget@harkless.org> 23338 23339 * src/connect.c (make_connection and bindport): Manually applied Rob 23340 Mayoff <mayoff@dqd.com>'s 1.5.3 patch to add --bind-address, 23341 changing coding style to GNU's. 23342 23343 * src/ftp.c (ftp_loop_internal): --delete-after wasn't implemented for 23344 files downloaded via FTP. Per a comment, .listing files were not 23345 counted towards number of bytes and files downloaded because they're 23346 deleted anyway. Well, they aren't under -nr, so count them then. 23347 23348 * src/init.c: Manually applied Rob Mayoff's 1.5.3 patch to add 23349 --bind-address, alphabetizing, changing coding style to GNU's, 23350 commenting, and renaming cmd_ip_address() to cmd_address() to 23351 imply hostnames also okay. 23352 23353 * src/main.c (main): --delete-after didn't delete the root of the 23354 tree. Ignore --convert-links if --delete-after was specified. 23355 Manually applied Rob Mayoff's 1.5.3 patch to add --bind-address, 23356 fixing duplicate use of added-since-1.5.3 case value. 23357 (print_help): Clarified that --delete-after deletes local files. 23358 Rob forgot to add a line for his new --bind-address option. 23359 23360 * src/options.h (struct options): Manually applied Rob Mayoff's patch 23361 to add --bind-address (bind_address structure member). 23362 23363 * src/recur.c (recursive_retrieve): Improved comment; added DEBUGP(). 23364 Ignore --convert-links if --delete-after was specified. 23365 23366 * src/retr.c (retrieve_from_file): Just added a DEBUGP(). 23367 233682000-10-23 Dan Harkless <wget@harkless.org> 23369 23370 * doc/wget.texi (Recursive Retrieval Options): Improved --delete-after docs. 23371 (Download Options): Documented Rob Mayoff's new --bind-address option. 23372 (Wgetrc Commands): Documented Rob Mayoff's new bind_address command. 23373 233742000-10-20 Dan Harkless <wget@harkless.org> 23375 23376 * doc/wget.texi (Recursive Retrieval Options): Sugg. -E on 1-page download. 23377 233782000-10-20 Dan Harkless <wget@harkless.org> 23379 23380 * TODO: -k needs to convert '?' to "%3F" in links to saved files 23381 containing the '?' character (e.g. CGI output). Also, we need to 23382 check the HTTP spec w.r.t. simplification of absolute URLs. 23383 Generalize --html-extension to something like --mime-extension. 23384 23385 * MAILING-LIST: I didn't realize <wget@sunsite.auc.dk> allowed posting 23386 by non-subscribers. <bug-wget@gnu.org> soon to be an alias for it. 23387 23388 * NEWS: Always forget to update this file when making user-vis. changes. 23389 233902000-10-19 Dan Harkless <wget@harkless.org> 23391 23392 * src/ftp.c (ftp_loop_internal): downloaded_file() enumerators changed. 23393 (getftp): Applied Piotr Sulecki <Piotr.Sulecki@ios.krakow.pl>'s 23394 patch to work around FTP servers that incorrectly respond to the 23395 "REST" command with the remaining size rather than the total file size. 23396 23397 * src/http.c (gethttp): Improved a comment and added code to tack on 23398 ".html" to text/html files without that extension when -E specified. 23399 (http_loop): Use new downloaded_file() enumerators and deal with 23400 the case of gethttp() called xrealloc() on u->local. 23401 23402 * src/init.c (commands): Added new "htmlextension" command. 23403 Also renamed John Daily's cmd_quad() to the more descriptive 23404 cmd_lockable_boolean(), alpha-sorted the CMD_DECLARE()s and 23405 removed duplicate cmd_boolean() declaration. 23406 23407 * src/main.c (print_help): Added my new -E / --html-extension option. 23408 (main): Undocumented --email-address option previously used -E synonym. 23409 Stole it away for the much more deserving --html-extension's use. 23410 23411 * src/options.h (struct options): Added html_extension field. 23412 23413 * src/url.c (convert_links): URL X that we saved as X.html locally due 23414 to -E needs to be backed up as X.orig, not X.html.orig. Added comments. 23415 (downloaded_file): Now remembers if we added .html extension to a file. 23416 23417 * src/url.h (downloaded_file_t): Added extra enumerators to support above. 23418 (downloaded_file): Now takes and returns a downloaded_file_t. 23419 23420 * src/wget.h (unnamed "dt" enum): Added ADDED_HTML_EXTENSION enumerator. 23421 234222000-10-19 Dan Harkless <wget@harkless.org> 23423 23424 * doc/wget.texi (HTTP Options): Documented my new -E / --html-extension. 23425 (Wgetrc Commands): Documented my new html_extension option and 23426 John Daily's "quad" values (which I renamed to "lockable 23427 Boolean"). When I documented Damir Dzeko's --referer, I forgot to 23428 add the .wgetrc equivalent; mentioned the "referrer" spelling issue. 23429 234302000-10-19 Dan Harkless <wget@harkless.org> 23431 23432 * TODO: -E / --html-extension / html_extension has been implemented. 23433 Make -I and -X allow an optional hostname before the directory name? 23434 When simplifying paths, wget needs to stop at any '?' character. 23435 23436 * configure.in: Put "it" language in proper alphabetical order and 23437 added new languages "pl" and "ru". 23438 23439 * po/pl.{gmo,po}: Added Grzegorz Kowal <g_kowal@poczta.onet.pl>'s 23440 Polish message translation file. 23441 23442 * po/ru.{gmo,po}: Added Const Kaplinsky <const@ce.cctpu.edu.ru>'s 23443 Russian message translation file. 23444 234452000-10-16 Dan Harkless <wget@harkless.org> 23446 23447 * TODO: Add option to save local filenames without extra %-encoding. 23448 234492000-10-13 Adrian Aichner <adrian@xemacs.org> 23450 23451 * src/retr.c: Add msec timing support for WINDOWS. 23452 * src/retr.c (reset_timer): GetSystemTime() on WINDOWS. 23453 * src/retr.c (elapsed_time): Calculate delta time to msec on WINDOWS. 23454 234552000-10-09 Dan Harkless <wget@harkless.org> 23456 23457 * src/html.c (htmlfindurl): Added unneeded initialization to quiet warning. 23458 23459 * src/main.c (print_help): Clarified what --retr-symlinks does. 23460 234612000-10-09 Dan Harkless <wget@harkless.org> 23462 23463 * doc/wget.texi (FTP Options): --retr-symlinks wasn't documented properly. 23464 234652000-10-09 Dan Harkless <wget@harkless.org> 23466 23467 * TODO: --retr-symlinks should cause wget to traverse links to dirs too. 23468 234692000-09-25 Dan Harkless <wget@harkless.org> 23470 23471 * TODO: Make wget return nonzero in situations like bad HTTP 23472 auth. Make wget follow (illegal) relative URL HTTP redirects. 23473 234742000-09-15 John Daily <jdaily@cyberdude.com> 23475 23476 * src/init.c: Add support for "always" and "never" values to allow 23477 .wgetrc to override commandline (useful e.g. with .pm files 23478 calling `wget --passive-ftp' when your firewall doesn't allow that). 23479 23480 * src/ftp.c (getftp): passive_ftp is first option to support always/never. 23481 234822000-08-30 Dan Harkless <wget@harkless.org> 23483 23484 * src/ftp.c (ftp_retrieve_list): Use new INFINITE_RECURSION #define. 23485 23486 * src/html.c: htmlfindurl() now takes final `dash_p_leaf_HTML' parameter. 23487 Wrapped some > 80-column lines. When -p is specified and we're at a 23488 leaf node, do not traverse <A>, <AREA>, or <LINK> tags other than 23489 <LINK REL="stylesheet">. 23490 23491 * src/html.h (htmlfindurl): Now takes final `dash_p_leaf_HTML' parameter. 23492 23493 * src/init.c: Added new -p / --page-requisites / page_requisites option. 23494 23495 * src/main.c (print_help): Clarified that -l inf and -l 0 both allow 23496 infinite recursion. Changed the unhelpful --mirrior description 23497 to simply give the options it's equivalent to. Added new -p option. 23498 (main): Added some comments; handle new -p / --page-requisites. 23499 23500 * src/options.h (struct options): Added new page_requisites field. 23501 23502 * src/recur.c: Changed "URL-s" to "URLs" and "HTML-s" to "HTMLs". 23503 Calculate and pass down new `dash_p_leaf_HTML' parameter to 23504 get_urls_html(). Use new INFINITE_RECURSION #define. 23505 23506 * src/retr.c: Changed "URL-s" to "URLs". get_urls_html() now takes 23507 final `dash_p_leaf_HTML' parameter. 23508 23509 * src/url.c: get_urls_html() and htmlfindurl() now take final 23510 `dash_p_leaf_HTML' parameter. 23511 23512 * src/url.h (get_urls_html): Now takes final `dash_p_leaf_HTML' parameter. 23513 23514 * src/wget.h: Added some comments and new INFINITE_RECURSION #define. 23515 235162000-08-30 Dan Harkless <wget@harkless.org> 23517 23518 * po/*.{gmo,po,pot}: Regenerated after modifying wget --help output. 23519 23520 * MACHINES: Previously said to send updates to "me" (Hrvoje) -- 23521 now says to email the mailing list or bug-wget@gnu.org. 23522 23523 * MAILING-LIST: Added mention of bug-wget@gnu.org. 23524 23525 * NEWS: Added --waitretry and --page-requisites. 23526 235272000-08-30 Dan Harkless <wget@harkless.org> 23528 23529 * doc/wget.texi (Recursive Retrieval Options): Documented new -p option. 23530 (Wgetrc Commands): Documented -p's equvialent, page_requisites. 23531 235322000-08-25 Dan Harkless <wget@harkless.org> 23533 23534 * MACHINES: Alphabetized, changed "architectures" to "OSes and 23535 architectures", added missing company names, removed needless ^L, 23536 made AIX and FreeBSD entries more general to reflect successful 23537 use on those platforms by myself and others, removed the 23538 non-factual "this version of", and fixed some grammatical errors. 23539 235402000-08-23 Dan Harkless <wget@harkless.org> 23541 23542 * src/main.c (print_help): -B / --base was not mentioned. 23543 235442000-08-23 Dan Harkless <wget@harkless.org> 23545 23546 * doc/wget.texi (Download Options): Using -c on a file that's already fully 23547 downloaded results in an unchanged file and no second ".1" copy. 23548 23549 * doc/wget.texi (Logging and Input File Options): -B / --base was not 23550 documented as a separate item, and the .wgetrc version was misleading. 23551 23552 * doc/wget.texi (Wgetrc Commands): Changed all instances of 23553 ", the same as" to the more grammatical " -- the same as". 23554 235552000-08-22 Dan Harkless <wget@harkless.org> 23556 23557 * src/main.c (print_help): Modified -nc description to mention that it 23558 also prevents the creation of multiple versions of the same file 23559 with ".<number>" suffixes. 23560 235612000-08-22 Dan Harkless <wget@harkless.org> 23562 23563 * doc/wget.texi (Download Options): --no-clobber's documentation was 23564 severely lacking -- ameliorated the situation. Some of the 23565 previously-undocumented stuff (like the multiple-file-version 23566 numeric-suffixing) that's now mentioned for the first (and only) 23567 time in the -nc documentation should probably be mentioned 23568 elsewhere, but due to the way that wget.texi's hierarchy is laid 23569 out, I had a hard time finding anywhere else appropriate. 23570 235712000-07-21 Dan Harkless <wget@harkless.org> 23572 23573 * TODO: But Brian McMahon <bm@iucr.org> wants old behavior as an option. 23574 235752000-07-19 Dan Harkless <wget@harkless.org> 23576 23577 * TODO: -k should convert "hostless absolute" URLs, like "/index.html". 23578 235792000-07-17 Dan Harkless <wget@harkless.org> 23580 23581 * doc/wget.texi (HTTP Options): Minor clarification in "download a 23582 single HTML page and all files necessary to display it" example. 23583 235842000-07-14 Jan Prikryl <prikryl@cg.tuwien.ac.at> 23585 23586 * src/retr.c (retrieve_url): Consistently strdup opt.referer when 23587 setting u->referer. 23588 235892000-06-09 Hrvoje Niksic <hniksic@iskon.hr> 23590 23591 * src/url.c (encode_string): Fix comment. 23592 Suggested by Herold Heiko <Heiko.Herold@previnet.it>. 23593 235942000-06-09 Dan Harkless <wget@harkless.org> 23595 23596 * src/main.c (print_help): --help output for --waitretry was over 80 cols. 23597 235982000-06-01 Hrvoje Niksic <hniksic@iskon.hr> 23599 23600 * src/url.c (str_url): Print the port number only if it's different 23601 from the default port number for that protocol. 23602 236032000-06-01 Const Kaplinsky <const@ce.cctpu.edu.ru> 23604 23605 * src/ftp.c (ftp_retrieve_list): Change permissions only on plain 23606 files. 23607 236082000-05-24 Dan Harkless <wget@harkless.org> 23609 23610 * TODO: Timestamps sometimes not copied over on files retrieved by FTP. 23611 236122000-05-22 Dan Harkless <wget@harkless.org> 23613 23614 * src/main.c (print_help): Added --help line for Damir Dzeko 23615 <ddzeko@zesoi.fer.hr>'s until-now-undocumented --referer option. 23616 Removed comments that --referer and --waitretry were undocumented. 23617 Changed "`.wgetrc' command" to "`.wgetrc'-style command" on --help 23618 line for --execute. 23619 236202000-05-22 Dan Harkless <wget@harkless.org> 23621 23622 * doc/wget.texi (HTTP Options): Damir Dzeko <ddzeko@zesoi.fer.hr> did 23623 not document his new --referer option. Did so. 23624 236252000-05-22 Dan Harkless <wget@harkless.org> 23626 23627 * AUTHORS: Added myself to this file, as Hrvoje got confirmation 23628 of my FSF copyright assignment. 23629 23630 * TODO: Added note that fragment identifiers don't work properly. 23631 23632 * po/*.{gmo,po,pot}: Regenerated after modifying wget --help output. 23633 236342000-05-18 Hrvoje Niksic <hniksic@iskon.hr> 23635 23636 * src/ftp.c (getftp): Ditto. 23637 23638 * src/http.c (gethttp): Check for return value of fclose/fflush. 23639 236402000-05-17 Dan Harkless <wget@harkless.org> 23641 23642 * TODO: Make `-k' check for files that were downloaded in the past 23643 and convert links to them in newly-downloaded documents. 23644 236452000-04-18 Dan Harkless <wget@harkless.org> 23646 23647 * doc/sample.wgetrc: Realized I put a global setting in the local section. 23648 236492000-04-13 Dan Harkless <wget@harkless.org> 23650 23651 * doc/Makefile.in (sample.wgetrc.munged_for_texi_inclusion): Added 23652 build, dependencies, and distclean cleanup of this new file. 23653 23654 * doc/sample.wgetrc: Uncommented waitretry and set it to 10, clarified 23655 some wording, and re-wrapped some text to 71 columns due to 23656 @sample indentation in wget.texi. 23657 23658 * doc/wget.texi: Herold further expounded on the behavior of waitretry 23659 -- reworded docs again. Changed note saying _all_ lines in 23660 sample.wgetrc are commented out. Don't have an entire hand- 23661 cut-and-pasted copy of sample.wgetrc in this file -- use @include. 23662 236632000-04-12 Hrvoje Niksic <hniksic@iskon.hr> 23664 23665 * src/http.c (gethttp): Don't free REQUEST -- it was allocated with 23666 alloca(). 23667 Pointed out by Gisle Vanem <gvanem@eunet.no>. 23668 236692000-04-12 Hrvoje Niksic <hniksic@iskon.hr> 23670 23671 * src/host.c (store_hostaddress): Instead of shifting ADDR, start 23672 copying from the correct address. 23673 236742000-04-12 Dan Harkless <wget@harkless.org> 23675 23676 * doc/Makefile.in (install.wgetrc): I completely missed the message 23677 that the new wgetrc wasn't being installed the first couple of 23678 times I ran `make install' after changing sample.wgetrc. Added 23679 blank lines around the message and a "<Hit RETURN to 23680 acknowledge>", and reworded the message to be a bit more clear. 23681 23682 * doc/sample.wgetrc: Added entries for backup_converted and waitretry. 23683 23684 * doc/wget.texi (Download Options and Wgetrc Commands): Herold Heiko 23685 <Heiko.Herold@previnet.it>'s new --waitretry option was 23686 undocumented until now. Reworded the suggested documentation he 23687 sent to the list. 23688 236892000-04-05 Dan Harkless <wget@harkless.org> 23690 23691 * TODO: Make -K only leave .orig files around when different. Add 23692 an option to save all text/html files with .html extension. Allow 23693 mirroring of FTP URLs where logging in puts you somewhere else 23694 besides '/'. 23695 236962000-04-04 Dan Harkless <wget@harkless.org> 23697 23698 * src/host.c (store_hostaddress): R. K. Owen's patch introduces a 23699 "left shift count >= width of type" warning on 32-bit 23700 architectures. Got rid of it by tricking the compiler w/ a variable. 23701 23702 * src/url.c (UNSAFE_CHAR): The macro didn't include all the illegal 23703 characters per RFC1738, namely everything above '~'. It also 23704 generated a warning on OSes where char =~ unsigned char. Fixed. 23705 237062000-04-04 Dan Harkless <wget@harkless.org> 23707 23708 * NEWS (--follow-tags, -G / --ignore-tags): Forgot to mention 23709 these new options when I added them. 23710 237112000-03-31 Hrvoje Niksic <hniksic@srce.hr> 23712 23713 * src/Use TOUPPER/TOLOWER. 23714 237152000-03-21 Hrvoje Niksic <hniksic@iskon.hr> 23716 23717 * src/wget.h (DO_REALLOC_FROM_ALLOCA): Ditto. 23718 23719 * src/sysdep.h (ISALNUM): New macro. 23720 (TOLOWER): Ditto. 23721 (TOUPPER): Ditto. 23722 237232000-03-10 Dan Harkless <wget@harkless.org> 23724 23725 * src/html.c (idmatch): Implemented checking of my new --follow-tags 23726 and --ignore-tags options. 23727 23728 * src/init.c (commands): Added comment reminding people adding new 23729 entries doing allocation to add corresponding freeing in cleanup(). 23730 (commands): Added new followtags and ignoretags commands. 23731 (cleanup): Free storage for new followtags and ignoretags. 23732 23733 * src/main.c: Use of "comma-separated list" was random -- normalized 23734 it. Did some alphabetization. Added comments pointing out 23735 "Options without arguments" and "Options accepting an argument" 23736 sections of long_options[]. Added new options --follow-tags and 23737 -G / --ignore-tags. Added comment that Damir's --referer is 23738 currently undocumented. Added comment that Heiko's --waitretry is 23739 partially undocumented (mentioned in --help but not in 23740 wget.texi). Moved improperly sorted 24, 129, and 'G' cases. 23741 23742 * src/options.h (struct options): Added new fields follow_tags and 23743 ignore_tags. 23744 23745 * src/wget.h: Added "#define EQ 0" so we can say "strcmp(a, b) == EQ". 23746 237472000-03-10 Dan Harkless <wget@harkless.org> 23748 23749 * doc/wget.texi (Recursive Retrieval Options): In -K description, 23750 added a link to the discussion of interaction with -N. 23751 (Recursive Accept/Reject Options): Did some alphabetizing and added 23752 descriptions of new --follow-tags and -G / --ignore-tags options. 23753 (Following Links): Changed "the loads of" to "loads of". 23754 (Wgetrc Commands): Added descriptions of new follow_tags and 23755 ignore_tags commands. 23756 237572000-03-10 Dan Harkless <wget@harkless.org> 23758 23759 * TODO: Removed done item: we now have an option (-G) that makes 23760 it easy to download a single HTML document and all its constituents. 23761 23762 * po/*.{gmo,po,pot}: Regenerated after adding new options. 23763 23764 * po/hr.po: Hrvoje forgot '\n's on his translations of my altered 23765 messages, causing msgfmt to balk and `make install' to fail. 23766 237672000-03-02 Hrvoje Niksic <hniksic@iskon.hr> 23768 23769 * doc/wget.texi (Contributors): Update contributors list. 23770 237712000-03-02 HIROSE Masaaki <hirose31@t3.rim.or.jp> 23772 23773 * src/html.c (html_allow): Add <link href=...> and <script src=...>. 23774 237752000-03-02 Daniel S. Lewart <d-lewart@uiuc.edu> 23776 23777 * doc/wget.texi: Fix spelling and grammatical mistakes. 23778 237792000-03-02 Dan Harkless <wget@harkless.org> 23780 23781 * src/ftp.c (ftp_loop_internal): Heiko introduced "suggest explicit 23782 braces to avoid ambiguous `else'" warnings. Eliminated them. 23783 23784 * src/http.c (gethttp): Dan Berger's query string patch is totally 23785 bogus. If you have two different URLs, gen_page.cgi?page1 and 23786 get_page.cgi?page2, they'll both be saved as get_page.cgi and the 23787 second will overwrite the first. Also, parameters to implicit 23788 CGIs, like "http://www.host.com/db/?2000-03-02" cause the URLs to 23789 be printed with trailing garbage characters, and could seg fault. 23790 Backing out the patch, which Dan B. informed me by email was just 23791 a kludge to download StarOffice from Sun made necessary due to 23792 wget's unconditional escaping of certain characters (room for an 23793 option there?). 23794 (http_loop): Heiko introduced "suggest explicit braces to avoid 23795 ambiguous `else'" warnings. Eliminated them. 23796 23797 * src/main.c: Heiko's --wait / --waitretry backwards compatibility 23798 code looks to have been totally untested -- automatic variable 23799 'wr' was used without being initialized, and a long int was passed 23800 into setval()'s char* val parameter. 23801 23802 * src/recur.c (parse_robots): Applied Edward J. Sabol 23803 <sabol@alderaan.gsfc.nasa.gov>'s patch for Guan Yang's reported 23804 problem with "User-agent:<space>*<space>" lines in robots.txt. 23805 23806 * src/url.c (parseurl, str_url): Removing Dan Berger's code (see 23807 http.c above for explanation). 23808 238092000-03-01 Dan Harkless <wget@harkless.org> 23810 23811 * src/ftp.c (ftp_loop_internal): Call new downloaded_file() function, 23812 even though we don't do conversion on HTML files retrieved via 23813 FTP, so _current_ usage of downloaded_file() makes this call unneeded. 23814 (ftp_retrieve_list): Added a comment saying where we need to 23815 stat() a .orig file if FTP'd HTML file conversion is ever implemented. 23816 (ftp_retrieve_list): "Local file '%s' is more recent," is sometimes 23817 a lie -- reworded as "Server file no newer than local file '%s' --". 23818 23819 * src/http.c (http_loop): Fixed a typo and clarified a comment. 23820 (http_loop): When -K and -N are specified together, compare size 23821 and timestamp of server file X against local file X.orig (if 23822 extant) rather than converted local file X. 23823 (http_loop): "Local file '%s' is more recent," is sometimes a lie 23824 -- reworded as "Server file no newer than local file '%s' --". 23825 (http_loop): Call new downloaded_file() function to prevent 23826 wrongful overwriting of .orig file when -N is specified. 23827 23828 * src/url.c (convert_links): When -K specified, only rename X to 23829 X.orig if downloaded_file() returns TRUE. Otherwise when we skip 23830 file X due to -N, we clobber an X.orig from a previous invocation. 23831 (convert_links): Call the failsafe xstrdup(), not the real strdup(). 23832 (convert_links): Added a note asking anyone who understands how 23833 multiple URLs can correspond to a single file to comment it. 23834 (downloaded_file): Added this new function. 23835 23836 * src/url.h (downloaded_file): Added prototype for this new function 23837 as well as its downloaded_file_t enum type. 23838 23839 * src/wget.h (boolean): Added this new typedef and TRUE and FALSE #defines. 23840 238412000-03-01 Dan Harkless <wget@harkless.org> 23842 23843 * doc/wget.texi (HTTP Time-Stamping Internals): Added a note about my 23844 newly-implemented interaction between -K and -N. 23845 238462000-03-01 Dan Harkless <wget@harkless.org> 23847 23848 * NEWS (-K): Now possible to use -N with -k thanks to this option. 23849 23850 * TODO: Removed the -K / -N interaction item. 23851 238522000-02-29 Dan Harkless <wget@harkless.org> 23853 23854 * src/version.c: Upped version to developer-only "1.5.3+dev". 23855 238562000-02-29 Dan Harkless <wget@harkless.org> 23857 23858 * doc/wget.texi: Updated version to 1.5.3+dev, updated copyrights to 23859 2000, changed Hrvoje's old, invalid email address to his new one, 23860 and added " and the developers" to the .texi file's byline. 23861 238622000-02-29 Dan Harkless <wget@harkless.org> 23863 23864 * NEWS (-K / --backup-converted): Mentioned this new option. 23865 238662000-02-18 Dan Harkless <wget@harkless.org> 23867 23868 * src/init.c (backup_converted): Added this new option. 23869 23870 * src/main.c (-K / --backup-converted): Added this new option. 23871 23872 * src/options.h (backup_converted): Added this new option. 23873 23874 * src/url.c (convert_links): When backup_converted is specified, save 23875 file X as X.orig before converting. 23876 23877 * src/url.h (urlpos): Fixed typo -- said "Rekative" instead of "Relative". 23878 238792000-02-18 Dan Harkless <wget@harkless.org> 23880 23881 * doc/wget.texi (Recursive Retrieval Options): Documented my new -K / 23882 --backup-converted option. 23883 (Wgetrc Commands): Documented backup_converted equivalent. 23884 238852000-02-18 Dan Harkless <wget@harkless.org> 23886 23887 * TODO: When -K is used with -N, check local X.orig against server X. 23888 238892000-01-30 Damir Dzeko <ddzeko@zesoi.fer.hr> 23890 23891 * src/http.c (gethttp): Send custom Referer, if required. 23892 238931999-09-24 Charles G Waldman <cgw@fnal.gov> 23894 23895 * src/netrc.c (parse_netrc): Allow passwords to contain spaces. 23896 23897 * src/netrc.c (parse_netrc): New function. 23898 238991999-09-17 Dan Berger <dberger@ix.netcom.com> 23900 23901 * src/http.c (gethttp): Send it. 23902 23903 * src/url.c (parseurl): Detect query string in HTTP URL-s. 23904 (str_url): Print it. 23905 239061999-08-25 Heiko Herold <Heiko.Herold@previnet.it> 23907 23908 * src/ftp.c: Respect new option waitretry. 23909 239101999-05-02 andrew deryabin <djsf@softhome.net> 23911 23912 * src/http.c (gethttp): Specify port in `Host' header only if it's 23913 different from 80. 23914 239151998-12-22 Alexander V. Lukyanov <lav@yars.free.net> 23916 23917 * src/ftp-opie.c (btoe): Zero-terminate OSTORE. 23918 239191998-12-01 Hrvoje Niksic <hniksic@srce.hr> 23920 23921 * src/url.c (UNSAFE_CHAR): New macro. 23922 (contains_unsafe): Use it. 23923 (encode_string): Ditto. 23924 239251998-12-01 Hrvoje Niksic <hniksic@srce.hr> 23926 23927 * src/main.c (i18n_initialize): Use LC_MESSAGES only if available. 23928 239291998-12-01 "R. K. Owen" <rkowen@Nersc.GOV> 23930 23931 * src/host.c (store_hostaddress): Fix for big endian 64-bit machines. 23932 239331998-11-03 Edward J. Sabol <sabol@alderaan.gsfc.nasa.gov> 23934 23935 * src/recur.c (recursive_retrieve): If a finite maximum depth is 23936 specified, and we're are already at that depth, don't download the 23937 HTML file for parsing. 23938 239391998-10-17 Hrvoje Niksic <hniksic@srce.hr> 23940 23941 * src/http.c (http_process_type): Removed needless strdup(), a memory 23942 leak. 23943 239441998-09-25 Simon Munton <simonm@m4data.co.uk> 23945 23946 * src/init.c (wgetrc_file_name): Don't free HOME under Windows. 23947 239481998-09-25 Hrvoje Niksic <hniksic@srce.hr> 23949 23950 * src/html.c (htmlfindurl): Set PH to the first occurrence of `#'. 23951 239521998-09-21 Hrvoje Niksic <hniksic@srce.hr> 23953 23954 * src/version.c: Wget 1.5.3 is released. 23955 239561998-09-21 Hrvoje Niksic <hniksic@srce.hr> 23957 23958 * src/host.c (ftp_getaddress): Don't warn when reverse-lookup of local 23959 address doesn't yield FQDN. 23960 239611998-09-21 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> 23962 23963 * src/cmpt.c (strerror): Fix declaration of sys_errlist. 23964 239651998-09-11 Szakacsits Szabolcs <szaka@sienet.hu> 23966 23967 * src/html.c (htmlfindurl): Download table background. 23968 239691998-09-11 Hrvoje Niksic <hniksic@srce.hr> 23970 23971 * src/main.c (main): Don't use an array subscript as the first 23972 argument to STRDUP_ALLOCA. 23973 From Kaveh R. Ghazi. 23974 239751998-09-11 Hans Grobler <grobh@conde.ee.sun.ac.za> 23976 23977 * src/init.c (parse_line): Would free *com before allocating it. 23978 (parse_line): Would free com instead of *com. 23979 239801998-09-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 23981 23982 * src/log.c: Use <stdarg.h> only when __STDC__. 23983 239841998-09-10 Hrvoje Niksic <hniksic@srce.hr> 23985 23986 * src/http.c (http_loop): Don't print status code if quiet. 23987 239881998-09-10 Hrvoje Niksic <hniksic@srce.hr> 23989 23990 * doc/wget.texi (HTTP Options): Warn against masquerading as Mozilla. 23991 239921998-09-10 Howard Gayle <howard@fjst.com> 23993 23994 * src/url.c (get_urls_html): Would drop the last character of the 23995 link. 23996 239971998-09-10 Howard Gayle <howard@fjst.com> 23998 23999 * src/ftp.c (ftp_retrieve_list): Don't update the time stamp of a file 24000 not retrieved. 24001 240021998-09-10 Adam D. Moss <adam@foxbox.org> 24003 24004 * src/html.c (htmlfindurl): Download <layer src=...>. 24005 240061998-06-27 Hrvoje Niksic <hniksic@srce.hr> 24007 24008 * src/utils.c: Include <libc.h> on NeXT. 24009 240101998-06-26 Heinz Salzmann <heinz.salzmann@intermetall.de> 24011 24012 * src/url.c (get_urls_html): Fix calculation of URL position. 24013 240141998-06-23 Hrvoje Niksic <hniksic@srce.hr> 24015 24016 * src/version.c: Wget 1.5.2 is released. 24017 240181998-06-23 Dave Love <d.love@dl.ac.uk> 24019 24020 * src/ftp.c, init.c, netrc.c: Include errno.h. 24021 24022 * src/http.c: Include errno.h and time header. 24023 24024 * src/Makefile.in (exext): Define. 24025 (install.bin, uninstall.bin): Use it. 24026 240271998-06-23 Dave Love <d.love@dl.ac.uk> 24028 24029 * configure.in (exext): Define. 24030 240311998-06-21 Hrvoje Niksic <hniksic@srce.hr> 24032 24033 * src/http.c (http_loop): Don't attempt to compare local and remote 24034 sizes if the remote size is unknown. 24035 240361998-06-16 Hrvoje Niksic <hniksic@srce.hr> 24037 24038 * src/url.c (get_urls_html): Use malloc() instead of alloca in the 24039 loop. 24040 240411998-06-13 Hrvoje Niksic <hniksic@srce.hr> 24042 24043 * src/version.c: Wget 1.5.2-b4 is released. 24044 240451998-06-13 Hrvoje Niksic <hniksic@srce.hr> 24046 24047 * src/url.c (get_urls_html): Ignore spaces before and after the URI. 24048 240491998-06-08 Wanderlei Antonio Cavassin <cavassin@conectiva.com.br> 24050 24051 * src/ftp.c (getftp): Translate `done'. 24052 240531998-06-06 Hrvoje Niksic <hniksic@srce.hr> 24054 24055 * src/version.c: Wget 1.5.2-b3 is released. 24056 240571998-06-06 Hrvoje Niksic <hniksic@srce.hr> 24058 24059 * src/utils.c (make_directory): Twiddle. 24060 24061 * src/config.h.in: Added template for access(). 24062 240631998-06-06 Hrvoje Niksic <hniksic@srce.hr> 24064 24065 * configure.in: Check for access(). 24066 240671998-06-06 Alexander Kourakos <awk@bnt.com> 24068 24069 * src/init.c (cleanup): Close dfp, don't free it. 24070 240711998-06-05 Mathieu Guillaume <mat@cythere.com> 24072 24073 * src/html.c (htmlfindurl): Download <input src=...> 24074 240751998-06-03 Hrvoje Niksic <hniksic@srce.hr> 24076 24077 * src/utils.c (file_exists_p): Use access() with two arguments. 24078 240791998-05-27 Martin Kraemer <Martin.Kraemer@mch.sni.de> 24080 24081 * src/netrc.c (parse_netrc): Correct logic. 24082 240831998-05-27 Hrvoje Niksic <hniksic@srce.hr> 24084 24085 * src/ftp.c (getftp): Added `break'; suggested by Lin Zhe Min 24086 <ljm@ljm.wownet.net>. 24087 240881998-05-24 Hrvoje Niksic <hniksic@srce.hr> 24089 24090 * src/version.c: Wget 1.5.2-b2 is released. 24091 240921998-05-24 Hrvoje Niksic <hniksic@srce.hr> 24093 24094 * doc/Makefile.in (clean): Remove HTML files. 24095 240961998-05-20 Hrvoje Niksic <hniksic@srce.hr> 24097 24098 * po/hr.po: Some fixes, as per suggestions by Francois Pinard. 24099 241001998-05-19 Toomas Soome <tsoome@ut.ee> 24101 24102 * po/et.po: Updated. 24103 241041998-05-19 Dominique Delamarre <dominique.delamarre@hol.fr> 24105 24106 * po/fr.po: New file. 24107 241081998-05-18 Juan Jose Rodriguez <jcnsoft@jal1.telmex.net.mx> 24109 24110 * src/mswindows.h: Don't translate mkdir to _mkdir under Borland. 24111 241121998-05-17 Hrvoje Niksic <hniksic@srce.hr> 24113 24114 * src/retr.c (elapsed_time): Return correct value when 24115 HAVE_GETTIMEOFDAY is undefined. 24116 241171998-05-13 Hrvoje Niksic <hniksic@srce.hr> 24118 24119 * src/version.c: Wget 1.5.2-b1 is released. 24120 241211998-05-13 Hrvoje Niksic <hniksic@srce.hr> 24122 24123 * doc/wget.texi: Various updates. 24124 (Proxies): New node. 24125 241261998-05-11 Simos KSenitellis <simos@teiath.gr> 24127 24128 * po/el.po: New file. 24129 241301998-05-09 Toomas Soome <tsoome@ut.ee> 24131 24132 * po/et.po: New file. 24133 241341998-05-09 Hrvoje Niksic <hniksic@srce.hr> 24135 24136 * doc/texinfo.tex: New file. 24137 241381998-05-09 Hrvoje Niksic <hniksic@srce.hr> 24139 24140 * aclocal.m4 (WGET_WITH_NLS): Print available catalogs. 24141 241421998-05-08 Hrvoje Niksic <hniksic@srce.hr> 24143 24144 * src/getopt.c (_getopt_internal): Use exec_name instead of argv[0]. 24145 (_getopt_internal): Don't translate `#if 0'-ed strings. 24146 241471998-05-08 Hrvoje Niksic <hniksic@srce.hr> 24148 24149 * doc/Makefile.in (dvi): New target. 24150 241511998-05-06 Douglas E. Wegscheid <wegscd@whirlpool.com> 24152 24153 * windows/makefile.bor: Updated. 24154 24155 * windows/Makefile.src: Ditto. 24156 241571998-05-06 Douglas E. Wegscheid <wegscd@whirlpool.com> 24158 24159 * src/mswindows.c (ws_handler): Use fork_to_background(). 24160 241611998-05-06 Douglas E. Wegscheid <wegscd@whirlpool.com> 24162 24163 * configure.bat: set up for either Borland or Visual C 24164 24165 * windows/wget.dep: new file 24166 24167 * windows/Makefile.*: use wget.dep 24168 24169 * rename windows/Makefile.bor to Makefile.src.bor 24170 241711998-05-05 Hrvoje Niksic <hniksic@srce.hr> 24172 24173 * src/version.c: Wget 1.5.1 is released. 24174 241751998-05-05 Hrvoje Niksic <hniksic@srce.hr> 24176 24177 * src/http.c (parse_http_status_line): Avoid `minor' and `major' 24178 names. 24179 241801998-05-02 Hrvoje Niksic <hniksic@srce.hr> 24181 24182 * src/utils.c (mkdirhier): Renamed to make_directory. 24183 241841998-05-02 Hrvoje Niksic <hniksic@srce.hr> 24185 24186 * doc/wget.texi (Recursive Retrieval): Fix typo. Suggested by 24187 Francois Pinard. 24188 241891998-05-01 Hrvoje Niksic <hniksic@srce.hr> 24190 24191 * src/mswindows.c (fork_to_background): Define under Windows. 24192 24193 * src/utils.c (fork_to_background): New function. 24194 24195 * src/html.c (htmlfindurl): Removed rerdundant casts. 24196 241971998-05-01 Douglas E. Wegscheid <wegscd@whirlpool.com> 24198 24199 * src/mswindows.c (ws_mypath): Cache the path. 24200 242011998-04-30 Douglas E. Wegscheid <wegscd@whirlpool.com> 24202 24203 * windows/config.h.bor: New file. 24204 24205 * windows/makefile.bor: New file. 24206 242071998-04-30 Douglas E. Wegscheid <wegscd@whirlpool.com> 24208 24209 * src/ftp.h: Prefix enum ftype members with FT_. 24210 24211 * src/ftp-ls.c, ftp.c, html.h: Adjust accordingly. 24212 24213 * src/mswindows.h: Use stat under Borland, _stat under MSVC. 24214 242151998-04-28 Hrvoje Niksic <hniksic@srce.hr> 24216 24217 * src/http.c (known_authentication_scheme_p): New function. 24218 (gethttp): Handle authorization more correctly. 24219 24220 * src/ftp-basic.h: Removed. 24221 24222 * src/cmpt.h: Removed. 24223 24224 * src/utils.c: Include <unistd.h> before <pwd.h>; needed under SunOS 24225 with gcc 2.8. 24226 (numdigit): Use `while' loop. 24227 24228 * src/http.c (create_authorization_line): Detect authentication 24229 schemes case-insensitively. 24230 24231 * src/http.c (extract_header_attr): Use strdupdelim(). 24232 (digest_authentication_encode): Move declaration of local 24233 variables to smaller scope. 24234 (digest_authentication_encode): Reset REALM, OPAQUE and NONCE. 24235 (create_authorization_line): Detect authentication schemes 24236 case-insensitively. 24237 24238 * src/utils.c (touch): Constify. 24239 24240 * src/http.c (gethttp): Report a nicer error when no data is received. 24241 24242 * src/rbuf.h (RBUF_READCHAR): Ditto. 24243 24244 * src/ftp-basic.c (ftp_response): Use sizeof. 24245 242461998-04-27 John Burden <john@futuresguide.com> 24247 24248 * windows/Makefile.*: Cleanup. 24249 242501998-04-27 Hrvoje Niksic <hniksic@srce.hr> 24251 24252 * src/retr.c (print_percentage): EXPECTED is long, not int. 24253 (print_percentage): Use floating-point arithmetic to avoid 24254 overflow with large files' sizes multiplied with 100. 24255 242561998-04-27 Gregor Hoffleit <flight@mathi.uni-heidelberg.de> 24257 24258 * src/config.h.in: Added pid_t stub. 24259 24260 * src/sysdep.h (S_ISREG): Moved here from mswindows.h (NeXT doesn't 24261 define it). 24262 242631998-04-27 Gregor Hoffleit <flight@mathi.uni-heidelberg.de> 24264 24265 * configure.in: Check for PID_T. 24266 242671998-04-20 Hrvoje Niksic <hniksic@srce.hr> 24268 24269 * src/version.c: Wget 1.5.0 is released. 24270 242711998-04-19 Wanderlei Cavassin <cavassin@conectiva.com.br> 24272 24273 * po/pt_BR.po: Updated. 24274 242751998-04-19 Jan Prikryl <prikryl@cg.tuwien.ac.at> 24276 24277 * po/cs.po: Updated. 24278 242791998-04-19 Giovanni Bortolozzo <borto@dei.unipd.it> 24280 24281 * po/it.po: Updated. 24282 242831998-04-18 Hrvoje Niksic <hniksic@srce.hr> 24284 24285 * src/url.c (str_url): Ditto. 24286 24287 * src/ftp-basic.c (ftp_rest): Use new name. 24288 24289 * src/utils.c (long_to_string): Renamed from prnum(). 24290 242911998-04-18 Hrvoje Niksic <hniksic@srce.hr> 24292 24293 * doc/wget.texi: Fixed @dircategory, courtesy Karl Eichwalder. 24294 242951998-04-16 Hrvoje Niksic <hniksic@srce.hr> 24296 24297 * src/version.c: Wget 1.5-b17 is released. 24298 242991998-04-08 Wanderlei Cavassin <cavassin@conectiva.com.br> 24300 24301 * po/pt_BR.po: Updated. 24302 243031998-04-08 Stefan Hornburg <racke@gundel.han.de> 24304 24305 * Makefile (dist): New target. 24306 243071998-04-08 Hrvoje Niksic <hniksic@srce.hr> 24308 24309 * src/version.c: Wget 1.5-b16 is released. 24310 243111998-04-08 Hrvoje Niksic <hniksic@srce.hr> 24312 24313 * src/init.c (commands): Renamed `always_rest' to `continue'. 24314 243151998-04-08 Hrvoje Niksic <hniksic@srce.hr> 24316 24317 * src/headers.c (header_get): New argument FLAGS. 24318 24319 * src/http.c (gethttp): If request is malformed, bail out of the 24320 header loop. 24321 (gethttp): Check for empty header *after* the status line checks. 24322 (gethttp): Disallow continuations for status line. 24323 243241998-04-05 Hrvoje Niksic <hniksic@srce.hr> 24325 24326 * src/all: Use it. 24327 24328 * src/log.c (logputs): New argument. 24329 (logvprintf): Ditto. 24330 (logprintf): Ditto. 24331 243321998-04-04 Hrvoje Niksic <hniksic@srce.hr> 24333 24334 * src/version.c: Wget 1.5-b15 is released. 24335 243361998-04-04 Hrvoje Niksic <hniksic@srce.hr> 24337 24338 * src/utils.h: Declare file_non_directory_p(). 24339 243401998-04-04 Hrvoje Niksic <hniksic@srce.hr> 24341 24342 * src/http.c (http_atotm): Update comment. 24343 24344 * src/main.c (i18n_initialize): Set LC_MESSAGES, not LC_ALL. 24345 24346 * src/wget.h: Renamed ENABLED_NLS to HAVE_NLS. 24347 24348 * src/main.c (i18n_initialize): New function. 24349 (main): Use it. 24350 24351 * src/log.c: Include <unistd.h>. 24352 24353 * src/retr.c (show_progress): Cast alloca to char *. 24354 243551998-04-04 Hrvoje Niksic <hniksic@srce.hr> 24356 24357 * aclocal.m4 (WGET_WITH_NLS): Renamed USE_NLS to HAVE_NLS. 24358 24359 * ABOUT-NLS: Removed. 24360 24361 * Makefile.in (stamp-h): Clean up stamp-h-related dependencies. 24362 Don't attempt to write to stamp-h.in. 24363 24364 * aclocal.m4 (WGET_PROCESS_PO): Reset srcdir to ac_given_srcdir. 24365 243661998-04-03 Hrvoje Niksic <hniksic@srce.hr> 24367 24368 * src/main.c (main): It's `tries', not `numtries' now. 24369 243701998-04-03 Hrvoje Niksic <hniksic@srce.hr> 24371 24372 * Makefile.in (distclean-top): Remove stamp-h. 24373 243741998-04-02 Robert Schmidt <rsc@vingmed.no> 24375 24376 * po/no.po: New file. 24377 243781998-04-01 Tim Charron <tcharron@interlog.com> 24379 24380 * src/log.c (logvprintf): Don't use ARGS twice. 24381 243821998-04-01 Junio Hamano <junio@twinsun.com> 24383 24384 * src/http.c: Document all the Digest functions. 24385 243861998-04-01 John <john@futuresguide.com> 24387 24388 * src/mswindows.c: Cleaned up. 24389 243901998-04-01 Hrvoje Niksic <hniksic@srce.hr> 24391 24392 * src/version.c: Wget 1.5-b14 is released. 24393 243941998-04-01 Hrvoje Niksic <hniksic@srce.hr> 24395 24396 * src/utils.c (file_non_directory_p): Renamed from isfile(). 24397 24398 * src/mswindows.h (S_ISREG): New macro, suggested by Tim Adam. 24399 244001998-04-01 Hrvoje Niksic <hniksic@srce.hr> 24401 24402 * src/init.c (getperms): Removed. 24403 244041998-04-01 Hrvoje Niksic <hniksic@srce.hr> 24405 24406 * src/ftp-opie.c (STRLEN4): New macro. 24407 (btoe): Use it. 24408 244091998-04-01 Hrvoje Niksic <hniksic@srce.hr> 24410 24411 * configure.in: New option `--disable-debug'. 24412 244131998-03-31 Junio Hamano <junio@twinsun.com> 24414 24415 * src/http.c (HEXD2asc): New macro. 24416 (dump_hash): Use it. 24417 244181998-03-31 Hrvoje Niksic <hniksic@srce.hr> 24419 24420 * src/version.c: Wget 1.5-b13 is released. 24421 244221998-03-31 Hrvoje Niksic <hniksic@srce.hr> 24423 24424 * src/utils.c (mkdirhier): Use 0777 instead of opt.dirmode. 24425 24426 * src/init.c (cmd_spec_dotstyle): Use 48 dots per line for binary 24427 style. 24428 (cmd_permissions): Removed. 24429 24430 * src/config.h.in: Add template for WORDS_BIGENDIAN. 24431 244321998-03-31 Hrvoje Niksic <hniksic@srce.hr> 24433 24434 * src/main.c (main): Don't try to use `com'. 24435 244361998-03-31 Hrvoje Niksic <hniksic@srce.hr> 24437 24438 * doc/Makefile.in: Don't attempt to (un)install the man-page. 24439 244401998-03-31 Hrvoje Niksic <hniksic@srce.hr> 24441 24442 * configure.in: Check for endianness. 24443 244441998-03-30 Hrvoje Niksic <hniksic@srce.hr> 24445 24446 * src/version.c: Wget 1.5-b12 is released. 24447 244481998-03-30 Hrvoje Niksic <hniksic@srce.hr> 24449 24450 * src/init.c (commands): Renamed `numtries' to `tries'. 24451 (cmd_spec_debug): Removed. 24452 (home_dir): Under Windows, return `C:\' if HOME is undefined. 24453 244541998-03-30 Hrvoje Niksic <hniksic@srce.hr> 24455 24456 * src/init.c (cmd_permissions): New function. 24457 244581998-03-30 Hrvoje Niksic <hniksic@srce.hr> 24459 24460 * doc/wget.1: Removed it. 24461 244621998-03-29 Hrvoje Niksic <hniksic@srce.hr> 24463 24464 * src/version.c: Wget 1.5-b11 is released. 24465 244661998-03-29 Hrvoje Niksic <hniksic@srce.hr> 24467 24468 * src/config.h.in: Define _XOPEN_SOURCE. 24469 24470 * src/init.c (check_user_specified_header): New function. 24471 (cmd_spec_header): Use it. 24472 (cmd_spec_useragent): New function. 24473 244741998-03-29 Hrvoje Niksic <hniksic@srce.hr> 24475 24476 * doc/wget.texi (Invoking): Split into more sections, analogous to 24477 output of `wget --help'. 24478 (HTTP Options): Document --user-agent. 24479 244801998-03-29 Hrvoje Niksic <hniksic@srce.hr> 24481 24482 * aclocal.m4 (WGET_PROCESS_PO): Use echo instead of AC_MSG_RESULT. 24483 244841998-03-28 Hrvoje Niksic <hniksic@srce.hr> 24485 24486 * src/wget.h: Include <libintl.h> only if NLS is enabled. 24487 244881998-03-28 Hrvoje Niksic <hniksic@srce.hr> 24489 24490 * aclocal.m4 (WGET_WITH_NLS): Disable USE_NLS if gettext is 24491 unavailable. 24492 24493 * aclocal.m4: Renamed AM_STRUCT_UTIMBUF to WGET_STRUCT_UTIMBUF; 24494 renamed AM_WITH_NLS to WGET_WITH_NLS. 24495 24496 * aclocal.m4: Eliminate POSUBS. 24497 244981998-03-26 Hrvoje Niksic <hniksic@srce.hr> 24499 24500 * src/options.h (struct options): Made `wait' a long. 24501 (struct options): Ditto for `timeout'. 24502 245031998-03-19 Hrvoje Niksic <hniksic@srce.hr> 24504 24505 * src/utils.c (exists): Renamed to file_exists_p. 24506 (file_exists_p): Use access() if available. 24507 245081998-03-17 Hrvoje Niksic <hniksic@srce.hr> 24509 24510 * src/utils.c (memfatal): Set save_log_p to 0 to avoid potential 24511 infloop. 24512 24513 * src/log.c: do_logging -> save_log_p. 24514 24515 * src/config.h.in: Added template for HAVE_VSNPRINTF. 24516 245171998-03-17 Hrvoje Niksic <hniksic@srce.hr> 24518 24519 * Makefile.in: config.h* -> src/config.h* 24520 24521 * configure.in: Check for vsnprintf(). 24522 24523 * po/POTFILES.in: Updated. 24524 245251998-03-16 Jan Prikryl <prikryl@cg.tuwien.ac.at> 24526 24527 * po/cs.po: New file. 24528 245291998-03-16 Hrvoje Niksic <hniksic@srce.hr> 24530 24531 * src/version.c: Wget 1.5-b10 is released. 24532 245331998-03-16 Hrvoje Niksic <hniksic@srce.hr> 24534 24535 * src/init.c: Ditto. 24536 24537 * src/http.c: Protect declaration against non-ANSI compiler. 24538 24539 * src/log.c (logvprintf): Use vsnprintf() if available. 24540 24541 * src/getopt.c (main): Don't translate test stuff. 24542 245431998-03-16 Hrvoje Niksic <hniksic@srce.hr> 24544 24545 * po/POTFILES.in: Removed extraneous newline at end of line, which 24546 caused an error in `Makefile' which Sun make choked on. 24547 245481998-03-16 Hrvoje Niksic <hniksic@srce.hr> 24549 24550 * doc/wget.texi (Contributors): Updated with oodles of new names. 24551 245521998-03-12 Wanderlei Cavassin <cavassin@conectiva.com.br> 24553 24554 * po/pt_BR.po: New file. 24555 245561998-03-11 Hrvoje Niksic <hniksic@srce.hr> 24557 24558 * src/ftp.c (getftp): Don't translate "CWD %s". 24559 24560 * src/wget.h (GCC_FORMAT_ATTR): Renamed from FORMAT_ATTR. 24561 245621998-03-07 Tim Adam <tma@osa.com.au> 24563 24564 * src/recur.c (parse_robots): Correctly reset `entries' on empty 24565 disallow. 24566 245671998-03-07 Hrvoje Niksic <hniksic@srce.hr> 24568 24569 * src/init.c (cmd_spec_debug): Use cmd_boolean(). 24570 245711998-03-07 Hrvoje Niksic <hniksic@srce.hr> 24572 24573 * src/ftp-opie.c (btoe): Use memcpy() instead of strncat(). 24574 24575 * src/log.c (logputs): New function. 24576 (logvprintf): Renamed from vlogmsg; use logputs(). 24577 24578 * src/retr.c (show_progress): Print `[100%]' when the retrieval is 24579 finished. 24580 24581 * src/init.c (run_wgetrc): Use FILE, not PATH. 24582 (wgetrc_file_name): Ditto. 24583 245841998-03-07 Hrvoje Niksic <hniksic@srce.hr> 24585 24586 * PROBLEMS: New file. 24587 245881998-02-23 Hrvoje Niksic <hniksic@srce.hr> 24589 24590 * src/http.c (gethttp): Create proxy-authorization correctly. 24591 245921998-02-22 Karl Eichwalder <ke@suse.de> 24593 24594 * po/Makefile.in.in (install-data-yes): Fix creation of 24595 directories for LC_MESSAGE files. 24596 245971998-02-22 Karl Eichwalder <ke@suse.de> 24598 24599 * doc/Makefile.in (install.info): only info files (no *info.orig, 24600 etc.). 24601 246021998-02-22 Hrvoje Niksic <hniksic@srce.hr> 24603 24604 * src/version.c: Wget 1.5-b9 is released. 24605 246061998-02-22 Hrvoje Niksic <hniksic@srce.hr> 24607 24608 * src/recur.c (recursive_retrieve): Reset `first_time'. 24609 24610 * src/ftp.c (getftp): Added `default' clause to switches of uerr_t. 24611 24612 * src/rbuf.c (rbuf_peek): Simplified. 24613 (rbuf_flush): Use MINVAL. 24614 24615 * src/wget.h (MINVAL): Moved from url.h. 24616 24617 * src/rbuf.h (RBUF_FD): New macro. 24618 24619 * src/url.c (add_url): Add to the head of the list. 24620 24621 * src/ftp.c (ftp_retrieve_list): Set the permissions to downloaded 24622 file. 24623 (getftp): Set the default permissions to 0600. 24624 246251998-02-22 Hrvoje Niksic <hniksic@srce.hr> 24626 24627 * src/md5.c: Ditto. 24628 24629 * src/getopt.c: Use ANSI function definitions. 24630 24631 * src/ftp-opie.c: New file. 24632 24633 * src/options.h: Don't redefine EXTERN. 24634 24635 * src/init.c: Sort it correctly. 24636 246371998-02-22 Hrvoje Niksic <hniksic@srce.hr> 24638 24639 * configure.in: Removed `-Wno-switch' for gcc. 24640 24641 * po/Makefile.in.in (install-data-yes): Use mkinstalldirs to 24642 create the directory first. 24643 246441998-02-21 Karl Eichwalder <karl@suse.de> 24645 24646 * po/de.po: Updated. 24647 246481998-02-21 Hrvoje Niksic <hniksic@srce.hr> 24649 24650 * src/url.c (get_urls_html): Ditto. 24651 (convert_links): Ditto. 24652 24653 * src/recur.c (parse_robots): Ditto. 24654 24655 * src/html.c (ftp_index): Ditto. 24656 24657 * src/ftp-ls.c (ftp_parse_unix_ls): Open file as binary. 24658 24659 * src/init.c (defaults): Initialize `opt' to zero via memset. 24660 24661 * src/http.c (digest_authentication_encode): goto considered harmful. 24662 246631998-02-19 Hrvoje Niksic <hniksic@srce.hr> 24664 24665 * src/ftp.c (delelement): Simplify and fix leak. 24666 246671998-02-19 Hrvoje Niksic <hniksic@srce.hr> 24668 24669 * Makefile.in (check): New empty target. 24670 246711998-02-18 Hrvoje Niksic <hniksic@srce.hr> 24672 24673 * src/http.c (dump_hash): Use HEXD2ASC instead of home-grown stuff. 24674 24675 * src/url.h (HEXD2ASC): Removed warning. 24676 24677 * src/init.c (comind): Use binary search. 24678 (commands): Reorganized. 24679 (setval): Ditto. 24680 (cmd_boolean): New function. 24681 (cmd_number): Ditto. 24682 (cmd_number_inf): Ditto. 24683 (cmd_string): Ditto. 24684 (cmd_vector): Ditto. 24685 (cmd_directory_vector): Ditto. 24686 (cmd_bytes): Ditto. 24687 (cmd_time): Ditto. 24688 (cmd_spec_debug): Ditto. 24689 (cmd_spec_dirmode): Ditto. 24690 (cmd_spec_dirstruct): Ditto. 24691 (cmd_spec_dotstyle): Ditto. 24692 (cmd_spec_header): Ditto. 24693 (cmd_spec_htmlify): Ditto. 24694 (cmd_spec_mirror): Ditto. 24695 (cmd_spec_outputdocument): Ditto. 24696 (cmd_spec_recursive): Ditto. 24697 (settime): Merged with cmd_time(). 24698 (setbytes): Merged with cmd_bytes(). 24699 (setonoff): Merged with cmd_boolean(). 24700 (onoff): Ditto. 24701 247021998-02-17 Hrvoje Niksic <hniksic@srce.hr> 24703 24704 * src/version.c: Wget 1.5-b8 is released. 24705 247061998-02-17 Hrvoje Niksic <hniksic@srce.hr> 24707 24708 * src/http.c (digest_authentication_encode): New function. 24709 (create_authorization_line): Use it. 24710 (dump_hash): New function. 24711 (digest_authentication_encode): Use it. 24712 24713 * src/fnmatch.c: Renamed from `mtch.c'. 24714 247151998-02-17 Hrvoje Niksic <hniksic@srce.hr> 24716 24717 * src/Makefile.in (distclean): Remove `config.h'. 24718 247191998-02-15 Karl Eichwalder <ke@suse.de> 24720 24721 * src/main.c (main): Tag "Written by..." string as translatable. 24722 247231998-02-15 Hrvoje Niksic <hniksic@srce.hr> 24724 24725 * src/wget.h (FREE_MAYBE): New macro. 24726 24727 * src/http.c (create_authorization_line): Don't use ANSI C string 24728 concatenation feature. 24729 (basic_authentication_encode): Use alloca() for temporary 24730 variables. 24731 24732 * src/recur.h: Ditto. 24733 24734 * src/http.c: Ditto. 24735 24736 * src/headers.h: Ditto. 24737 24738 * src/ftp-basic.c: Protect declaration against non-ANSI compiler. 24739 24740 * src/http.c (create_authorization_line): Cast `unsigned char *' to 24741 `char *' for sprintf, to shut up the noisy Digital Unix cc. 24742 247431998-02-15 Hrvoje Niksic <hniksic@srce.hr> 24744 24745 * src/version.c: Wget 1.5-b7 is released. 24746 247471998-02-15 Hrvoje Niksic <hniksic@srce.hr> 24748 24749 * src/cmpt.c (strstr): Synched with glibc-2.0.6. 24750 24751 * src/ftp-basic.c (calculate_skey_response): Ditto. 24752 (calculate_skey_response): Use alloca(). 24753 24754 * src/http.c (create_authorization_line): Work with FSF's version of 24755 md5.c. 24756 24757 * src/md5.c: New file, from GNU libc. 24758 247591998-02-14 Hrvoje Niksic <hniksic@srce.hr> 24760 24761 * src/url.h (URL_CLEANSE): Name the temporary variable more carefully. 24762 247631998-02-13 Junio Hamano <junio@twinsun.com> 24764 24765 * src/http.c: Add HTTP-DA support. 24766 * src/ftp-basic.c: Add Opie/S-key support. 24767 * src/config.h.in, Makefile.in: Add HTTP-DA and Opie/S-key support. 24768 * src/md5.c, md5.h: New files. 24769 247701998-02-13 Hrvoje Niksic <hniksic@srce.hr> 24771 24772 * src/http.c (http_process_range): Renamed from hprocrange(). 24773 (http_process_range): Parse the whole header. 24774 24775 * src/headers.c: New file. 24776 (header_process): New function. 24777 (header_get): Renamed from fetch_next_header. 24778 24779 * src/all: Include utils.h only where necessary. 24780 24781 * src/wget.h: Declare xmalloc(), xrealloc() and xstrdup() here. 24782 24783 * src/wget.h: Add provisions for dmalloc. 24784 247851998-02-13 Hrvoje Niksic <hniksic@srce.hr> 24786 24787 * src/http.c (basic_authentication_encode): New function, instead of 24788 the macro. 24789 247901998-02-12 Hrvoje Niksic <hniksic@srce.hr> 24791 24792 * src/version.c: Wget 1.5-b6 is released. 24793 247941998-02-12 Hrvoje Niksic <hniksic@srce.hr> 24795 24796 * src/ftp.c (ftp_loop): Determine `filename' more precisely. 24797 24798 * src/init.c (setval): Don't set `opt.quiet' if output-document is 24799 `-'. 24800 24801 * src/log.c (log_init): Print to STDERR instead of STDOUT. 24802 (vlogmsg): Use STDERR by default. 24803 (logflush): Ditto. 24804 248051998-02-11 Simon Josefsson <jas@pdc.kth.se> 24806 24807 * src/host.c: Use addr_in again. 24808 248091998-02-11 Hrvoje Niksic <hniksic@srce.hr> 24810 24811 * po/it.po: New file, by Antonio Rosella. 24812 248131998-02-08 Karl Eichwalder <karl@suse.de> 24814 24815 * src/http.c (gethttp): Fixed typo. 24816 248171998-02-08 Karl Eichwalder <karl@suse.de> 24818 24819 * po/de.po: Updated. 24820 248211998-02-08 Hrvoje Niksic <hniksic@srce.hr> 24822 24823 * src/version.c: Wget 1.5-b5 is released. 24824 248251998-02-08 Hrvoje Niksic <hniksic@srce.hr> 24826 24827 * src/retr.c (show_progress): Use it. 24828 24829 * src/log.c (logflush): New function. 24830 24831 * src/wget.h: Utilize __attribute__ if on gcc. 24832 248331998-02-08 Hrvoje Niksic <hniksic@srce.hr> 24834 24835 * aclocal.m4: Cleaned up. 24836 24837 * po/hr.po: Updated. 24838 24839 * configure.in: Removed check for POSIXized ISC. 24840 248411998-02-07 Karl Eichwalder <ke@suse.de> 24842 24843 * Makefile.in (install.info uninstall.info install.man 24844 uninstall.man install.wgetrc): Use it. 24845 24846 * Makefile.in (install.mo): New target. 24847 248481998-02-07 Hrvoje Niksic <hniksic@srce.hr> 24849 24850 * src/http.c (base64_encode_line): New argument LENGTH. 24851 (BASIC_AUTHENTICATION_ENCODE): Use it. 24852 (BASIC_AUTHENTICATION_ENCODE): Take length of HEADER into account. 24853 24854 * src/main.c (main): Fixed fprintf() format mismatch. 24855 248561998-02-06 Hrvoje Niksic <hniksic@srce.hr> 24857 24858 * src/version.c: Wget 1.5-b4 is released. 24859 248601998-02-04 Hrvoje Niksic <hniksic@srce.hr> 24861 24862 * src/init.c (cleanup): Use it. 24863 24864 * src/recur.c (recursive_cleanup): New function. 24865 24866 * src/retr.c (retrieve_from_file): Ditto. 24867 24868 * src/main.c (main): Use it. 24869 24870 * src/recur.c (recursive_reset): New function. 24871 24872 * src/retr.c (retrieve_from_file): Ditto. 24873 24874 * src/main.c (main): Simplify call to recursive_retrieve(). 24875 24876 * src/recur.c (recursive_retrieve): Removed FLAGS argument. 24877 24878 * src/http.c (gethttp): Changed call to iwrite(). 24879 248801998-02-03 Simon Josefsson <jas@pdc.kth.se> 24881 24882 * src/host.c: use sockaddr_in instead of addr_in. 24883 248841998-02-03 Karl Eichwalder <ke@suse.de> 24885 24886 * po/POTFILES.in: Touch it (needed for NLS); add src/ftp.c, 24887 src/getopt.c, src/host.c, src/html.c, src/http.c, src/init.c, 24888 src/main.c, src/mswindows.c, src/netrc.c, src/recur.c, src/retr.c, 24889 src/url.c, and src/utils.c. 24890 24891 * intl/po2tbl.sed.in: Add from gettext-0.10.32 (needed for NLS). 24892 24893 * po/Makefile.in.in: Add from gettext-0.10.32. 24894 24895 * Makefile.in (SUBDIRS): Add po/. 24896 24897 * configure.in (ALL_LINGUAS): New variable. Add "de" and "hr". 24898 (AM_GNU_GETTEXT): Add. 24899 (AC_OUTPUT): Add po/Makefile.in; run the sed command. 24900 24901 * aclocal.m4 (AM_WITH_NLS, AM_GNU_GETTEXT, AM_LC_MESSAGES, 24902 AM_PATH_PROG_WITH_TEST): from gettext-0.10.32. 24903 249041998-02-03 Hrvoje Niksic <hniksic@srce.hr> 24905 24906 * src/version.c: Wget 1.5-b3 is released. 24907 24908 * src/host.c (ftp_getaddress): Don't print to stderr directly. 24909 24910 * src/init.c (setbytes): Support `g' for gigabytes. 24911 (cmdtype): New specification CTIME. 24912 (setval): Use it with settime(). 24913 (commands): Use it for WAIT and TIMEOUT. 24914 249151998-02-03 Hrvoje Niksic <hniksic@srce.hr> 24916 24917 * src/url.c (get_urls_html): Ditto. 24918 (free_urlpos): Ditto. 24919 (mkstruct): Ditto. 24920 (construct): Ditto. 24921 24922 * src/retr.c (retrieve_url): Move declaration of local variables to 24923 smaller scope. 24924 24925 * src/url.c (urlproto): Use it. 24926 (parseurl): Ditto. 24927 (str_url): Ditto. 24928 (get_urls_html): Ditto. 24929 24930 * src/utils.h (ARRAY_SIZE): New macro. 24931 24932 * src/url.c (proto): Moved from url.h. 24933 24934 * src/url.h (URL_CLEANSE): Reformatted. 24935 (USE_PROXY_P): Renamed from USE_PROXY. 24936 24937 * src/ftp-basic.c: Adjust to the new interface of iwrite(). 24938 24939 * src/ftp-basic.c (ftp_port): Use alloca(). 24940 249411998-02-02 Hrvoje Niksic <hniksic@srce.hr> 24942 24943 * src/http.c (BASIC_AUTHENTICATION_ENCODE): New macro. 24944 (gethttp): Use it. 24945 24946 * src/utils.c (unique_name_1): Moved from url.c. 24947 (unique_name): Ditto. 24948 24949 * src/url.c (url_filename): Ditto. 24950 24951 * src/log.c (redirect_output): Changed call to unique_name(). 24952 24953 * src/url.c (unique_name_1): Renamed from unique_name(). 24954 (unique_name): Changed interface. 24955 24956 * src/init.c (enum cmdid): Moved from init.h. 24957 (cmdtype): Ditto. 24958 (struct cmd): Ditto. 24959 24960 * src/main.c (main): Use it. 24961 (main): Moved `--backups' to not have a short option. 24962 24963 * src/options.h (struct options): New member BACKGROUND. 24964 24965 * src/main.c (print_help): Rearranged. 24966 (main): New long options for -n* short options: --no-directories, 24967 --no-host-directories, --non-verbose, --no-host-lookup and 24968 --dont-remove-listing. 24969 249701998-02-01 Hrvoje Niksic <hniksic@srce.hr> 24971 24972 * src/main.c (main): Use log_close(). 24973 24974 * src/log.c: New variable LOGFP. 24975 (vlogmsg): Use it. 24976 (redirect_output): Don't open /dev/null; set LOGFP to stdin 24977 instead. 24978 (log_close): New function. 24979 24980 * src/options.h (struct options): Removed LFILE. 24981 24982 * src/log.c (log_enable): Removed. 24983 24984 * src/main.c (main): Use it. 24985 24986 * src/log.c (log_init): New function. 24987 24988 * src/url.c (get_urls_html): Removed needless assignment to BASE. 24989 24990 * src/host.c (add_hlist): Don't set CMP needlessly. 24991 24992 * src/utils.c (match_backwards): Ditto. 24993 (in_acclist): Ditto. 24994 24995 * src/url.c (findurl): Ditto. 24996 24997 * src/netrc.c (parse_netrc): Ditto. 24998 24999 * src/log.c (log_dump): Ditto. 25000 25001 * src/html.c (html_quote_string): Ditto. 25002 25003 * src/ftp-basic.c (ftp_request): Made static. 25004 25005 * src/connect.c: Made global variables static. 25006 25007 * src/url.c (construct): Ditto. 25008 25009 * src/init.c (init_path): Avoid assignment inside `if'-condition. 25010 25011 * src/ftp.c: Don't include in.h or winsock.h. 25012 25013 * src/ftp.c (ftp_loop): Use SZ. 25014 25015 * src/connect.c (bindport): Cast &addrlen to int *. 25016 (conaddr): Ditto. 25017 25018 * src/init.c (initialize): Don't use SYSTEM_WGETRC unconditionally. 25019 250201998-01-31 Hrvoje Niksic <hniksic@srce.hr> 25021 25022 * src/version.c: Wget 1.5-b2 is released. 25023 25024 * src/netrc.c (NETRC_FILE_NAME): Moved from netrc.h. 25025 25026 * src/utils.c (proclist): Pass FNM_PATHNAME to fnmatch(). 25027 25028 * src/ftp-basic.c (ftp_pasv): Avoid unnecessary casting to unsigned 25029 char. 25030 25031 * src/log.c: Don't attempt to hide arguments from ansi2knr. 25032 25033 * src/cmpt.c: Synched strptime() and mktime() with glibc-2.0.6. 25034 25035 * src/ansi2knr.c: Use a later version, from fileutils-3.16l alpha. 25036 25037 * src/ftp.c (getftp): Ditto. 25038 25039 * src/http.c (gethttp): Use it. 25040 25041 * src/retr.c (get_contents): New argument EXPECTED; pass it to 25042 show_progress(). 25043 (show_progress): New argument EXPECTED; use it to display 25044 percentages. 25045 25046 * src/init.c (setval): Ditto. 25047 25048 * src/http.c (gethttp): Ditto. 25049 (http_loop): Ditto. 25050 25051 * src/ftp.c (getftp): Ditto. 25052 (ftp_loop_internal): Ditto. 25053 25054 * src/ftp-ls.c (ftp_parse_unix_ls): Use abort() instead of assert(0). 25055 25056 * src/sysdep.h (CLOSE): Simplify; use DEBUGP. 25057 25058 * src/netrc.c (search_netrc): Use alloca(). 25059 25060 * src/init.c (defaults): Initialize no_flush. 25061 25062 * src/log.c (vlogmsg): Don't flush if no_flush. 25063 25064 * src/options.h (struct options): New variable no_flush. 25065 25066 * src/main.c (main): Don't play games with buffering. 25067 25068 * src/log.c (vlogmsg): Flush the output after every message. 25069 250701998-01-31 Hrvoje Niksic <hniksic@srce.hr> 25071 25072 * src/recur.c (parse_robots): Check for comments more correctly. 25073 25074 * src/host.c (ftp_getaddress): Use STRDUP_ALLOCA. 25075 (ftp_getaddress): Add diagnostics when reverse-lookup yields only 25076 hostname. 25077 250781998-01-31 Hrvoje Niksic <hniksic@srce.hr> 25079 25080 * src/init.c (parse_line): Ditto. 25081 25082 * src/url.c (get_urls_html): Ditto. 25083 25084 * src/main.c (main): Don't cast to unsigned char. 25085 25086 * src/init.c (run_wgetrc): Don't cast to unsigned char. 25087 (parse_line): Accept char instead of unsigned char. 25088 25089 * src/html.c (htmlfindurl): Use char instead of unsigned char. 25090 25091 * src/all: Use them. 25092 25093 * src/sysdep.h: Add wrappers to ctype macros to make them 25094 eight-bit-clean: 25095 250961998-01-31 Hrvoje Niksic <hniksic@srce.hr> 25097 25098 * src/ftp.c (getftp): Initialize opt.ftp_pass here. 25099 (ftp_retrieve_dirs): Use alloca(). 25100 25101 * src/init.c (defaults): Don't initialize opt.ftp_pass. 25102 25103 * src/sysdep.h (S_ISLNK): Declare for OS/2; ditto for lstat. 25104 From Ivan F. Martinez <ivanfm@ecodigit.com.br>. 25105 251061998-01-31 Hrvoje Niksic <hniksic@srce.hr> 25107 25108 * doc/Makefile.in (install.wgetrc): Don't use `!'. 25109 251101998-01-30 Hrvoje Niksic <hniksic@srce.hr> 25111 25112 * src/http.c (gethttp): Cosmetic changes. 25113 25114 * src/http.c (check_end): Allow `+D...' instead of `GMT'. 25115 From Fabrizio Pollastri <pollastri@cstv.to.cnr.it>. 25116 25117 * src/url.c (process_ftp_type): New function. 25118 (parseurl): Use it. 25119 25120 * src/connect.c (iwrite): Allow writing in a few chunks. 25121 (bindport): Made SRV static, so addr can point to it. 25122 (select_fd): Removed HPUX kludge. 25123 25124 * src/host.c (free_hlist): Incorporated into clean_hosts(). 25125 251261998-01-30 Hrvoje Niksic <hniksic@srce.hr> 25127 25128 * src/html.c (htmlfindurl): Download <img lowsrc=...> 25129 25130 * src/main.c (main): Ignore SIGPIPE. 25131 25132 * src/connect.c (select_fd): New argument WRITEP. 25133 (iwrite): Call select_fd(). 25134 251351998-01-29 Hrvoje Niksic <hniksic@srce.hr> 25136 25137 * src/version.c: Wget v1.5-b1 is released. 25138 25139 * src/http.c (hgetlen): Use sizeof() to get the header length. 25140 (hgetrange): Ditto. 25141 (hgettype): Ditto. 25142 (hgetlocation): Ditto. 25143 (hgetmodified): Ditto. 25144 (haccepts_none): Ditto. 25145 25146 * src/main.c (main): Updated `--version' and `--help' output, as per 25147 Francois Pinard's suggestions. 25148 25149 * src/main.c: Include locale.h; call setlocale(), bindtextdomain() and 25150 textdomain(). 25151 25152 * src/config.h.in: Define stubs for I18N3. 25153 25154 * src/wget.h: Include libintl.h. 25155 251561998-01-29 Hrvoje Niksic <hniksic@srce.hr> 25157 25158 * src/host.c (hlist): Made static. 25159 (search_address): Cosmetic change. 25160 251611998-01-28 Hrvoje Niksic <hniksic@srce.hr> 25162 25163 * src/url.c (mkstruct): Check for opt.cut_dirs. 25164 (mkstruct): alloca()-te more, xmalloc() less. 25165 25166 * src/utils.c (load_file): Check for ferror(). 25167 25168 * src/url.c (get_urls_file): Close only the files we opened. 25169 (get_urls_html): Ditto. 25170 (count_slashes): New function. 25171 25172 * src/http.h: Removed. 25173 25174 * src/http.c (gethttp): Respect username and password provided by 25175 proxy URL. 25176 (base64_encode_line): Write into an existing buffer instead of 25177 malloc-ing a new one. 25178 (struct http_stat): Moved from http.h 25179 25180 * src/retr.c (retrieve_url): Free SUF. 25181 25182 * src/all: Removed lots of unnecessary .h dependencies. 25183 25184 * src/html.c (global_state): Made static. 25185 25186 * src/utils.h (ALLOCA_ARRAY): New macro. 25187 25188 * src/main.c (main): New option `--cut-dirs'. 25189 25190 * src/url.c (construct): Use alloca() for T. 25191 25192 * src/utils.c (mkdirhier): Use STRDUP_ALLOCA. 25193 25194 * src/host.c (_host_t): Moved from host.h. 25195 (struct host): Renamed from _host_t. 25196 (store_hostaddress): Use STRDUP_ALLOCA for INET_S. 25197 (realhost): Ditto. 25198 25199 * src/host.h: Don't include url.h. 25200 25201 * src/ftp.c (LIST_FILENAME): Moved from ftp.h. 25202 25203 * src/init.c (DEFAULT_FTP_ACCT): Moved from ftp.h. 25204 25205 * src/main.c (main): Enable log if the output goes to a TTY. 25206 25207 * src/connect.h: Removed unused constant `BACKLOG'. 25208 25209 * src/config.h.in: Check for isatty(). 25210 25211 * src/Makefile.in (LINK): Use CFLAGS when linking. 25212 252131998-01-28 Hrvoje Niksic <hniksic@srce.hr> 25214 25215 * doc/wget.texi (Advanced Options): Expanded. 25216 252171998-01-27 Hrvoje Niksic <hniksic@srce.hr> 25218 25219 * src/mswindows.c (ws_hangup): Use redirect_output(). 25220 25221 * src/main.c (redirect_output_signal): New function; use 25222 redirect_output(). 25223 25224 * src/log.c (redirect_output): New function, based on hangup(), which 25225 is deleted. 25226 25227 * src/log.c (vlogmsg): New function. 25228 25229 * src/wget.h (DEBUGP): Use debug_logmsg(). 25230 25231 * src/main.c (hangup): Use it. 25232 25233 * src/log.c (log_dump): New function. 25234 25235 * src/utils.h (DO_REALLOC): Use `long' for various sizes. 25236 25237 * src/http.c (hskip_lws): Use `while', for clarity. 25238 (HTTP_DYNAMIC_LINE_BUFFER): New constant. 25239 (fetch_next_header): Use it instead of DYNAMIC_LINE_BUFFER. 25240 25241 * src/ftp-basic.c (FTP_DYNAMIC_LINE_BUFFER): New constant. 25242 (ftp_response): Use it instead of DYNAMIC_LINE_BUFFER. 25243 25244 * src/utils.c (DYNAMIC_LINE_BUFFER): Moved from utils.c. 25245 (LEGIBLE_SEPARATOR): Ditto. 25246 (FILE_BUFFER_SIZE): Ditto. 25247 25248 * src/retr.c (BUFFER_SIZE): Moved from retr.h. 25249 25250 * src/log.c: New file. 25251 (logmsg): Moved from utils.c. 25252 (debug_logmsg): New function. 25253 25254 * src/mswindows.h: Include it here. 25255 25256 * src/init.c: Ditto. 25257 25258 * src/utils.c: Don't include <windows.h>. 25259 252601998-01-25 Hrvoje Niksic <hniksic@srce.hr> 25261 25262 * src/host.c (ftp_getaddress): Ditto. 25263 25264 * src/main.c (main): Use it. 25265 25266 * src/utils.h (STRDUP_ALLOCA): New macro. 25267 25268 * src/init.c: Prepend `wget: ' to error messages printed on stderr. 25269 25270 * src/utils.c (mkdirhier): Renamed from mymkdir. 25271 (touch): Renamed from my_touch. 25272 (pwd_cuserid): Renamed from my_cuserid(). 25273 252741998-01-25 Hrvoje Niksic <hniksic@srce.hr> 25275 25276 * doc/wget.texi (Advanced Options): Document `--cache'. 25277 (Contributors): Added Brian. 25278 252791998-01-24 Karl Heuer <kwzh@gnu.org> 25280 25281 * src/netrc.c (search_netrc): Initialize `l' only after processing 25282 netrc. 25283 25284 * src/main.c (main): Don't trap SIGHUP if it's being ignored. 25285 252861998-01-24 Hrvoje Niksic <hniksic@srce.hr> 25287 25288 * src/recur.c (parse_robots): Respect opt.useragent; use alloca(). 25289 25290 * src/http.c (gethttp): Construct useragent accordingly. 25291 25292 * src/version.c: Changed version string to numbers-only. 25293 25294 * src/main.c (print_help): List all the options. 25295 25296 * src/mswindows.c (windows_main_junk): Initialize argv0 here. 25297 252981998-01-24 Hrvoje Niksic <hniksic@srce.hr> 25299 25300 * src/all: Use logmsg(). 25301 25302 * src/utils.c (time_str): Moved from retr.c. 25303 (logmsg): New function. 25304 (logmsg_noflush): Ditto. 25305 25306 * src/rbuf.c: New file, moved buf_* functions here. 25307 25308 * src/ftp.c (ftp_expected_bytes): Moved from ftp-basic.c. 25309 25310 * src/ftp-basic.c (ftp_rest): Use prnum(). 25311 25312 * src/ftp-basic.c: Ditto. 25313 25314 * src/ftp.c: Use the new reading functions and macros. 25315 25316 * src/retr.c (buf_initialize): New function. 25317 (buf_initialized_p): Ditto. 25318 (buf_uninitialize): Ditto. 25319 (buf_fd): Ditto. 25320 25321 * src/http.c (fetch_next_header): Use the BUF_READCHAR macro for 25322 efficiency. 25323 (gethttp): Use alloca() where appropriate. 25324 25325 * src/retr.c (buf_readchar): Use it. 25326 (buf_peek): Use rstreams. 25327 25328 * src/retr.h (BUF_READCHAR): New macro. 25329 25330 * src/init.c (home_dir): Rewritten for clarity. 25331 (init_path): Ditto. 25332 25333 * src/mswindows.c (ws_backgnd): Made static. 25334 (read_registry): Ditto. 25335 (ws_cleanup): Ditto. 25336 (ws_handler): Ditto. 25337 253381998-01-24 Andy Eskilsson <andy.eskilsson@telelogic.se> 25339 25340 * src/utils.c (accdir): Process wildcards. 25341 (proclist): New function. 25342 (accdir): Use it to avoid code repetition. 25343 253441998-01-23 Karl Heuer <kwzh@gnu.org> 25345 25346 * doc/wget.texi (Advanced Options): Updated. 25347 253481998-01-23 Hrvoje Niksic <hniksic@srce.hr> 25349 25350 * src/alloca.c: New file. 25351 25352 * src/Makefile.in (ALLOCA): Define. 25353 25354 * src/mswindows.c (ws_help): Constify. 25355 (ws_help): Use alloca. 25356 25357 * src/mswindows.c: Reformat. 25358 25359 * src/all: Added _(...) annotations for I18N snarfing and translation. 25360 25361 * src/host.c (ftp_getaddress): Nuke SYSINFO. 25362 (ftp_getaddress): Don't use getdomainname(). 25363 (ftp_getaddress): Use uname(), where available. 25364 25365 * src/http.c (gethttp): Protect a stray fprintf(). 25366 25367 * src/init.c (settime): New function. 25368 (setval): Treat WAIT specially, allowing suffixes like `m' for 25369 minutes, etc. 25370 253711998-01-23 Hrvoje Niksic <hniksic@srce.hr> 25372 25373 * doc/Makefile.in: Use `test ...' rather than `[ ... ]'. 25374 25375 * doc/wget.texi (Advanced Options): Explained suffices. 25376 253771998-01-21 Jordan Mendelson <jordy@wserv.com> 25378 25379 * src/url.c (rotate_backups): New function. 25380 25381 * src/http.c (gethttp): Ditto. 25382 25383 * src/ftp.c (getftp): Rotate backups. 25384 253851998-01-21 Hrvoje Niksic <hniksic@srce.hr> 25386 25387 * src/url.c (get_urls_html): Use alloca() for TEMP. 25388 253891997-12-18 Hrvoje Niksic <hniksic@srce.hr> 25390 25391 * src/all: Renamed nmalloc(), nrealloc() and nstrdup() to xmalloc(), 25392 xrealloc() and xstrdup(). Use the new functions. 25393 25394 * src/url.c (decode_string): Made static. 25395 (has_proto): Ditto. 25396 (parse_dir): Ditto. 25397 (parse_uname): Ditto. 25398 (mkstruct): Ditto. 25399 (construct): Ditto. 25400 (construct_relative): Ditto. 25401 25402 * src/retr.c (show_progress): Made static. 25403 25404 * src/recur.c (robots_url): Made static. 25405 (retrieve_robots): Ditto. 25406 (parse_robots): Ditto. 25407 (robots_match): Ditto. 25408 25409 * src/main.h: Removed. 25410 25411 * src/main.c (printhelp): Made static. 25412 (hangup): Ditto. 25413 25414 * src/init.c (comind): Made static. 25415 (defaults): Ditto. 25416 (init_path): Ditto. 25417 (run_wgetrc): Ditto. 25418 (onoff): Ditto. 25419 (setonoff): Ditto. 25420 (setnum): Ditto. 25421 (myatoi): Ditto. 25422 (getperms): Ditto. 25423 (setbytes): Ditto. 25424 25425 * src/http.c (fetch_next_header): Made static. 25426 (hparsestatline): Ditto. 25427 (hskip_lws): Ditto. 25428 (hgetlen): Ditto. 25429 (hgetrange): Ditto. 25430 (hgettype): Ditto. 25431 (hgetlocation): Ditto. 25432 (hgetmodified): Ditto. 25433 (haccepts_none): Ditto. 25434 (gethttp): Ditto. 25435 (base64_encode_line): Ditto. 25436 (mktime_from_utc): Ditto. 25437 (http_atotm): Ditto. 25438 25439 * src/html.c (idmatch): Made static. 25440 25441 * src/host.c (search_host): Made static. 25442 (search_address): Ditto. 25443 (free_hlist): Ditto. 25444 25445 * src/ftp.c (getftp): Made static. 25446 (ftp_loop_internal): Ditto. 25447 (ftp_get_listing): Ditto. 25448 (ftp_retrieve_list): Ditto. 25449 (ftp_retrieve_dirs): Ditto. 25450 (ftp_retrieve_glob): Ditto. 25451 (freefileinfo): Ditto. 25452 (delelement): Ditto. 25453 25454 * src/ftp-ls.c (symperms): Made static. 25455 (ftp_parse_unix_ls): Ditto. 25456 25457 * src/connect.c (select_fd): Made static. 25458 25459 * src/utils.c (xmalloc): Renamed from nmalloc. 25460 (xrealloc): Renamed from nrealloc. 25461 (xstrdup): Renamed from nstrdup. 25462 25463 * src/getopt.c (exchange): Use alloca. 25464 25465 * src/mswindows.c (mycuserid): Use strncpy. 25466 25467 * src/New files mswindows.c, mswindows.h, sysdep.h. winjunk.c, 25468 systhings.h, windecl.h and winjunk.h removed. 25469 25470 * src/mswindows.c (sleep): New function. 25471 25472 * src/utils.c: Include <windows.h> under Windows. 25473 254741997-12-18 Hrvoje Niksic <hniksic@srce.hr> 25475 25476 * doc/wget.texi (Mailing List): Update. 25477 254781997-07-26 Francois Pinard <pinard@iro.umontreal.ca> 25479 25480 * doc/Makefile.in (install.wgetrc): Print the sample.wgetrc warning 25481 only if the files actually differ. 25482 254831997-06-12 Hrvoje Niksic <hniksic@srce.hr> 25484 25485 * src/cmpt.c (strptime_internal): Handle years more correctly for 25486 `%y'. 25487 254881997-06-12 Darko Budor <dbudor@zesoi.fer.hr> 25489 25490 * src/url.h (URL_UNSAFE): Change default under Windows. 25491 25492 * src/retr.c (retrieve_from_file): Respect opt.delete_after. 25493 25494 * src/main.c (main): Call ws_help on Windows. 25495 25496 * src/winjunk.c (windows_main_junk): New function. 25497 25498 * src/main.c (main): Junk-process argv[0]. 25499 25500 * src/http.c (mktime_from_utc): Return -1 if mktime failed. 25501 25502 * src/http.c (http_loop): Ditto. 25503 25504 * src/ftp.c (ftp_loop_internal): Change title on Windows when using a 25505 new URL. 25506 25507 * src/winjunk.c (getdomainname): Lots of functions. 25508 255091997-06-09 Mike Thomas <mthomas@reality.ctron.com> 25510 25511 * src/http.c (gethttp): Allocate enough space for 25512 `Proxy-Authorization' header. 25513 255141997-05-10 Hrvoje Niksic <hniksic@srce.hr> 25515 25516 * src/version.c: Wget/1.4.5 is released. 25517 255181997-05-10 Hrvoje Niksic <hniksic@srce.hr> 25519 25520 * src/retr.c (get_contents): Check return value of fwrite more 25521 carefully. 25522 255231997-04-23 Hrvoje Niksic <hniksic@srce.hr> 25524 25525 * doc/wget.texi (Advanced Options): Document `--follow-ftp'. 25526 255271997-03-30 Hrvoje Niksic <hniksic@srce.hr> 25528 25529 * src/utils.c (isfile): Use `lstat' instead of `stat'. 25530 255311997-03-30 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> 25532 25533 * src/cmpt.c (strptime_internal) [case 'Y']: Always subtract 1900 from 25534 year, regardless of century. 25535 255361997-03-29 Hrvoje Niksic <hniksic@srce.hr> 25537 25538 * src/utils.c (numdigit): Use explicit test. 25539 255401997-03-21 Hrvoje Niksic <hniksic@srce.hr> 25541 25542 * src/http.c (http_loop): Always use `url_filename' to get u->local. 25543 255441997-03-20 Hrvoje Niksic <hniksic@srce.hr> 25545 25546 * src/url.c: Recognize https. 25547 255481997-03-13 Hrvoje Niksic <hniksic@srce.hr> 25549 25550 * src/recur.c (recursive_retrieve): Lowercase just the host name. 25551 255521997-03-09 Hrvoje Niksic <hniksic@srce.hr> 25553 25554 * src/url.c (get_urls_file): Use the correct test. 25555 (get_urls_html): Ditto. 25556 255571997-03-07 Hrvoje Niksic <hniksic@srce.hr> 25558 25559 * src/connect.c: Reverted addrlen to int. 25560 25561 * src/init.c (parse_line): Check for -1 instead of NONE. 25562 25563 * src/version.c: Changed version to 1.4.5. 25564 255651997-02-27 Fila Kolodny <fila@ibi.com> 25566 25567 * src/ftp.c (ftp_retrieve_list): If retrieving symlink and the proper 25568 one already exists, just skip it. 25569 255701997-02-17 Hrvoje Niksic <hniksic@srce.hr> 25571 25572 * src/init.c: New option netrc. 25573 (initialize): Don't parse .netrc. 25574 25575 * src/cmpt.c (recursive): Return rp. 25576 (strptime_internal): Match the long strings first, the abbreviated 25577 second. 25578 255791997-02-17 Hrvoje Niksic <hniksic@srce.hr> 25580 25581 * doc/wget.texi (Advanced Options): Document --proxy-user and 25582 --proxy-passwd. 25583 255841997-02-16 Hrvoje Niksic <hniksic@srce.hr> 25585 25586 * src/http.c (check_end): New function. 25587 (http_atotm): Use it. 25588 255891997-02-14 Karl Eichwalder <ke@ke.Central.DE> 25590 25591 * doc/Makefile.in (install.wgetrc): Never ever nuke an existing rc file. 25592 255931997-02-14 Hrvoje Niksic <hniksic@srce.hr> 25594 25595 * src/ftp.c (ftp_retrieve_list): Create links even if not relative. 25596 255971997-02-13 gilles Cedoc <gilles@cedocar.fr> 25598 25599 * src/http.c (gethttp): Use them. 25600 25601 * src/init.c: New options proxy_user and proxy_passwd. 25602 256031997-02-10 Marin Purgar <pmc@asgard.hr> 25604 25605 * src/connect.c: Make addrlen size_t instead of int. 25606 (conaddr): Ditto. 25607 256081997-02-10 Hrvoje Niksic <hniksic@srce.hr> 25609 25610 * src/recur.c (recursive_retrieve): Lowercase the host name, if the 25611 URL is not "optimized". 25612 25613 * src/host.c (realhost): Return l->hostname, even if it matches with 25614 host. 25615 256161997-02-09 Hrvoje Niksic <hniksic@srce.hr> 25617 25618 * src/version.c: Released 1.4.3. 25619 25620 * src/url.c: Futher update to list of protostrings. 25621 (skip_proto): Skip `//' correctly for FTP and HTTP. 25622 25623 * src/url.c (get_urls_html): Handle bogus `http:' things a little 25624 different. 25625 25626 * src/main.c (main): Removed `follow-ftp' from `f'. 25627 (main): Dumped the `prefix-files' and `file-prefix' options and 25628 features; old and bogus. 25629 (main): Exit on failed setval() in `-e'. 25630 25631 * src/http.c (fetch_next_header): Use it to detect header continuation 25632 correctly. 25633 25634 * src/retr.c (buf_peek): New function. 25635 256361997-02-09 Gregor Hoffleit <flight@mathi.uni-heidelberg.DE> 25637 25638 * src/systhings.h: Define S_ISLNK on NeXT too. 25639 256401997-02-08 Roger Beeman <beeman@cisco.com> 25641 25642 * src/ftp.c: Include <time.h> 25643 256441997-02-08 Hrvoje Niksic <hniksic@srce.hr> 25645 25646 * src/wget.h: Include time.h and stuff. 25647 256481997-02-07 Hrvoje Niksic <hniksic@srce.hr> 25649 25650 * src/url.c (findurl): Would read over buffer limits. 25651 256521997-02-06 Hrvoje Niksic <hniksic@srce.hr> 25653 25654 * src/ftp-ls.c (ftp_parse_unix_ls): Allow spaces in file names. 25655 256561997-02-05 Hrvoje Niksic <hniksic@srce.hr> 25657 25658 * src/http.c (http_atotm): Initialize tm.is_dst. 25659 256601997-02-02 Hrvoje Niksic <hniksic@srce.hr> 25661 25662 * src/http.c (gethttp): Don't print the number of retrieved headers. 25663 25664 * src/main.c (main): New option `--no-clobber', alias for `-nc'. 25665 25666 * src/url.c: Recognize `https://'. 25667 256681997-02-02 Hrvoje Niksic <hniksic@srce.hr> 25669 25670 * doc/wget.texi: Updated and revised. 25671 25672 * doc/wget.texi (Contributors): Update. 25673 (Advanced Options): Removed bogus **/* example. 25674 25675 * doc/wget.texi: Use ``...'' instead of "...". 25676 256771997-02-01 Hrvoje Niksic <hniksic@srce.hr> 25678 25679 * src/host.c (herrmsg): Don't use h_errno. 25680 256811997-02-01 Hrvoje Niksic <hniksic@srce.hr> 25682 25683 * doc/wget.texi (Domain Acceptance): Document --exclude-domains. 25684 256851997-01-30 Hrvoje Niksic <hniksic@srce.hr> 25686 25687 * src/host.c (accept_domain): Use it. 25688 25689 * src/main.c (main): New option `--exclude-domains'. 25690 25691 * src/retr.c (retrieve_url): Use it. 25692 (retrieve_url): Bail out when an URL is redirecting to itself. 25693 25694 * src/url.c (url_equal): New function. 25695 256961997-01-29 Hrvoje Niksic <hniksic@srce.hr> 25697 25698 * src/connect.c: Include arpa/inet.h instead of arpa/nameser.h. 25699 25700 * src/http.c (mk_utc_time): New function. 25701 (http_atotm): Use it; handle time zones correctly. 25702 257031997-01-28 Hrvoje Niksic <hniksic@srce.hr> 25704 25705 * src/http.c: Ditto. 25706 25707 * src/ftp-basic.c: Use it instead of WRITE. 25708 25709 * src/connect.c (iwrite): New function. 25710 257111997-01-27 Hrvoje Niksic <hniksic@srce.hr> 25712 25713 * src/cmpt.c (mktime): New function. 25714 25715 * src/netrc.c: Include <sys/types.h>. 25716 25717 * src/main.c (main): Wouldn't recognize --spider. 25718 25719 * src/retr.c (rate): Use `B', `KB' and `MB'. 25720 (reset_timer,elapsed_time): Moved from utils.c. 25721 25722 * src/ftp.c (ftp_retrieve_list): Ditto. 25723 25724 * src/http.c (http_loop): Don't touch the file if opt.dfp. 25725 257261997-01-24 Hrvoje Niksic <hniksic@srce.hr> 25727 25728 * src/cmpt.c: New file. 25729 25730 * src/ftp.c (ftp_retrieve_glob): New argument semantics. 25731 (ftp_retrieve_dirs): Use it. 25732 (ftp_loop): Ditto. 25733 25734 * src/html.c (htmlfindurl): Recognize `'' as the quote char. 25735 257361997-01-23 Hrvoje Niksic <hniksic@srce.hr> 25737 25738 * src/ftp.c (ftp_loop_internal): Use it. 25739 25740 * src/utils.c (remove_link): New function. 25741 257421997-01-22 Hrvoje Niksic <hniksic@srce.hr> 25743 25744 * src/retr.c (retrieve_url): Require STRICT redirection URL. 25745 25746 * src/url.c (parseurl): New argument STRICT. 25747 25748 * src/http.c (hparsestatline): Be a little-bit less strict about 25749 status line format. 25750 257511997-01-21 Hrvoje Niksic <hniksic@srce.hr> 25752 25753 * src/http.c (gethttp): Use it. 25754 25755 * src/main.c (main): Don't use '<digit>' as options. 25756 25757 * src/init.c: New option ignore_length. 25758 25759 * src/http.c (gethttp): Ditto. 25760 (http_loop): Check for redirection without Location:. 25761 (gethttp): Don't print Length unless RETROKF. 25762 25763 * src/ftp.c (getftp): Use it. 25764 25765 * src/url.c (mkalldirs): New function. 25766 25767 * src/utils.c (mymkdir): Don't check for existing non-directory. 25768 25769 * src/url.c (mkstruct): Don't create the directory. 25770 257711997-01-21 Hrvoje Niksic <hniksic@srce.hr> 25772 25773 * doc/wget.texi (Advanced Options): Document --ignore-length. 25774 257751997-01-20 Hrvoje Niksic <hniksic@srce.hr> 25776 25777 * src/init.c (setval): Removed NO_RECURSION checks. 25778 257791997-01-20 Hrvoje Niksic <hniksic@srce.hr> 25780 25781 * doc/wget.texi (Time-Stamping): New node. 25782 257831997-01-19 Hrvoje Niksic <hniksic@srce.hr> 25784 25785 * src/version.c: "Released" 1.4.3-pre2. 25786 25787 * src/recur.c (recursive_retrieve): Bypass host checking only if URL 25788 is ftp AND parent URL is not ftp. 25789 25790 * src/ftp-basic.c (ftp_request): Print out Turtle Power. 25791 25792 * src/ftp.c (ftp_loop): Call ftp_retrieve_glob with 0 if there's no 25793 wildcard. 25794 (ftp_retrieve_glob): Call ftp_loop_internal even on empty list, if 25795 not glob. 25796 25797 * src/http.c (gethttp): Be a little bit smarter about status codes. 25798 25799 * src/recur.c (recursive_retrieve): Always reset opt.recursive when 25800 dealing with FTP. 25801 258021997-01-18 Hrvoje Niksic <hniksic@srce.hr> 25803 25804 * src/retr.c (retrieve_url): New variable location_changed; use it for 25805 tests instead of mynewloc. 25806 (retrieve_url): Allow heuristic adding of html. 25807 25808 * src/url.c (url_filename): Don't use the `%' in Windows file names. 25809 25810 * src/http.c (http_loop): Always time-stamp the local file. 25811 25812 * src/http.c (http_loop): Ditto. 25813 25814 * src/ftp.c (ftp_retrieve_list): Use it. 25815 25816 * src/utils.c (my_touch): New function. 25817 25818 * src/ftp.c (ftp_retrieve_list): Use #ifdef HAVE_STRUCT_UTIMBUF 25819 instead of #ifndef NeXT. 25820 25821 * src/utils.c (strptime): New version, by Ulrich Drepper. 25822 258231997-01-17 Hrvoje Niksic <hniksic@srce.hr> 25824 25825 * src/http.c (haccepts_none): Renamed from `haccepts_bytes'. 25826 (gethttp): If haccepts_none(), disable ACCEPTRANGES. 25827 (http_loop): Would remove ACCEPTRANGES. 25828 25829 * src/ftp.c (getftp): Call ftp_list with NULL. 25830 258311997-01-15 Hrvoje Niksic <hniksic@srce.hr> 25832 25833 * src/html.c (ftp_index): Don't print minutes and seconds if we don't 25834 know them; beautify the output. 25835 25836 * src/ftp.c (getftp): Don't close the socket on FTPNSFOD. 25837 258381997-01-14 Hrvoje Niksic <hniksic@srce.hr> 25839 25840 * src/utils.c (strptime): New function. 25841 (strptime): Don't use get_alt_number. 25842 (strptime): Don't use locale. 25843 (match_string): Made it a function. 25844 258451997-01-12 Hrvoje Niksic <hniksic@srce.hr> 25846 25847 * src/http.c (http_atotm): New function. 25848 (http_loop): Use it. 25849 25850 * src/atotm.c: Removed from the distribution. 25851 25852 * src/http.c (base64_encode_line): Rewrite. 25853 258541997-01-12 Hrvoje Niksic <hniksic@srce.hr> 25855 25856 * doc/Makefile.in (distclean): Don't remove wget.info*. 25857 258581997-01-09 Hrvoje Niksic <hniksic@srce.hr> 25859 25860 * src/ftp.c (getftp): Use ftp_expected_bytes; print size. 25861 25862 * src/ftp-basic.c (ftp_response): Use ftp_last_respline. 25863 (ftp_expected_bytes): New function. 25864 25865 * src/ftp.c (getftp): Print the unauthoritative file length. 25866 25867 * src/ftp-ls.c: Renamed from ftp-unix.c. 25868 (ftp_parse_ls): Moved from ftp.c. 25869 (ftp_parse_unix_ls): Recognize seconds in time spec. 25870 (ftp_parse_unix_ls): Recognize year-less dates of the previous 25871 year. 25872 258731997-01-08 Hrvoje Niksic <hniksic@srce.hr> 25874 25875 * src/ftp-basic.c: Don't declare errno if #defined. 25876 25877 * src/host.c (ftp_getaddress): Check for sysinfo legally. 25878 258791997-01-08 Hrvoje Niksic <hniksic@srce.hr> 25880 25881 * doc/wget.texi (Mailing List): Update archive. 25882 (Portability): Update the Windows port by Budor. 25883 258841997-01-08 Darko Budor <dbudor@diana.zems.fer.hr> 25885 25886 * src/connect.c (iread): Use READ. 25887 258881996-12-26 Darko Budor <dbudor@zems.fer.hr> 25889 25890 * src/wget.h: READ and WRITE macros for use instead of read and write 25891 on sockets, grep READ *.c, grep WRITE *.c 25892 25893 * src/wsstartup.c: new file - startup for winsock 25894 25895 * src/wsstartup.h: new file 25896 25897 * src/win32decl.h: new file - fixup for <errno.h> and winsock trouble 25898 25899 * src/configure.bat: Configure utility for MSVC 25900 25901 * src/src/Makefile.ms,config.h.ms: new files for use with MSVC 4.x 25902 259031996-12-23 Hrvoje Niksic <hniksic@srce.hr> 25904 25905 * src/url.c: Recognize finger, rlogin, tn3270, mid and cid as valid 25906 schemes. 25907 259081996-12-22 Hrvoje Niksic <hniksic@srce.hr> 25909 25910 * src/version.c: Released 1.4.3-pre. 25911 25912 * src/utils.c (prnum): Accept long. 25913 (legible): Use prnum(). 25914 25915 * src/connect.c (make_connection): Accept port as short. 25916 (bindport): Ditto. 25917 25918 * src/http.c (gethttp): Use search_netrc. 25919 259201996-12-22 Hrvoje Niksic <hniksic@srce.hr> 25921 25922 * src/host.c (ftp_getaddress): Allow `.' in hostname. 25923 259241996-12-21 Hrvoje Niksic <hniksic@srce.hr> 25925 25926 * src/ftp.c (getftp): Use search_netrc. 25927 25928 * src/netrc.c (free_netrc): New function. 25929 25930 * src/init.c (home_dir): New function. 25931 25932 * src/url.c (convert_links): Allow REL2ABS changes. 25933 259341996-12-21 Hrvoje Niksic <hniksic@srce.hr> 25935 25936 * doc/wget.texi (Security Considerations): New node. 25937 259381996-12-21 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 25939 25940 * src/netrc.c: New file. 25941 (parse_netrc, maybe_add_to_list): New functions. 25942 259431996-12-19 Hrvoje Niksic <hniksic@srce.hr> 25944 25945 * doc/wget.texi (Advanced Options): Document --passive. 25946 259471996-12-17 Hrvoje Niksic <hniksic@srce.hr> 25948 25949 * src/retr.c (retrieve_url): Reset opt.recursion before calling 25950 ftp_loop if it is reached through newloc. 25951 25952 * src/init.c (run_wgetrc): Print the wgetrc path too, when reporting 25953 error; don't use "Syntax error", since we don't know if it is 25954 really a syntax error. 25955 259561996-12-16 Hrvoje Niksic <hniksic@srce.hr> 25957 25958 * src/utils.c (acceptable): Extract the filename part of the path. 25959 25960 * src/recur.c (recursive_retrieve): Call acceptable() with the right 25961 argument; would bug out on wildcards. 25962 25963 * src/init.c (parse_line): Likewise. 25964 25965 * src/html.c (htmlfindurl): Cast to char * when calling stuff. 25966 259671996-12-15 Hrvoje Niksic <hniksic@srce.hr> 25968 25969 * src/url.c (parseurl): Debug output. 25970 25971 * src/utils.c (path_simplify): New one, adapted from bash's 25972 canonicalize_pathname(). 25973 259741996-12-15 Hrvoje Niksic <hniksic@srce.hr> 25975 25976 * src/ftp.c (getftp): Use ftp_pasv. 25977 25978 * src/ftp-basic.c (ftp_request): Accept NULL value. 25979 (ftp_pasv): New function. 25980 25981 * src/options.h (struct options): Add passive FTP option. 25982 259831996-12-14 Hrvoje Niksic <hniksic@srce.hr> 25984 25985 * src/ftp.c (getftp): Don't discard the buffer. 25986 25987 * src/retr.c (get_contents): New parameter nobuf. 25988 259891996-12-13 Shawn McHorse <riffraff@txdirect.net> 25990 25991 * src/url.c (get_urls_html): Skip "http:". 25992 259931996-12-13 Shawn McHorse <riffraff@txdirect.net> 25994 25995 * src/html.c (htmlfindurl): Recognize <meta contents="d; URL=...". 25996 25997 * src/init.c (setval): Strip the trailing slashes on CVECDIR. 25998 259991996-12-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 26000 26001 * src/(configure.in, config.h.in, src/Makefile.in, src/*.[ch]): Add 26002 ansi2knr support for compilers which don't support ANSI style 26003 function prototypes and signatures. 26004 26005 * src/(aclocal.m4, src/ansi2knr.c, src/ansi2knr.1): New files. 26006 260071996-12-13 Hrvoje Niksic <hniksic@srce.hr> 26008 26009 * src/utils.c (strcasecmp): From glibc. 26010 (strncasecmp): Also. 26011 (strstr): Also. 26012 26013 * src/url.c: Added javascript: to the list of URLs prefixes. 26014 260151996-12-13 Hrvoje Niksic <hniksic@srce.hr> 26016 26017 * src/init.c: Make excludes and includes under CVECDIR instead of 26018 CVEC. 26019 260201996-12-12 Shawn McHorse <riffraff@txdirect.net> 26021 26022 * src/recur.c (retrieve_robots): Print the warning message only if 26023 verbose. 26024 260251996-12-12 Hrvoje Niksic <hniksic@srce.hr> 26026 26027 * src/systhings.h: New file. 26028 26029 * src/../configure.in: Check for utime.h 26030 26031 * src/ftp.c: Check whether we have unistd.h. 26032 260331996-12-12 Gregor Hoffleit <flight@mathi.uni-heidelberg.DE> 26034 26035 * src/ftp.c (ftp_retrieve_list): Use NeXT old utime interface. 26036 260371996-12-12 Dieter Baron <dillo@danbala.tuwien.ac.at> 26038 26039 * doc/wget.texi (Advanced Usage): Would reference prep instead of 26040 wuarchive. 26041 260421996-11-27 Hrvoje Niksic <hniksic@srce.hr> 26043 26044 * src/recur.c (recursive_retrieve): Send the canonical URL as referer. 26045 (recursive_retrieve): Call get_urls_html with the canonical URL. 26046 260471996-11-26 Hrvoje Niksic <hniksic@srce.hr> 26048 26049 * src/url.c: Use it; Recognize paths ending with "." and ".." as 26050 directories. 26051 (url_filename): Append .n whenever file exists and could be a 26052 directory. 26053 26054 * src/url.h (ISDDOT): New macro. 26055 26056 * src/init.c (parse_line): Use unsigned char. 26057 26058 * src/url.c (get_urls_html): Cast to unsigned char * when calling 26059 htmlfindurl. 26060 26061 * src/html.c (htmlfindurl): Use unsigned char. 26062 26063 * src/version.c: Changed version to 1.4.3. 26064 260651996-11-25 Hrvoje Niksic <hniksic@srce.hr> 26066 26067 * src/version.c: Released 1.4.2. 26068 26069 * src/ftp.c (getftp): Simplified assertion. 26070 (ftp_loop_internal): Remove symlink before downloading. 26071 (ftp_retrieve_list): Unlink the symlink name before attempting to 26072 create a symlink! 26073 26074 * src/options.h (struct options): Renamed print_server_response to 26075 server_response. 26076 26077 * src/ftp.c (rel_constr): Removed. 26078 (ftp_retrieve_list): Don't use it. 26079 (ftp_retrieve_list): Use opt.retr_symlinks. 26080 260811996-11-25 Hrvoje Niksic <hniksic@srce.hr> 26082 26083 * doc/wget.texi (Advanced Options): Documented --retr-symlinks. 26084 260851996-11-24 Hrvoje Niksic <hniksic@srce.hr> 26086 26087 * src/main.c (main): New option retr_symlinks. 26088 26089 * src/url.c (convert_links): Print verbose message. 26090 260911996-11-24 Hrvoje Niksic <hniksic@srce.hr> 26092 26093 * src/http.c (http_loop): Reset newloc in the beginning of function; 26094 would cause FMR in retrieve_url. 26095 260961996-11-23 Hrvoje Niksic <hniksic@srce.hr> 26097 26098 * src/recur.c (convert_all_links): Find the URL of each HTML document, 26099 and feed it to get_urls_html; would bug out. 26100 (convert_all_links): Check for l2 instead of dl; removed dl. 26101 26102 * src/url.c (convert_links): Don't refer to freed newname. 26103 26104 * src/recur.c (recursive_retrieve): Add this_url to urls_downloaded. 26105 26106 * src/main.c (main): Print the OS_TYPE in the debug output, too. 26107 26108 * src/recur.c (recursive_retrieve): Check for opt.delete_after. 26109 26110 * src/main.c (main): New option delete-after. 26111 26112 * src/init.c (setval): Cleaned up. 26113 261141996-11-23 Hrvoje Niksic <hniksic@srce.hr> 26115 26116 * doc/wget.texi (Advanced Options): Document --delete-after. 26117 261181996-11-22 Hrvoje Niksic <hniksic@srce.hr> 26119 26120 * doc/wget.texi (Portability): Add IRIX and FreeBSD as the "regular" 26121 platforms. 26122 261231996-11-21 Shawn McHorse <riffraff@txdirect.net> 26124 26125 * src/html.c (htmlfindurl): Reset s->in_quote after getting out of 26126 quotes. 26127 261281996-11-21 Hrvoje Niksic <hniksic@srce.hr> 26129 26130 * src/Makefile.in (wget): Make `wget' the default target. 26131 26132 * src/ftp.c (ftp_loop_internal): Move noclobber checking out of the 26133 loop. 26134 (ftp_retrieve_list): Warn about non-matching sizes. 26135 26136 * src/http.c (http_loop): Made -nc non-dependent on opt.recursive. 26137 26138 * src/init.c (setnum): Renamed from setnuminf; New argument flags. 26139 (setval): Use it. 26140 26141 * src/main.c (main): Sorted the options. 26142 (main): New option --wait. 26143 261441996-11-20 Hrvoje Niksic <hniksic@srce.hr> 26145 26146 * src/version.c: Released 1.4.1. 26147 26148 * src/html.c (html_quote_string): New function. 26149 (ftp_index): Use it. 26150 (htmlfindurl): A more gentle ending debug message. 26151 26152 * src/ftp.c (ftp_loop): Check for opt.htmlify. 26153 26154 * src/init.c: New command htmlify. 26155 26156 * src/ftp.c (getftp): Nicer error messages, with `'-encapsulated 26157 strings. 26158 (ftp_loop): Print size of index.html. 26159 26160 * src/init.c (setval): Implement "styles". 26161 26162 * src/main.c (main): New option dotstyle. 26163 261641996-11-20 Hrvoje Niksic <hniksic@srce.hr> 26165 26166 * src/version.c: Changed version to 1.4.2. 26167 261681996-11-20 Hrvoje Niksic <hniksic@srce.hr> 26169 26170 * doc/wget.texi (Advanced Usage): Document dot-style. 26171 261721996-11-19 Hrvoje Niksic <hniksic@srce.hr> 26173 26174 * src/ftp.c (getftp): Close the master socket in case of errors, after 26175 bindport(). 26176 26177 * src/connect.c (bindport): Initialize msock to -1. 26178 26179 * src/ftp.c (getftp): Initialize dtsock to -1. 26180 26181 * src/connect.c (closeport): Don't close sock if sock == -1. 26182 261831996-11-18 Hrvoje Niksic <hniksic@srce.hr> 26184 26185 * src/init.c (setnuminf): Nuked default value -- just leave unchanged. 26186 (setval): Don't send default values. 26187 (defaults): Use DEFAULT_TIMEOUT -- aaargh. 26188 26189 * src/options.h (struct options): Use long for dot_bytes. 26190 26191 * src/init.c (setquota): Renamed to setbytes. 26192 (setval): Use setbytes on DOTBYTES. 26193 261941996-11-18 Hrvoje Niksic <hniksic@srce.hr> 26195 26196 * doc/wget.texi (Advanced Usage): Dot customization example. 26197 (Sample Wgetrc): Likewise. 26198 261991996-11-17 Hrvoje Niksic <hniksic@srce.hr> 26200 26201 * src/ftp.c (getftp): Initialize con->dltime. 26202 26203 * src/recur.c (recursive_retrieve): Use same_host instead of 26204 try_robots; simply load robots_txt whenever the host is changed. 26205 (recursive_retrieve): Free forbidden before calling parse_robots. 26206 262071996-11-16 Mark Boyns <boyns@sdsu.edu> 26208 26209 * src/recur.c (recursive_retrieve): Retrieve directories regardless of 26210 acc/rej rules; check for empty u->file. 26211 262121996-11-16 Hrvoje Niksic <hniksic@srce.hr> 26213 26214 * src/retr.c (show_progress): Use them. 26215 26216 * src/options.h (struct options): New options dot_bytes, dots_on_line 26217 and dot_spacing. 26218 262191996-11-16 Hrvoje Niksic <hniksic@srce.hr> 26220 26221 * doc/wget.texi (Wgetrc Syntax): Explained emptying lists. 26222 262231996-11-14 Shawn McHorse <riffraff@txdirect.net> 26224 26225 * src/recur.c (recursive_retrieve): Use base_url instead of this_url 26226 for no_parent. 26227 262281996-11-14 Shawn McHorse <riffraff@txdirect.net> 26229 26230 * src/html.c (htmlfindurl): Reset s->in_quote after exiting the quote. 26231 262321996-11-14 Hrvoje Niksic <hniksic@srce.hr> 26233 26234 * src/init.c (setval): Use it. 26235 26236 * src/utils.c (merge_vecs): New function. 26237 26238 * src/init.c (setval): Reset the list-type functions when encountering 26239 "". 26240 262411996-11-13 Hrvoje Niksic <hniksic@srce.hr> 26242 26243 * src/utils.c (sepstring): Rewrote; don't use strtok. 26244 26245 * src/recur.c (recursive_retrieve): Enter assorted this_url to slist 26246 when running the first time. 26247 (retrieve_robots): Warn to ignore errors when robots are loaded. 26248 26249 * src/utils.c (load_file): Moved from url.c. 26250 26251 * src/http.c: Made static variables const too in h* functions. 26252 26253 * src/main.c (main): Renamed --continue-ftp to --continue. 26254 26255 * src/recur.c (recursive_retrieve): Use it. 26256 26257 * src/utils.c (frontcmp): New function. 26258 26259 * src/url.c (accdir): New function. 26260 26261 * src/html.c (htmlfindurl): Recognize <area href=...>. 26262 26263 * src/ftp.c (ftp_retrieve_dirs): Implemented opt.includes. 26264 26265 * src/init.c (setval): Free the existing opt.excludes and 26266 opt.includes, if available. 26267 26268 * src/main.c (main): New option -I. 26269 262701996-11-13 Hrvoje Niksic <hniksic@srce.hr> 26271 26272 * doc/wget.texi (Advanced Options): Document includes/excludes. 26273 (Wgetrc Commands): Likewise. 26274 262751996-11-12 Hrvoje Niksic <hniksic@srce.hr> 26276 26277 * src/ftp.c (ftp_retrieve_glob): Do not weed out directories. 26278 26279 * src/version.c: Changed version to 1.4.1. 26280 262811996-11-11 Hrvoje Niksic <hniksic@srce.hr> 26282 26283 * src/version.c: Released 1.4.0. 26284 262851996-11-10 Hrvoje Niksic <hniksic@srce.hr> 26286 26287 * src/main.c (main): Free com and val after parse_line. 26288 (printhelp): Reorder the listing. 26289 26290 * src/http.c: More robust header parsing. 26291 26292 * src/http.c: Allow any number of spaces, or no spaces, precede ':'. 26293 (hskip_lws): New function. 26294 (haccepts_bytes): New function. 26295 (gethttp): Use it. 26296 26297 * src/init.c (setval): Check header sanity. 26298 (setval): Allow resetting of headers. 26299 263001996-11-10 Hrvoje Niksic <hniksic@srce.hr> 26301 26302 * src/http.c (http_loop): Don't use has_wildcards. 26303 26304 * src/http.c (gethttp): Free all_headers -- would leak. 26305 26306 * src/recur.c (recursive_retrieve): Initialize depth to 1 instead of 26307 0 -- this fixes a long-standing bug in -rl. 26308 263091996-11-10 Hrvoje Niksic <hniksic@srce.hr> 26310 26311 * doc/wget.texi (Advanced Options): Document headers. 26312 263131996-11-09 Hrvoje Niksic <hniksic@srce.hr> 26314 26315 * src/ftp.c: Use -1 as "impossible" value for con->fd. 26316 26317 * src/url.h (URL_SEPARATOR): Don't treat `*' and `+' as separators. 26318 26319 * src/init.c (parse_line): Use isalpha. 26320 26321 * src/ftp-unix.c: Use HAVE_UNISTD_H. 26322 26323 * src/mtch.c (has_wildcards): Don't match \. 26324 26325 * src/http.c (http_loop): Warn on HTTP wildcard usage. 26326 263271996-11-08 Hrvoje Niksic <hniksic@srce.hr> 26328 26329 * src/url.c (url_filename): Do not create numbered suffixes if 26330 opt.noclobber -- would bug out on -nc. 26331 263321996-11-07 Hrvoje Niksic <hniksic@srce.hr> 26333 26334 * src/recur.c (parse_robots): Don't chuck out the commands without 26335 arguments (`Disallow:<empty>' didn't work). 26336 (parse_robots): Compare versions lowercase. 26337 (parse_robots): Match on base_version, not version_string! 26338 (parse_robots): Handle comments properly. 26339 (parse_robots): Match versions in a sane way. 26340 26341 * src/init.c: Print nicer error messages. 26342 26343 * src/version.c: Changed version to 1.4.0. 26344 263451996-11-07 Hrvoje Niksic <hniksic@srce.hr> 26346 26347 * doc/sample.wgetrc: Added header examples. 26348 263491996-11-06 Hrvoje Niksic <hniksic@srce.hr> 26350 26351 * src/version.c: Released 1.4.0-test2. 26352 26353 * src/init.c (run_wgetrc): Close fp. 26354 26355 * src/ftp.c (ftp_retrieve_dirs): Allocate the correct length for 26356 u->dir. 26357 263581996-11-06 Hrvoje Niksic <hniksic@srce.hr> 26359 26360 * src/init.c (setquota): Allow inf as quota specification. 26361 263621996-11-06 Hrvoje Niksic <hniksic@srce.hr> 26363 26364 * doc/wget.texi: Docfixes. 26365 263661996-11-06 Hrvoje Niksic <hniksic@srce.hr> 26367 26368 * doc/sample.wgetrc: Rewritten. 26369 26370 * doc/Makefile.in (install.wgetrc): Install sample.wgetrc. 26371 (uninstall.info): Use $(RM). 26372 263731996-11-05 Hrvoje Niksic <hniksic@srce.hr> 26374 26375 * src/ftp.c (ftp_retrieve_dirs): Return QUOTEXC if quota exceeded. 26376 (ftp_retrieve_glob): Return QUOTEXC on quota exceeded. 26377 26378 * src/main.c (main): Check for quota by comparison with downloaded 26379 stuff, not from status. 26380 26381 * src/connect.c (select_fd): Should compile on HPUX without warnings now. 26382 26383 * src/ftp.c (ftp_get_listing): Check whether ftp_loop_internal 26384 returned RETROK. 26385 263861996-11-04 Hrvoje Niksic <hniksic@srce.hr> 26387 26388 * src/ftp.c (ftp_retrieve_glob): Print the pattern nicely. 26389 (getftp): Return FTPRETRINT on control connection error. 26390 26391 * src/html.c (htmlfindurl): Recognize <embed src=...> and 26392 <bgsound src=...>. 26393 (ftp_index): Handle username and password correctly. 26394 26395 * src/main.c (main): Made `-np' a synonim for --no-parent. 26396 263971996-11-03 Hrvoje Niksic <hniksic@srce.hr> 26398 26399 * doc/wget.texi: Proofread; *many* docfixes. 26400 264011996-11-02 Hrvoje Niksic <hniksic@srce.hr> 26402 26403 * src/version.c: Released 1.4.0-test1. 26404 26405 * src/url.c (str_url): Don't use sprintf when creating %2F-prefixed 26406 directory. 26407 (convert_links): Removed definition of make_backup. 26408 26409 * src/http.h: Removed definition of MAX_ERROR_LENGTH. 26410 26411 * src/host.c (ftp_getaddress): Check for "(none)" domains. 26412 26413 * src/ftp.c (ftp_retrieve_dirs): Docfix. 26414 26415 * src/http.c (gethttp): Use ou->referer instead of u->referer. 26416 26417 * src/retr.c (retrieve_url): Reset u to avoid freeing pointers twice; 26418 this was known to cause coredumps on Linux. 26419 26420 * src/html.c (ftp_index): Cast the argument to local_time to time_t *. 26421 264221996-11-02 Hrvoje Niksic <hniksic@srce.hr> 26423 26424 * src/ftp.c (ftp_loop): Check for opt.ftp_glob too before calling 26425 ftp_retrieve_glob. 26426 26427 * src/version.c: Changed version to 1.4.0-test2. 26428 264291996-11-02 Hrvoje Niksic <hniksic@srce.hr> 26430 26431 * doc/wget.texi (Introduction): Updated robots mailing list address. 26432 264331996-11-01 Hrvoje Niksic <hniksic@srce.hr> 26434 26435 * src/connect.c (select_fd): Use exceptfds -- once and for all. 26436 26437 * src/retr.c (retrieve_from_file): Free filename after 26438 recursive_retrieve. 26439 (retrieve_from_file): Send RFIRST_TIME to recursive_retrieve on 26440 first-time retrieval. 26441 (retrieve_from_file): Return uerr_t; new argument, count. 26442 (retrieve_from_file): Break on QUOTEXC. 26443 26444 * src/init.c (setquota): Fixed a bug that caused rejection of 26445 non-postfixed values.. 26446 264471996-11-01 Hrvoje Niksic <hniksic@srce.hr> 26448 26449 * doc/wget.texi: Minor docfixes. 26450 264511996-10-30 Hrvoje Niksic <hniksic@srce.hr> 26452 26453 * src/version.c: Changed name to wget. 26454 26455 * src/connect.c (iread): Smarter use of select. 26456 (select_fd): Set errno on timeout. If not timeout, return 1 26457 instead of 0. 26458 264591996-10-29 Hrvoje Niksic <hniksic@srce.hr> 26460 26461 * src/ftp.c (ftp_loop_internal): Don't use con->cmd before 26462 establishing it. 26463 264641996-10-26 Hrvoje Niksic <hniksic@srce.hr> 26465 26466 * src/http.c (gethttp): Send correct referer when using proxy. 26467 (gethttp): Use struct urlinfo ou to access the relevant data; send 26468 correct authorization in all cases. 26469 26470 * src/host.c (same_host): Use skip_uname to skip username and 26471 password. 26472 26473 * src/url.c (skip_uname): New function. 26474 (parseurl): Use it. 26475 26476 * src/host.c (same_host): Do not assume HTTP -- same_host should now 26477 be totally foolproof. 26478 26479 * src/url.c (skip_proto): New function. 26480 (parse_uname): Use it. 26481 26482 * src/http.c (gethttp): Create local user and passwd from what is 26483 given. 26484 26485 * src/url.c (parseurl): Check for HTTP username and password too. 26486 264871996-10-26 Hrvoje Niksic <hniksic@srce.hr> 26488 26489 * doc/wget.texi (Advanced Usage): Document passwords better. 26490 26491 * doc/Makefile.in (distclean): Remove wget.1 on make distclean. 26492 26493 * doc/wget.texi (Option Syntax): Explain --. 26494 264951996-10-25 Hrvoje Niksic <hniksic@srce.hr> 26496 26497 * src/config.h.in: Removed #define gethostbyname R... 26498 264991996-10-22 Hrvoje Niksic <hniksic@srce.hr> 26500 26501 * src/version.c: Changed version to 1.4.0-test1. 26502 265031996-10-21 Hrvoje Niksic <hniksic@srce.hr> 26504 26505 * src/version.c: "Released" 1.4b29. 26506 26507 * src/recur.c (recursive_retrieve): Check for no_parent. 26508 26509 * src/init.c (setval): Option update. 26510 26511 * src/main.c (main): New option no-parent. 26512 26513 * src/options.h (struct options): New variable no_parent. 26514 26515 * src/recur.c (recursive_retrieve): Only files are checked for 26516 opt.accepts and opt.rejects. 26517 (recursive_retrieve): Check directories for opt.excludes. 26518 (recursive_retrieve): Make the dir absolute when checking 26519 opt.excludes. 26520 26521 * src/html.c (htmlfindurl): Recognize <applet code=...> and <script 26522 src=...> 26523 265241996-10-21 Hrvoje Niksic <hniksic@srce.hr> 26525 26526 * doc/fetch.texi (No Parent): update. 26527 265281996-10-18 Hrvoje Niksic <hniksic@srce.hr> 26529 26530 * src/version.c: "Released" 1.4b28. 26531 26532 * src/ftp.c (ftp_loop_internal): Check whether f->size == len and 26533 don't continue the loop if it is. 26534 (ftp_get_listing): Remove list_filename on unsuccesful loop. 26535 265361996-10-18 Hrvoje Niksic <hniksic@srce.hr> 26537 26538 * src/ftp.c (getftp): Do not line-break assert entries at all. 26539 (ftp_retrieve_dirs): docfix. 26540 26541 * src/connect.c (select_fd): Use fd + 1 as nfds. 26542 26543 * src/version.c: Changed version to 1.4b29. 26544 265451996-10-18 Hrvoje Niksic <hniksic@srce.hr> 26546 26547 * doc/fetch.texi (Advanced Options): Docfix. 26548 265491996-10-17 Tage Stabell-Kulo <tage@acm.org> 26550 26551 * doc/geturl.texi (Advanced Options): Sort alphabetically. 26552 265531996-10-17 Hrvoje Niksic <hniksic@srce.hr> 26554 26555 * src/recur.c (parse_robots): Fixed an off-by-one bug when looking for 26556 ':'. 26557 26558 * src/html.c (htmlfindurl): Fixed several possible off-by-one bugs by 26559 moving `bufsize &&' to the beginning of each check in for-loops. 26560 26561 * src/recur.c (parse_robots): Close fp on exit. 26562 26563 * src/url.c (mymkdir): Check for each directory before creating. 26564 265651996-10-17 Hrvoje Niksic <hniksic@srce.hr> 26566 26567 * src/ftp.c (ftp_loop_internal): Use strcpy to initialize tmp. 26568 (getftp): Do not use multiline assert. 26569 26570 * src/http.c (hparsestatline): Use mjr and mnr instead of major and 26571 minor, which don't compile on Ultrix. 26572 (http_loop): Use strcpy() to initialize tmp. 26573 26574 * src/all: Geturl -> Fetch 26575 265761996-10-16 Hrvoje Niksic <hniksic@srce.hr> 26577 26578 * src/version.c: Changed version to 1.4b28. 26579 265801996-10-16 Hrvoje Niksic <hniksic@srce.hr> 26581 26582 * src/version.c: "Released" 1.4b27. 26583 26584 * src/init.c (parse_line): Use isspace. 26585 (parse_line): Free *com on all errors. 26586 26587 * src/ftp.c (ftp_loop): Change FTPOK to RETROK before exiting. 26588 (delelement): Use next instead of f->next and prev instead of 26589 f->prev. 26590 (delelement): Free the members of the deleted element. 26591 26592 * src/http.c (http_loop): Do not return RETROK on code != 20x. 26593 26594 * src/init.c (cleanup): Free opt.user_header. 26595 (cleanup): Free opt.domains. 26596 26597 * src/url.c (freelists): Moved to cleanup(). 26598 26599 * src/http.c (hparsestatline): Docfix. 26600 26601 * src/main.c (main): Return with error status on unsuccesful 26602 retrieval. 26603 26604 * src/init.c (setval): Do not remove listing when mirroring. 26605 26606 * src/url.c (url_filename): Use opt.fileprefix. 26607 26608 * src/ftp.c (ftp_get_listing): Use url_filename to get filename for 26609 .listing. 26610 26611 * src/main.c (main): New option: -rn. 26612 266131996-10-16 Hrvoje Niksic <hniksic@srce.hr> 26614 26615 * doc/geturl.texi (Advanced Options): Describe -nr. 26616 (Advanced Usage): Moved -O pipelines to Guru Usage. 26617 (Simple Usage): Update. 26618 (Advanced Options): Docfix. 26619 26620 * doc/Makefile.in (RM): RM = rm -f. 26621 266221996-10-15 Hrvoje Niksic <hniksic@srce.hr> 26623 26624 * src/Makefile.in (RM): Added RM = rm -f. 26625 26626 * src/host.c (clean_hosts): New function. 26627 (free_hlist): Just free the list, no reset. 26628 26629 * src/version.c: Changed version to 1.4b27. 26630 266311996-10-15 Hrvoje Niksic <hniksic@srce.hr> 26632 26633 * doc/geturl.texi (Guru Usage): Add proxy-filling example. 26634 266351996-10-13 Hrvoje Niksic <hniksic@srce.hr> 26636 26637 * src/version.c: "Released" 1.4b26. 26638 26639 * src/retr.c (retrieve_from_file): If call get_urls_html with 26640 opt.spider to make it silent in spider mode. 26641 26642 * src/url.c (str_url): Use CLEANDUP instead of URL_CLEANSE. 26643 26644 * src/url.h (CLEANDUP): New macro. 26645 26646 * src/http.c (gethttp): Fixed a bug that freed location only when it 26647 was NULL. 26648 26649 * src/retr.c (retrieve_url): Free url if it will not be stored, 26650 i.e. newloc is NULL. 26651 26652 * src/html.c (htmlfindurl): Handle exiting from quotes correctly; the 26653 old version would bug out on <a href="x#a"href="y">. 26654 26655 * src/html.h (state_t): New member in_quote. 26656 26657 * src/html.c (htmlfindurl): Free s->attr at the beginning of 26658 attr-loop. 26659 26660 * src/recur.c (recursive_retrieve): Recognize RCLEANUP. 26661 (tried_robots): Make hosts a global variable. 26662 (recursive_retrieve): Free constr after URL host optimization. 26663 (tried_robots): Free urlinfo before exiting. 26664 26665 * src/utils.c (free_slist): New function. 26666 26667 * src/recur.c (recursive_retrieve): Use flags to add cleanup 26668 possibility. 26669 26670 * src/main.c (main): Free filename after recursive_retrieve. 26671 26672 * src/http.c (gethttp): Store successful responses too. 26673 266741996-10-12 Hrvoje Niksic <hniksic@srce.hr> 26675 26676 * src/all: Constified the whole source. This required some minor 26677 changes in many functions in url.c, possibly introducing bugs -- I 26678 hope not. 26679 26680 * src/ftp-basic.c: Removed last_respline. 26681 26682 * src/http.c (gethttp): Free type. 26683 26684 * src/host.c (same_host): Free real1 and real2. 26685 26686 * src/main.c (main): New option --spider. 26687 26688 * src/retr.c (get_contents): Don't reset errno. 26689 26690 * src/main.c (main): Sorted the options. 26691 26692 * src/connect.c (iread): Set errno to ETIMEDOUT only if it was left 26693 uninitialized by select(). 26694 26695 * src/http.c (http_loop): Print the time when the connection is 26696 closed. 26697 (gethttp): Debug-print the HTTP request. 26698 266991996-10-12 Hrvoje Niksic <hniksic@srce.hr> 26700 26701 * doc/geturl.texi (Advanced Options): Added --spider. 26702 267031996-10-11 Hrvoje Niksic <hniksic@srce.hr> 26704 26705 * src/connect.c (iread): Do not try reading after timeout. 26706 26707 * src/main.c (main): Would bug out on -T. 26708 26709 * src/connect.c (select_fd): Do not use exceptfds. 26710 (iread): Set ETIMEDOUT on select_fd <= 0. 26711 26712 * src/version.c: Changed version to 1.4b26. 26713 267141996-10-10 Hrvoje Niksic <hniksic@srce.hr> 26715 26716 * src/version.c: "Released" 1.4b25. 26717 26718 * src/ftp-unix.c (ftp_parse_unix_ls): Ignore lines without file name 26719 or link name. 26720 26721 * src/http.c (gethttp): Add errcode to struct hstat. 26722 (http_loop): Use it. 26723 26724 * src/url.c (no_proxy_match): Simplify using char** for no_proxy. 26725 26726 * src/options.h (struct options): Make opt.no_proxy a vector. 26727 26728 * src/utils.c (sepstring): Use !*s instead of !strlen(s). 26729 26730 * src/init.c (setval): Set opt.maxreclevel to 0 on --mirror. 26731 (getperms): Use ISODIGIT instead of isdigit. 26732 26733 * src/ftp.c (getftp): Print time. 26734 26735 * src/main.c (main): Use legible output of downloaded quantity. 26736 26737 * src/ftp.c (getftp): Use elapsed_time(). 26738 (ftp_loop_internal): Use rate(). 26739 26740 * src/http.c (http_loop): Add download ratio output; Use rate(). 26741 26742 * src/utils.c (rate): New function. 26743 267441996-10-09 Hrvoje Niksic <hniksic@srce.hr> 26745 26746 * src/http.c (http_loop): Use timer. 26747 26748 * src/ftp.c: Split to ftp-basic.c and ftp.c 26749 26750 * src/utils.c (reset_timer): New function. 26751 (elapsed_time): New function. 26752 26753 * src/retr.c (show_progress): Make bytes_in_line and offs long; should 26754 work on 16-bit machines. 26755 267561996-10-08 Hrvoje Niksic <hniksic@srce.hr> 26757 26758 * src/url.c (in_acclist): New argument backward. 26759 26760 * src/ftp.c (ftp_retrieve_glob): Use acceptable() to determine whether 26761 a file should be retrieved according to suffix. 26762 (ftp_get_listing): Check the return value of unlink; Do not call 26763 ftp_retrieve_dirs if depth reached maxreclevel. 26764 (ftp_retrieve_dirs): Check whether the directory is in 26765 exclude-list. 26766 26767 * src/main.c (main): Print the version number at the beginning of 26768 DEBUG output. 26769 (main): Use strrchr when creating exec_name. 26770 26771 * src/ftp.c (ftp_retrieve_glob): Do not close control connection. 26772 26773 * src/version.c: Changed version to 1.4b25. 26774 267751996-10-08 Hrvoje Niksic <hniksic@srce.hr> 26776 26777 * doc/geturl.texi (Advanced Options): Added -X. 26778 26779 * doc/Makefile.in: Added $(srcdir) where appropriate (I hope). 26780 267811996-10-07 Hrvoje Niksic <hniksic@srce.hr> 26782 26783 * src/version.c: "Released" 1.4b24. 26784 26785 * src/Makefile.in: Rewrite. 26786 26787 * src/ftp.c (ftp_loop_internal): Likewise. 26788 26789 * src/retr.c (time_str): Check for failed time(). 26790 26791 * src/html.c (htmlfindurl): Recognize <fig src> and <overlay src> from 26792 HTML3.0. 26793 26794 * src/retr.c (time_str): Return time_t *. 26795 26796 * src/connect.c (bindport): Close msock on unsuccesful bind. 26797 (bindport): The same for getsockname and listen. 26798 26799 * src/retr.c (retrieve_url): Allow any number of retries on 26800 proxy. 26801 26802 * src/http.c (gethttp): Do not treat errno == 0 as timeout. 26803 (http_loop): Likewise. 26804 (http_loop): Cosmetic changes. 26805 26806 * src/connect.c (iread): Set errno to ETIMEDOUT in case of timeout. 26807 26808 * src/retr.c (get_contents): Reset errno. 26809 26810 * src/ftp.c (getftp): Minor fixes. 26811 268121996-10-06 Hrvoje Niksic <hniksic@srce.hr> 26813 26814 * src/version.c: "Released" 1.4b23. 26815 26816 * src/ftp.c (ftp_loop_internal): Get the time after getftp. 26817 26818 * src/Makefile.in (install.info): New target. 26819 (install): Use it. 26820 26821 * src/http.c (http_loop): Fix output when doing -O. 26822 268231996-10-06 Hrvoje Niksic <hniksic@srce.hr> 26824 26825 * src/http.c: Do not use backups. 26826 26827 * src/geturl.1 (WARNING): Warn that man-page could be obsolete. 26828 26829 * src/getopt.c (getopt_long): Moved to getopt.c 26830 26831 * src/geturl.texi: Enhanced. 26832 26833 * src/main.c (main): Use it. 26834 26835 * src/recur.c (convert_all_links): New function. 26836 26837 * src/utils.c (add_slist): New argument flags. 26838 26839 * src/recur.c (recursive_retrieve): Update a list of downloaded URLs. 26840 (parse_robots): Do not chuck out empty value fields. 26841 (parse_robots): Make yourself welcome on empty Disallow. 26842 26843 * src/version.c: Changed version to 1.4b24. 26844 268451996-10-05 Hrvoje Niksic <hniksic@srce.hr> 26846 26847 * src/geturl.texi: New file. 26848 26849 * src/main.c (main): Do not print the warnings and download summary if 26850 opt.quiet is set. 26851 26852 * src/version.c: Changed version to 1.4b23. 26853 268541996-10-05 Hrvoje Niksic <hniksic@srce.hr> 26855 26856 * src/"Released" 1.4b22. 26857 26858 * src/atotm.c (atotm): Use True and False instead of TRUE and FALSE, 26859 to avoid redefinition warnings. 26860 26861 * src/host.c (store_hostaddress): Use memcpy() to copy the address 26862 returned by inet_addr. 26863 26864 * src/version.c: Changed version to 1.4b22. 26865 268661996-10-04 Hrvoje Niksic <hniksic@srce.hr> 26867 26868 * src/version.c: "Released" 1.4b21. 26869 26870 * src/ftp-unix.c (ftp_parse_ls): Renamed to ftp_parse_unix_ls. 26871 26872 * src/ftp.c (ftp_port): Use conaddr. 26873 (getftp): Print the file length. 26874 (ftp_retrieve_list): Check the stamps of plain files only. 26875 26876 * src/connect.c (closeport): Do not call shutdown(). 26877 (conaddr): New function. 26878 26879 * src/html.c (ftp_index): Made it dfp-aware. 26880 26881 * src/init.c (cleanup): New name of freemem. Close opt.dfp. 26882 26883 * src/ftp.c (getftp): Use opt.dfp if it is set. 26884 26885 * src/ftp-unix.c (ftp_parse_ls): Recognize time in h:mm format. 26886 26887 * src/ftp.c (ftp_retrieve_dirs): Fixed a bug that caused incorrect 26888 CWDs to be sent with recursive FTP retrievals. 26889 268901996-10-03 Hrvoje Niksic <hniksic@srce.hr> 26891 26892 * src/recur.c (parse_robots): Made it more compliant with "official" 26893 specifications. 26894 26895 * src/http.c: New function. 26896 26897 * src/ftp-unix.c (ftp_parse_ls): Added better debug output. 26898 26899 * src/ftp.c (getftp): Print out the LIST in case of 26900 opt.print_server_response. 26901 26902 * src/version.c: Changed version to 1.4b21. 26903 269041996-10-01 Hrvoje Niksic <hniksic@srce.hr> 26905 26906 * src/version.c: "Released" 1.4b20. 26907 26908 * src/README: Update. 26909 26910 * src/http.c (gethttp): Preset lengths of various headers instead of 26911 calculating them dynamically. 26912 (gethttp): Check for 206 partial contents. 26913 269141996-09-30 Hrvoje Niksic <hniksic@srce.hr> 26915 26916 * src/configure.in: Set SYSTEM_GETURLRC to $libdir/geturlrc 26917 26918 * src/http.c (gethttp): Send the port number in the Host: header. 26919 269201996-09-29 Hrvoje Niksic <hniksic@srce.hr> 26921 26922 * src/http.c (gethttp): Send host: header. 26923 (gethttp): Add the possibility of user-defined headers. 26924 (gethttp): Move decision about pragma: no-cache to http_loop, 26925 where it belongs. 26926 (gethttp): Pass a struct instead of enormous argument list. 26927 (http_loop): Use a new, fancier display format. 26928 (ftp_loop): Likewise. 26929 26930 * src/main.c: (hangup): Turn off buffering of the new log file. 26931 26932 * src/install-sh: Likewise. 26933 26934 * src/config.sub: Replace with the one in autoconf-2.10 26935 26936 * src/geturl.1: Update. 26937 26938 * src/init.c: New options httpuser and httppasswd. 26939 26940 * src/http.c: (base64_encode_line): New function. 26941 (gethttp): Send authentication. 26942 26943 * src/connect.c (make_connection): Use store_hostaddress. 26944 269451996-09-28 Hrvoje Niksic <hniksic@srce.hr> 26946 26947 * src/host.c (store_hostaddress): New function. 26948 26949 * src/NEWS: Update. 26950 26951 * src/http.c (hgetrange): New function. 26952 (gethttp): Use ranges. 26953 26954 * src/utils.c (numdigit): Accept long instead of int. 26955 26956 * src/http.c (http_loop): Add restart capabilities. 26957 26958 * src/ftp.c (ftp_retrieve_glob): Fixed a bug that could cause matchres 26959 being used uninitialized. 26960 (ftp_retrieve_list): Similar fix. 26961 26962 * src/host.c (add_hlist): Fixed a bug that could cause cmp being used 26963 uninitialized. 26964 26965 * src/url.c (construct_relative): New function. 26966 26967 * src/recur.c (recursive_retrieve): Use it. 26968 26969 * src/retr.c (convert_links): New function. 26970 269711996-09-27 Hrvoje Niksic <hniksic@srce.hr> 26972 26973 * src/url.c (free_urlpos): New function. 26974 26975 * src/recur.c (recursive_retrieve): Adapt. 26976 26977 * src/url.c (get_urls_html): Return a linked list instead of a vector. 26978 26979 * src/url.c (get_urls_file): Return a linked list instead of a vector. 26980 26981 * src/geturl.1: Update. 26982 26983 * src/http.c (gethttp): Implement it. 26984 26985 * src/init.c (setval): New option: SAVEHEADERS 26986 26987 * src/ftp.c (ftp_loop_internal): Do not set restval if listing is to 26988 be retrieved. Lack of this test caused bugs when the connection 26989 was lost during listing. 26990 26991 * src/retr.c (retrieve_url): Fixed a bug that caused 26992 coredumps. *newloc is now reset by default. 26993 (retrieve_url): Lift the twenty-tries limit on proxies. 26994 26995 * src/version.c: Changed version to 1.4b20. 26996 269971996-09-20 Hrvoje Niksic <hniksic@srce.hr> 26998 26999 * src/version.c: "Released" 1.4b19. 27000 270011996-09-19 Hrvoje Niksic <hniksic@srce.hr> 27002 27003 * src/ftp.c (ftp_loop_internal): Renamed from ftp_1fl_loop. 27004 (getftp): Changed prototype to accept ccon *. 27005 270061996-09-17 Hrvoje Niksic <hniksic@srce.hr> 27007 27008 * src/ftp.c (ftp_retrieve_list): Fixed a bug that caused setting 27009 incorrect values to files pointed to by symbolic links. 27010 (ftp_1fl_loop): Do not count listings among the downloaded URL-s. 27011 270121996-09-16 Hrvoje Niksic <hniksic@srce.hr> 27013 27014 * src/url.c (mkstruct): Do not prepend "./" in front of a pathname. 27015 27016 * src/main.c (main): New option: --user-agent. 27017 27018 * src/geturl.1: Ditto. 27019 27020 * src/init.h: Ditto. 27021 27022 * src/init.c (setval): Ditto. 27023 27024 * src/main.c (main): Rename "server-headers" to "server-response". 27025 27026 * src/ftp-unix.c (ftp_parse_ls): Check for asterisks at the end of 27027 executables in 'ls -F' listings. 27028 270291996-09-15 Hrvoje Niksic <hniksic@srce.hr> 27030 27031 * src/url.c (parseurl): Remove realloc() and sprintf(). 27032 (str_url): Get rid of sprintf(). 27033 27034 * src/recur.c (recursive_retrieve): Enable FTP recursion through proxy 27035 servers. 27036 27037 * src/url.h (URL_CLEANSE): Made it else-resistant. 27038 (USE_PROXY): New macro. 27039 270401996-09-14 Hrvoje Niksic <hniksic@srce.hr> 27041 27042 * src/version.c: "Released" 1.4b18. 27043 27044 * src/url.c: Made it reallocate space exponentially. 27045 270461996-09-14 Hrvoje Niksic <hniksic@srce.hr> 27047 27048 * src/NEWS: Update. 27049 27050 * src/version.c: Changed version to 1.4b19. 27051 270521996-09-14 Drazen Kacar <dave@fly.cc.fer.hr> 27053 27054 * src/html.c (htmlfindurl): Added <frame src> and <iframe src> among 27055 the list of stuff to fetch. 27056 270571996-09-13 Hrvoje Niksic <hniksic@srce.hr> 27058 27059 * src/url.c (get_urls_html): Fixed a bug that caused SIGSEGV's with 27060 -Fi. 27061 27062 * src/html.c (htmlfindurl): Rewrite. 27063 27064 * src/http.c (gethttp): Use opt.proxy_cache. 27065 27066 * src/main.c (main): Added --cache option. 27067 27068 * src/ftp.c (ftp_response): Print server response if opt.print_server 27069 response is set. 27070 (getftp): Print newlines after each request if the server response 27071 is to be printed. 27072 (ftp_response): Copy the last response line to last_respline. 27073 27074 * src/http.c (gethttp): Add Pragma: nocache for retried 27075 proxy-retrievals. 27076 27077 * src/ftp.c (getftp): Use it. 27078 27079 * src/retr.c (buf_discard): New function. 27080 27081 * src/ftp.c (ftp_response): Use buf_readchar(). 27082 (getftp): Flush the control connection buffer before calling 27083 get_contents(). 27084 27085 * src/retr.c (buf_readchar): New function. 27086 (buf_flush): New function. 27087 (get_contents): Use buf_readchar() instead of read(x, x, 1). 27088 (get_contents): Use buf_flush. 27089 270901996-09-12 Hrvoje Niksic <hniksic@srce.hr> 27091 27092 * src/http.c (hgetlen): Compute the header length the first time only. 27093 (hgettype): Ditto. 27094 (hgetlocation): Ditto. 27095 (hgetmodified): Ditto. 27096 270971996-09-12 Hrvoje Niksic <hniksic@srce.hr> 27098 27099 * src/ftp.c: Incorporate changes to ftp_response. 27100 27101 * src/ftp.c (ftp_response): Allocate the server response dynamically, 27102 as in read_whole_line and fetch_next_header. 27103 27104 * src/utils.c (read_whole_line): Fixed a bug that prevented reading 27105 the last line if it is not \n-terminated. Also fixed a possible 27106 memory overflow. 27107 27108 * src/http.c (fetch_next_header): Return malloc-ed string as large as 27109 needed. 27110 (gethttp): Use new fetch_next_header. 27111 271121996-09-11 Hrvoje Niksic <hniksic@srce.hr> 27113 27114 * src/sample.geturlrc: Update. 27115 271161996-09-10 Hrvoje Niksic <hniksic@srce.hr> 27117 27118 * src/version.c: "Released" 1.4b17. 27119 27120 * src/ftp-unix.c (ftp_parse_ls): If unable to open file, return NULL 27121 instead of failed assertion. 27122 271231996-09-10 Hrvoje Niksic <hniksic@srce.hr> 27124 27125 * src/http.c (http_loop): Ditto. 27126 27127 * src/ftp.c (getftp): Open the output file as binary. 27128 27129 * src/version.c: Changed version to 1.4b18. 27130 271311996-09-09 Hrvoje Niksic <hniksic@srce.hr> 27132 27133 * src/ftp.c (ftp_get_listing): Add a numbered suffix to LIST_FILENAME 27134 if a file of that name already exists. 27135 271361996-09-05 Hrvoje Niksic <hniksic@srce.hr> 27137 27138 * src/ftp.c (ftp_1fl_loop): Handler FTPPORTERR and FOPENERR correctly. 27139 27140 * src/config.h.in: Define gethostbyname as Rgethostbyname when using 27141 Socks. 27142 27143 * src/configure.in: Check for -lresolv if using Socks. 27144 27145 * src/version.c: Changed version to 1.4b17. 27146 271471996-07-15 Hrvoje Niksic <hniksic@srce.hr> 27148 27149 * src/version.c: "Released" 1.4b16. 27150 27151 * src/http.c (gethttp): More intelligent check for first line of HTTP 27152 response. 27153 (gethttp): Would bug out on time-stamping. 27154 27155 * src/version.c: Changed version to 1.4b16. 27156 271571996-07-11 Hrvoje Niksic <hniksic@srce.hr> 27158 27159 * src/version.c: Released 1.4b15. 27160 27161 * src/http.c (http_loop): Print \n after the loop entry, not before. 27162 27163 * src/url.c (url_filename): Use ISDOT. 27164 27165 * src/url.h (ISDOT): New macro. 27166 27167 * src/recur.c (recursive_retrieve): Change only opt.recursive for 27168 following FTP. 27169 271701996-07-11 Hrvoje Niksic <hniksic@srce.hr> 27171 27172 * src/url.c (url_filename): Check for opt.dirstruct instead for 27173 opt.recursive && opt.dirstruct. 27174 27175 * src/init.c (defaults): Ditto. 27176 (defaults): Reset dirstruct by default. 27177 (setval): Set opt.dirstruct whenever setting recursive. 27178 27179 * src/init.h: Removed FORCEDIRHIER. 27180 27181 * src/INSTALL: Added -L to socks-description. 27182 27183 * src/version.c: Changed version to 1.4b15. 27184 271851996-07-11 Antonio Rosella <antonio.rosella@agip.it> 27186 27187 * src/socks/geturl.cgi: Fixed version No. 27188 27189 * src/socks/download-netscape.html: Ditto. 27190 27191 * src/socks/download.html: Changed socks.html to download.html. 27192 271931996-07-10 Hrvoje Niksic <hniksic@srce.hr> 27194 27195 * src/version.c: "Released" 1.4b14. 27196 27197 * src/geturl.1: Update AUTHOR to include Rosella as contributor. 27198 27199 * src/NEWS: Update. 27200 27201 * src/socks/geturl.cgi: Simplified command creation, nuked <blink>. 27202 27203 * src/socks/geturl.cgi: Wrap nutscape extensions within if $netscape. 27204 (cal_time): Fix == to eq. 27205 27206 * src/socks/geturl.cgi: GPL-ized with permission of A. Rosella. 27207 27208 * src/geturl.1 (hostname): Moved URL CONVENTIONS to the beginning. 27209 27210 * src/Makefile.in: Use @VERSION@. 27211 27212 * src/configure.in: Check version from version.c. 27213 27214 * src/socks/geturl.cgi: Changed /pub/bin/perl to /usr/bin/perl. 27215 27216 * src/socks/download.html: Created from download-netscape.html, made 27217 HTML-2.0 compliant. 27218 27219 * src/recur.c (recursive_retrieve): Set opt.force_dir_hier when 27220 following FTP links from recursions. 27221 272221996-07-09 Hrvoje Niksic <hniksic@srce.hr> 27223 27224 * src/version.c: "Released" 1.4b13. 27225 27226 * src/url.c (make_backup): New function. 27227 27228 * src/http.c (http_loop): Make a backup copy of the local file (using 27229 rename(2)) before opening it. 27230 27231 * src/main.c (main): Added --backups. 27232 27233 * src/host.c (ftp_getaddress): Bail out on failed mycuserid(). 27234 (ftp_getaddress): Check for leading dot on MY_DOMAIN. 27235 (ftp_getaddress): Check for empty, null or (null) domain. 27236 27237 * src/url.c (get_urls_html): If this_url is NULL, the base must have a 27238 protocol. 27239 (parseurl): Use has_proto. 27240 27241 * src/retr.c (retrieve_url): Warn when proxy is used with more than 20 27242 retries. 27243 27244 * src/url.c (mkstruct): Create the directory (calling mymkdir()) only 27245 if it is not already there. 27246 (has_proto): New function. 27247 (get_urls_html): Eliminate the remaining call to findurl -- use 27248 has_proto. 27249 27250 * src/geturl.1: Ditto. 27251 27252 * src/main.c: Change -X to -x. 27253 27254 * src/url.c (url_filename): Simplify creation of filename if 27255 prefix_files is set. 27256 (url_filename): Simplify everything. And I do mean *everything*. 27257 (mkstruct): Add dir_prefix before hostname. 27258 (path_simplify): Fixed a bug that caused writing outside the path 27259 string in case of "." and ".." path strings. 27260 272611996-07-09 Hrvoje Niksic <hniksic@srce.hr> 27262 27263 * src/url.c (mymkdir): Fixed a bug that prevented mymkdir() to create 27264 absolute directories correctly. 27265 27266 * src/version.c: Changed version to 1.4b14. 27267 272681996-07-06 Hrvoje Niksic <hniksic@srce.hr> 27269 27270 * src/init.c: Added --mirror. 27271 27272 * src/main.c (main): Added -X to force saving of directory hierarchy. 27273 27274 * src/ftp.c (ftp_retrieve_list): Added recursion depth counter. 27275 (ftp_retrieve_list): Check whether quota is exceeded. 27276 27277 * src/url.c (get_urls_html): Skip leading blanks for absolute URIs. 27278 27279 * src/http.c (gethttp): Use referer if present. 27280 27281 * src/recur.c (recursive_retrieve): Set u->referer before calling 27282 retrieve_url. 27283 27284 * src/url.c (newurl): Use memset to nullify the struct members. 27285 (freeurl): Free the referer field too. 27286 27287 * src/url.h: Added referer to urlinfo. 27288 27289 * src/geturl.1: Updated the manual to document some of the new features. 27290 27291 * src/utils.c (numdigit): Moved from url.c. 27292 27293 * src/README: Rewritten. 27294 27295 * src/config.h.in: Add the support for socks. 27296 27297 * src/configure.in: Add the support for socks. 27298 27299 * src/url.c (url_filename): If the dir_prefix is ".", work with just 27300 the file name. 27301 (url_filename): Do not look for .n extensions if timestamping if 27302 turned on. 27303 27304 * src/retr.c (show_progress): Skip the over-abundant restval data, and 27305 print the rest of it with ',' instead of '.'. 27306 273071996-07-05 Hrvoje Niksic <hniksic@srce.hr> 27308 27309 * src/retr.c (show_progress): Changed second arg. to long (as it 27310 should be). 27311 (show_progress): Moved to retr.c. 27312 (get_contents): Moved to retr.c. 27313 27314 * src/version.c: Change version to 1.4b13. 27315 273161996-07-05 Hrvoje Lacko <hlacko@fly.cc.fer.hr> 27317 27318 * src/url.c (in_acclist): Would return after the first suffix. 27319 273201996-07-04 Hrvoje Niksic <hniksic@srce.hr> 27321 27322 * src/version.c: "Released" 1.4b12. 27323 27324 * src/url.c (path_simplify): More kludgifications. 27325 (get_urls_html): Use new parameters for htmlfindurl. 27326 27327 * src/html.c: Removed memorizing "parser states", since the new 27328 organization does not require them. 27329 27330 * src/init.c (run_geturlrc): Use read_whole_line. 27331 27332 * src/ftp-unix.c (ftp_parse_ls): Use read_whole_line. 27333 27334 * src/recur.c (parse_robots): Use read_whole_line. 27335 27336 * src/utils.c (read_whole_line): New function. 27337 27338 * src/recur.c (tried_robots): Use add_slist/in_slist, *much* cleaner. 27339 27340 * src/host.c (ngethostbyname): Call inet_addr just once. Yet to be 27341 tested on OSF and Ultrix. 27342 (add_hlist): New function. 27343 (free_hlist): New function. 27344 (search_host): New function. 27345 (search_address): New function. 27346 (realhost): Use search_host, search_address and add_hlist. 27347 (same_host): Replaced realloc() with strdupdelim(), made 27348 case-insensitive, fixed a memory leak. 27349 27350 * src/html.c (ftp_index): Fixed tm_min and tm_sec to be tm_hour and 27351 tm_min, like intended. 27352 27353 * src/version.c: Change user agent information to 27354 Geturl/version. 27355 273561996-07-03 Hrvoje Niksic <hniksic@srce.hr> 27357 27358 * src/utils.c: Renamed nmalloc.c to utils.c, .h likewise. 27359 27360 * src/url.c (acceptable): Always accept directories. 27361 27362 * src/ftp-unix.c (ftp_parse_ls): Support brain-damaged "ls -F"-loving 27363 servers by stripping trailing @ from symlinks and trailing / from 27364 directories. 27365 27366 * src/ftp.c (ftp_loop): Debugged the "enhanced" heuristics. :-) 27367 27368 * src/url.c (skip_url): Use toupper instead of UCASE. 27369 27370 * src/host.c (sufmatch): Made it case-insensitive. 27371 27372 * src/url.c (match_backwards_or_pattern): Fixed i == -1 to j == -1. 27373 (match_backwards): New function, instead of 27374 match_backwards_or_pattern. 27375 27376 * src/recur.c (recursive_retrieve): Increased performance by 27377 introducing inl, which reduces number of calls to in_slist to only 27378 one. 27379 27380 * src/ftp.c (ftp_loop): Enhanced the heuristics that decides which 27381 routine to use. 27382 27383 * src/main.c (printhelp): Removed the warranty stuff. 27384 273851996-07-02 Hrvoje Niksic <hniksic@srce.hr> 27386 27387 * src/url.c (add_slist): Simplify. 27388 (match_backwards_or_pattern): New function. 27389 (in_acclist): Use match_backwards_or_pattern. 27390 (matches): Remove. 27391 273921996-06-30 Hrvoje Niksic <hniksic@srce.hr> 27393 27394 * src/ftp.c (ftp_loop): Call ftp_index on empty file names, if not 27395 recursive. 27396 27397 * src/html.c (ftp_index): Fixed to work. Beautified the output. 27398 27399 * src/ftp.c (ftp_retrieve_glob): Another argument to control whether 27400 globbing is to be used. 27401 (ftp_retrieve_list): Compare the time-stamps of local and remote 27402 files to determine whether to download. 27403 274041996-06-29 Hrvoje Niksic <hniksic@srce.hr> 27405 27406 * src/ftp.c (rel_constr): New function. 27407 27408 * src/retr.c (retrieve_from_file): Check for text/html before 27409 retrieving recursively. 27410 27411 * src/main.c (main): Check whether the file is HTML before going into 27412 recursive HTML retrieving. 27413 27414 * src/ftp.c (ftp_retrieve_list): Manage directories. 27415 (ftp_retrieve_glob): Pass all the file-types to ftp_retrieve_list. 27416 (ftp_1fl_loop): Fixed a bug that caused con->com to be incorrectly 27417 initialized, causing bugchecks in getftp to fail. 27418 27419 * src/configure.in: Check for symlink. 27420 27421 * src/ftp.c (ftp_retrieve_list): Added support for symlinks. 27422 27423 * src/version.c: "Released" 1.4b10. 27424 27425 * src/atotm.c (atotm): Redeclared as time_t. 27426 27427 * src/init.c: New variable "timestamping". 27428 27429 * src/main.c (main): New option 'N'. 27430 27431 * src/http.c (hgetlocation): Case-insensitive match. 27432 (hgetmodified): New function. 27433 (http_loop): Implement time-stamping. 27434 274351996-06-28 Hrvoje Niksic <hniksic@srce.hr> 27436 27437 * src/version.c: Changed version to 1.4b10 27438 27439 * src/atotm.c: New file, from phttpd. 27440 27441 * src/options.h (struct options): New parameter timestamping. 27442 27443 * src/version.c: 1.4b9 "released". 27444 27445 * src/recur.c (recursive_retrieve): Used linked list (ulist) for 27446 faster storing of URLs. 27447 27448 * src/url.c (get_urls_html): Removed the old kludge with comparing the 27449 outputs of htmlfindurl and findurl. 27450 (get_urls_html): Added better protocol support here. 27451 (create_hash): Removed, as well as add_hash and in_hash. 27452 (addslist): New function. 27453 (in_slist): ditto 27454 27455 * src/version.c: Released 1.4b8, changed version to b9. 27456 274571996-06-27 Hrvoje Niksic <hniksic@srce.hr> 27458 27459 * src/ftp.c (freefileinfo): New function. 27460 (delelement): New function. 27461 27462 * src/everywhere: GPL! 27463 27464 * src/ftp.c (ftp_loop): Use ccon. 27465 (ftp_retrieve_glob): Likewise. 27466 27467 * src/ftp.h: Define ccon, to define status of control connection. 27468 27469 * src/ftp.c (ftp_get_listing): New function. 27470 (ftp_retrieve_more): New function. 27471 (ftp_retrieve_glob): New function. 27472 274731996-06-25 Hrvoje Niksic <hniksic@srce.hr> 27474 27475 * src/configure.in: Removed the search for cuserid(). 27476 27477 * src/init.c (getmode): Renamed to getperms. 27478 274791996-06-24 Hrvoje Niksic <hniksic@srce.hr> 27480 27481 * src/version.c: New version. 27482 27483 * src/main.c (hangup): New function, that handles hangup. Hangup 27484 signal now causes geturl to stop writing on stdout, and to write 27485 to a log file. 27486 27487 * src/ftp.c (getftp): "Released" 1.4b7. 27488 27489 * src/html.c (htmlfindurl): Ignore everything inside <head>...</head>. 27490 (ftp_index): Use fileinfo/urlinfo. 27491 27492 * src/ftp-unix.c (ftp_parse_ls): New function. 27493 (symperms): New function. 27494 27495 * src/ftp.c (ftp_1fl_loop): New function, to handle 1-file loops. 27496 27497 * src/retr.c (retrieve_url): Added FTP support. 27498 274991996-06-23 Hrvoje Niksic <hniksic@srce.hr> 27500 27501 * src/geturl.h: Removed NOTFTP2HTML enum. 27502 Added DO_LOGIN, DO_CWD and DO_LIST. LIST_ONLY is obsolete. 27503 27504 * src/ftp.c (getftp): Resynched with urlinfo. 27505 (getftp): Removed HMTL-ization of index.html from getftp. 27506 27507 * src/version.c: 1.4b6 "released". 27508 27509 * src/options.h (options): New struct, to keep options in. 27510 27511 * src/http.c (http_loop,gethttp): Synched with proxy. 27512 27513 * src/retr.c (retrieve_url): Implemented proxy retrieval. 27514 27515 * src/main.c (main): Use retrieve_from_file. 27516 275171996-06-22 Hrvoje Niksic <hniksic@srce.hr> 27518 27519 * src/retr.c (retrieve_from_file): New function. 27520 27521 * src/url.c (parseurl): Modified to return URLOK if all OK. Protocol 27522 can be found in u->proto. 27523 27524 * src/ftp.c (ftp_response): Fixed to accept multi-line responses as 27525 per RFC 959. 27526 27527 * src/recr.c (recursive_retrieve): Take newloc from retrieve_url. 27528 27529 * src/url.c (mymkdir): Removed the file of the same name, if one 27530 exists. 27531 (isfile): New function. 27532 (mkstruct): Fixed the '/' glitches. 27533 (path_simplify): Hacked to treat something/.. correctly. 27534 275351996-06-21 Hrvoje Niksic <hniksic@srce.hr> 27536 27537 * src/http.c (gethttp): Close the socket after error in headers. 27538 (http_loop): HEOF no longer a fatal header. 27539 27540 * src/loop.c (retrieve_url): When dt is NULL, do not modify it. This 27541 simplifies the syntax of calling retrieve_url. 27542 27543 * src/recr.c (recursive_retrieve): Modified to use get_urls_html. 27544 27545 * src/url.c (get_urls_file): New function. 27546 (get_urls_html): New function. 27547 27548 * src/recr.c (recursive_retrieve): Patched up to conform to the 27549 standards. 27550 27551 * src/http.c (gethttp): Synched with the rest... 27552 (gethttp): Treat only CONREFUSED specially, with connection 27553 errors. 27554 27555 * src/init.c,geturl.1,http.c (http_loop): Removed kill_error. 27556 275571996-06-20 Hrvoje Niksic <hniksic@srce.hr> 27558 27559 * src/http.c (http_loop): New function. 27560 27561 * src/loop.c: Removed *lots* of stuff from retrieve_url. 27562 27563 * src/url.c (parseurl): Changed to work with urlinfo. Integrated 27564 username finding and path parsing. 27565 (newurl): New function. 27566 (freeurl): New function. 27567 (mkstruct): Removed the old bogosities, made it urlinfo-compliant. 27568 (url_filename): Likewise. 27569 (path_simplify): Accept relative paths too. 27570 (opt_url): Made urlinfo-compliant, removed bogosities. 27571 (path_simplify): Expanded to accept relative paths. 27572 (str_url): A replacement for hide_url 27573 (decode_string): Fixed a bug that caused malfunctioning when 27574 encountering an illegal %.. combination. 27575 (opt_url): Removed the argument. Dot-optimizations are now default. 27576 27577 * src/nmalloc.c (strdupdelim): New function. 27578 27579 * src/url.h: Added the urlinfo structure 27580 275811996-06-19 Hrvoje Niksic <hniksic@srce.hr> 27582 27583 * src/url.c (hide_url): Thrown out the protocol assertion. Do not 27584 change the URL if the protocol if not recognized. 27585 (findurl): Put continue instead of break. 27586 275871996-06-18 Hrvoje Niksic <hniksic@srce.hr> 27588 27589 * src/sample.geturlrc: Changed the defaults to be commented out and 27590 harmless (previous defaults caused pains if copied to 27591 ~/.geturlrc). 27592 27593 * src/http.c (gethttp): Print the HTTP request in debug mode. 27594 27595 * src/connect.c (iread): Added EINTR check loop to select-ing 27596 too. EINTR is now correctly handled with select(). 27597 27598 * src/TODO: new file 27599 276001996-05-07 Hrvoje Niksic <hniksic@srce.hr> 27601 27602 * src/host.c (same_host): Made the function a little bit more 27603 intelligent regarding diversified URL syntaxes. 27604 27605 * src/url.c (skip_url): Spaces are now skipped after URL: 27606 27607 * src/Released 1.3.1 with the patch to prevent crashing when sending 27608 NULL to robot* functions and the patch to compile "out of the box" 27609 on AIX. 27610 27611 * src/recr.c (recursive_retrieve): Added checking whether this_url is 27612 NULL when calling the robot functions. 27613 27614 * src/ChangeLog: New file. 27615