X-Git-Url: http://sjero.net/git/?p=wget;a=blobdiff_plain;f=src%2FChangeLog;h=ed573983dd1ca88a5271407d4a448677d38814ef;hp=addafe0c4545cbaa18e46c58f1f50590eeff547a;hb=700df4394ec8739943966d8860913cc9363741cf;hpb=291693c3c25766a454f472415b22c2d1fbddcd29 diff --git a/src/ChangeLog b/src/ChangeLog index addafe0c..ed573983 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,478 @@ +2003-09-26 Gisle Vanem + + * mswindows.c (read_registry): Fix invocation of registry + functions. + + * mswindows.c (read_registry): Condition definitions of sleep and + usleep with not HAVE_SLEEP and HAVE_USLEEP respectively. Define + HAVE_SLEEP and HAVE_USLEEP under __DMC__. + +2003-09-24 Hrvoje Niksic + + * url.c (url_escape_1): Revert unintentional change to lowercase + xdigit escapes. + (url_escape_dir): Document that this function depends on the + output of url_escape_1. + +2003-09-23 Hrvoje Niksic + + * progress.c (create_image): Print the current ETA if we're done + with the download. + (create_image): Change '-' display char to '+' in the progress bar. + + * Makefile.in (clean): Remove .libs. + +2003-09-23 Hrvoje Niksic + + * cookies.c (struct cookie): New flag domain_exact. + (update_cookie_field): Skip leading dot in domain. + (find_matching_chains): Match numeric addresses exactly; don't + needlessly copy HOST to the stack. + (matching_cookie): Added argument HOST. If cookie->domain_exact + is set, check that HOST is equal to cookie->domain. + (cookie_jar_load): Only use TAB as delimiter. Document the + meaning of DOMAIN-FLAG. Skip leading dot in domain. + (cookie_jar_load): Don't ignore DOMAIN-FLAG -- instead, set + domain_exact to true if DOMAIN-FLAG is false. + (save_cookies_mapper): If domain_exact is false, prepend the + domain with dot, like Mozilla does. + +2003-09-22 Hrvoje Niksic + + * progress.c (create_image): Print the initial part of the + download with '-' characters, analogous to how dot progress prints + the initial part with ','. + + * hash.c (ptrhash): New function. + (ptrcmp): Ditto. + (hash_table_new): Default to identity hash table. + +2003-09-22 Hrvoje Niksic + + * safe-ctype.h (_sch_test): The cast of BIT to unsigned char was + broken -- _sch_istable bitmasks are 16-bit, not 8-bit! Cast BIT + to unsigned short instead. + +2003-09-22 Hrvoje Niksic + + * url.c (path_simplify): Instead of calls to memmove, handle "./" + and "../" by advancing pointers. + +2003-09-22 Hrvoje Niksic + + * retr.c (getproxy): Moved from url.c. + + * convert.c: Split off link conversion from url.c into separate + file. Also included the book-keeping stuff from recur.c. + +2003-09-21 Hrvoje Niksic + + * init.c: Improved documentation of functions. + (cmd_boolean): Attempt to make code that tries to avoid calling + strcmp for "speed" a bit more readable. + + * init.c (simple_atof): Report error on encountering non-digit, + non-"." character. + (simple_atoi): Replacement for myatoi(), calling interface + compatible with simple_atof. Updated myatoi's callers. + +2003-09-21 Bertrand Demiddelaer + + * url.c (path_simplify): Would read two bytes past the end of the + string in the "./" case. + +2003-09-21 Matthew J. Mellon + + * http.c (gethttp): Recognize content-type "application/xhtml+xml" + as what Wget considers "text/html". + +2003-09-21 Hrvoje Niksic + + * connect.c (connect_with_timeout): Made timeout type double. + + * options.h (struct options): New members read_timeout, + dns_timeout, and connect_timeout. + Use them. + +2003-09-21 Hrvoje Niksic + + * init.c (simple_atof): New function. + (cmd_time): Use it. + (cmd_bytes): Accept things like "1.5k" and such. Use simple_atof + to parse decimals. + + * retr.c (limit_bandwidth): Adjust each sleep by the error of the + previous one. + +2003-09-21 Hrvoje Niksic + + * main.c (main): Use setoptval() for setting the options. Use + run_command for `-e'. + + * init.c (parse_line): Rewritten to return COMIND right away. + Changed linkage to static. + (run_wgetrc): Use the available comind when calling setval, so it + doesn't have to be computed twice. + (setval_internal): New function, runs the command's action without + any error checking. + (setoptval): New function, does what setval used to do, but exits + in case of error. + (run_command): New function. + +2003-09-21 Hrvoje Niksic + + * connect.c (select_fd): Change MAXTIME's type to double. Handle + its decimal part. + + * retr.c (sleep_between_retrievals): In the random-wait case, use + random_float() to wait between 0 and 2*opt.wait seconds. + + * utils.c (run_with_timeout): Accept `double' timeouts. Correctly + handle timeout values in (0, 1) range. + (random_float): New function. + + * options.h (struct options): Change the types of wait, waitretry, + and timeout to double. + + * init.c (cmd_time): Accept floating point time. + +2003-09-20 Hrvoje Niksic + + * retr.c (get_contents): Cosmetic fixes. + +2003-09-20 Hrvoje Niksic + + * url.c (uri_merge): Get rid of uri_merge_1. + (uri_merge): Merge "foo//", "bar" as "foo//bar", not "foo///bar", + i.e. don't add an extra slash merely because BASE ends with two + slashes. + (parse_credentials): Renamed from parse_uname. Rewrittern in + standard [beg, end) calling style. + (url_skip_credentials): Renamed from url_skip_uname. Made static. + (url_skip_credentials): Include # and ; as terminators. Old code + would mistakenly consider "http://foo.com#hniksic@iskon.hr" to + contain a username. + (url_skip_scheme): Removed because it was unused. + (url_has_scheme): Require "scheme" to be at least one char long. + +2003-09-19 Hrvoje Niksic + + * url.c (url_file_name): Expect NULL dir_prefix. + + * init.c (cmd_file): Use a macro to prevent multiple #ifdef + WINDOWS. + (defaults): Set dir_prefix to NULL by default. + +2003-09-19 Hrvoje Niksic + + * safe-ctype.h (_sch_test): Cast BIT to unsigned char, like latest + gcc does. + +2003-09-19 Hrvoje Niksic + + * wget.h (BOUNDED_TO_ALLOCA): Evaluate PLACE only once. + (ARRAY_SIZE): Renamed to countof. All callers updated. + +2003-09-19 Hrvoje Niksic + + * main.c (main): New option --strict-comments. + + * html-parse.c (find_comment_end): New function: simple BM search + for "-->". + (map_html_tags): Use it if looking at a comment and not in strict + comments mode. + +2003-09-17 Aurelien Marchand + + * ftp.h: Added OS400 system in enum + * ftp-basic.c: recognize OS400 systems + * ftp.c: don't prepend the CWD if talking to OS400, since it + breaks the change in library + +2003-09-18 Hrvoje Niksic + + * retr.c (get_contents): Pass the correct argument to ssl_iread. + +2003-09-18 Hrvoje Niksic + + * safe-ctype.h: Don't #define ctype.h macros to errors because + that loses when someone #include's ctype.h after safe-ctype.h. + +2003-09-17 Hrvoje Niksic + + * url.c: Undef U, W, C after use. + +2003-09-17 Hrvoje Niksic + + * init.c (cmd_spec_restrict_file_names): Allow the OS setting to + be augmented by ",nocontrol" which means don't escape the control + characters, but otherwise keep OS settings. + + * url.c (file_unsafe_char): Deleted. + (append_uri_pathel): Query filechr_table directly. + (filechr_table): Separated Unix, Windows, and control-unsafe + characters. + +2003-09-17 Hrvoje Niksic + + * url.c (url_escape_1): New function. + (url_escape): Use it. + (sync_path): Handle pathological cases where u->file and u->dir + contain really strange characters. + (ENCODE): Deleted. + (REENCODE): Deleted. + +2003-09-16 Hrvoje Niksic + + * url.c (url_file_name): Don't reallocate FNAME if the file + doesn't exist, as is usually the case. + + * utils.c (unique_name): New flag allow_passthrough. + +2003-09-16 Hrvoje Niksic + + * utils.c (wtimer_sys_diff): Convert the time difference to signed + __int64, then to double. This works around MS VC++ 6 which can't + convert unsigned __int64 to double directly. + +2003-09-16 Hrvoje Niksic + + * Makefile.in (clean): Also remove the core. files + produced by recent Linux systems. + +2003-09-16 Hrvoje Niksic + + * http.c (post_file): Don't pad the file if it's not large + enough. Bail out instead. + +2003-09-15 Hrvoje Niksic + + * retr.c (get_contents): Reduce the buffer size to the amount of + data that may pass through for one second. This prevents long + sleeps when limiting bandwidth. + + * connect.c (connect_to_one): Reduce the socket's RCVBUF when + bandwidth limitation to small values is requested. + +2003-09-15 Hrvoje Niksic + + * progress.c (update_speed_ring): Moved the speed ring update to a + separate function and documented it better. + + * progress.c: Use `double' for most timers to support granularity + smaller than 1ms. + +2003-09-15 Hrvoje Niksic + + * wget.h (XDIGIT_TO_XCHAR): Implement as index into a literal + string. + (XDIGIT_TO_xchar): Ditto. + +2003-09-15 Hrvoje Niksic + + * utils.c: Change the type of timer-related functions from long to + double, for better precision. On machines supporting gettimeofday + the timers now work with granularity of less than one millisecond. + +2003-09-15 Hrvoje Niksic + + * cookies.c (parse_set_cookies): Fixed the parser to handle more + edge conditions. + (test_cookies): New function, contains a test suite for + parse_set_cookies. + +2003-09-15 Hrvoje Niksic + + * url.c (strpbrk_or_eos): Implement as a macro under Gcc. + +2003-09-15 Hrvoje Niksic + + * cookies.c (parse_set_cookies): Allow trailing space in + set-cookies header. Also, allow any amount of whitespace, not + only one character. Allow empty set-cookies header without + spewing an error. + +2003-09-14 Hrvoje Niksic + + * url.c (append_uri_pathel): Use opt.restrict_file_names when + calling file_unsafe_char. + + * init.c: New command restrict_file_names. + + * main.c (main): New option --restrict-file-names[=windows,unix]. + + * url.c (url_file_name): Renamed from url_filename. + (url_file_name): Add directory and hostdir prefix here, not in + mkstruct. + (append_dir_structure): New function, does part of the work that + used to be in mkstruct. Iterates over path elements in u->path, + calling append_uri_pathel on each one to append it to the file + name. + (append_uri_pathel): URL-unescape a path element and reencode it + with a different set of rules, more appropriate for handling of + files. + (file_unsafe_char): New function, uses a lookup table to decide + whether a character should be escaped for use in file name. + (append_string): New utility function. + (append_char): Ditto. + (file_unsafe_char): New argument restrict_for_windows, decide + whether Windows file names should be escaped in run-time. + + * connect.c: Include to get prototype for abort(). + +2003-09-14 Hrvoje Niksic + + * utils.c (wtimer_sys_set): Extracted the code that sets the + current time here. + (wtimer_reset): Call it. + (wtimer_sys_diff): Extracted the code that calculates the + difference between two system times here. + (wtimer_elapsed): Call it. + (wtimer_elapsed): Don't return a value smaller than the previous + one, which could previously happen when system time is set back. + Instead, reset start time to current time and note the elapsed + offset for future calculations. The returned times are now + guaranteed to be monotonically nondecreasing. + +2003-09-10 Hrvoje Niksic + + * host.c (lookup_host): Print the result of the DNS lookup. + +2003-09-10 Hrvoje Niksic + + * init.c (cmd_boolean): Accept yes/no along with on/off. + (cmd_lockable_boolean): Ditto. + +2003-09-10 Hrvoje Niksic + + * init.c: New command dns_cache. + + * main.c (main): New option --dns-cache[=off]. + +2003-09-09 Hrvoje Niksic + + * config.h.in: Initialize HAVE_GETADDRINFO and ENABLE_IPV6. + + * all: Use #ifdef ENABLE_IPV6 instead of the older INET6. Use + HAVE_GETADDRINFO for getaddrinfo-related stuff. + +2003-09-09 Hrvoje Niksic + + * url.c (url_parse): Return an error if the URL contains a [...] + IPv6 numeric address and we don't support IPv6. + +2003-09-05 Hrvoje Niksic + + * url.c (is_valid_ipv6_address): Modified to not require + zero-terminated strings. + (is_valid_ipv4_address): Ditto. + +2003-09-05 Mauro Tortonesi + + src/url.c: added RFC 2732 compliance for URL parsing. The + functions is_*_address valid are a modified version of + glibc 2.3.2 inet_pton's code. + +2003-09-03 Ahmon Dancy + + * main.c init.c options.h: Added --retry-connrefused option so + that Connection Refused failures are treated as non-fatal (when + trying to retrieve from busy servers). + + * wget.h: New CONNECT_ERROR macro for encapsulating this + modification. + + * ftp.c http.c : Use CONNECT_ERROR macro in places where + ECONNREFUSED was checked. + +2003-01-11 Ian Abbott + + * ftp.c (ftp_retrieve_glob): Reject insecure filenames as determined + by calling new function has_insecure_name_p. This is based on a + patch by Red Hat. + + * fnmatch.c (has_insecure_name_p): New function: returns non-zero + if filename starts with `/' or contains `../' and is therefore + considered insecure. + + * fnmatch.h: Declare has_insecure_name_p(). + +2002-08-03 Hrvoje Niksic + + * init.c (cmd_file): Allocate RESULT correctly. + +2002-07-24 Hrvoje Niksic + + * recur.c (retrieve_tree): Check whether downloaded_html_set is + non-NULL before using it. + +2002-05-27 Hrvoje Niksic + + * html-parse.c (NAME_CHAR_P): Allow almost any character here. + +2002-05-24 Hrvoje Niksic + + * progress.c (bar_set_params): Fall back to dot progress if the + terminal type is "emacs". + +2002-05-20 Hrvoje Niksic + + * log.c: Don't #undef WGET_USE_STDARG. + +2002-05-16 Hrvoje Niksic + + * hash.c (prime_size): Store the offset of the prime number in the + prime table. When searching, start with the given offset. + (hash_table_new): Pass the pointer to ht->prime_offset to + prime_size. + (grow_hash_table): Ditto. + (prime_size): Make 13 the first prime to make empty hash tables + slightly smaller. + +2002-05-16 Ian Abbott + + * recur.c (download_child_p): Minor optimization to avoid an + unnecessary additional call to schemes_are_similar_p function. + +2002-05-16 Ian Abbott + + * url.c (schemes_are_similar_p): New function to test enumerated + scheme codes for similarity. + + * url.h: Declare it. + + * recur.c (download_child_p): Use it to compare schemes. This + also fixes a bug that allows hosts to be spanned (without the + -H option) when the parent scheme is https and the child's is + http or vice versa. + +2002-05-14 Bill Richardson + + * ftp.c (getftp): Don't ftruncate stdout. + + * http.c (gethttp): Don't ftruncate stdout. + +2002-05-09 Ian Abbott + + * cmpt.c (strptime_internal): Synched with glibc-2.1.3. + (get_number): Ditto. + (get_alt_number): Ditto. + (__isleap): New function-like macro used by strptime. + (day_of_the_week): New function used by strptime. + (day_of_the_year): Ditto. + (__mon_yday): Now shared by mktime and strptime implementations. + +2002-05-08 Hrvoje Niksic + + * cookies.c (check_domain_match): Use match_tail in case + insensitive mode. + + * utils.c (match_tail): Allow the caller to specify case + insensitive mode. + + * cookies.c (store_cookie): When expiry_time is 0, print it as + undefined, not indefinite. + 2002-05-07 Ian Abbott * cookies.c (cookie_jar_process_set_cookie): Do not store