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 &#0.
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 &#32;.
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