123 Commits

Author SHA1 Message Date
Tim Rühsen
8775506f63 * src/http.c (http_loop): Fix memory leak 2024-06-09 20:00:45 +02:00
Tim Rühsen
567e67afd2 * src/retr.c (retrieve_from_url_list): Fix memory leak 2024-06-09 19:35:30 +02:00
Tim Rühsen
afa979b43f * src/retr.c (retrieve_from_file): Fix memleak 2024-06-02 14:26:01 +02:00
Tim Rühsen
cd643458b4 * src/warc.c (warc_close): Fix memleak 2024-06-02 14:22:17 +02:00
Tim Rühsen
b88ad88253 * src/warc.c (warc_start_new_file): Simplify code 2024-06-02 14:22:12 +02:00
Tim Rühsen
62fffab577 * src/httpc.c (http_loop): Fix memleak 2024-06-02 14:22:03 +02:00
Tim Rühsen
ecb59f2e02 * src/init.c (cleanup): Do not close stdout on exit 2024-06-02 14:21:58 +02:00
Tim Rühsen
42c83d8972 * src/iri.c (do_conversion): Initialize memory from realloc() 2024-06-02 14:20:06 +02:00
Tim Rühsen
bb0aa299e9 * src/warc.c (warc_write_end_record): Check warc_write_ok (fix use-after-free)" 2024-06-02 14:20:00 +02:00
Tim Rühsen
0490e301d4 * src/wget.h (DO_REALLOC): Initialize realloc'ed memory to help valgrind 2024-06-02 14:19:53 +02:00
Tim Rühsen
a582633c97 * src/utils.c (run_with_timeout): Set SIGALRM handler before setjmp() (reported by valgrind) 2024-06-02 14:19:50 +02:00
Tim Rühsen
5fe01167d1 * fuzz/wget_options_fuzzer.c: Fix indentation 2024-06-02 14:19:42 +02:00
Tim Rühsen
ed0c7c7e0e Properly re-implement userinfo parsing (rfc2396)
* src/url.c (url_skip_credentials): Properly re-implement userinfo parsing (rfc2396)

The reason why the implementation is based on RFC 2396, an outdated standard,
is that the whole file is based on that RFC, and mixing standard here might be
dangerous.
2024-06-02 12:40:21 +02:00
Tim Rühsen
bb59ef7fd4 * fuzz/Makefile.am (oss-fuzz): Add -lgmp 2024-05-24 19:20:32 +02:00
Darshit Shah
196ce0abd6 Support continious reading from stdin pipes
Rather than reading from stdin only once, leave the pipe open until the
other end closes it and keep reading from the file after each set of
URLs is read

* src/html-url.h(get_urls_file): Update prototype to add additional
  param
* src/html-url.c(get_urls_file): Pass through read_again to
  wget_read_from_file.
* src/retr.c(retrieve_from_file): Split the function into two. Introduce
  `retrieve_from_url_list` that actually performs the retrieval.
  Also, if `url_list` returns that the fd has been left open, then
  continue reading from it until the fd is closed.
  (retrieve_from_url_list): New function that does the retrieval from
  a list of URLs that was read from a file.
* src/utils.c(wget_read_from_file): Rename old function `wget_read_file`
  to this.
  Accept an additional output parameter that states whether the fd was
  left open and if we should continue reading from it after the current
  set of URLs have been processed
  (wget_read_file): Write it as a new wrapper function around
  `wget_read_from_file` to maintain API comptability across other users
2024-05-12 17:57:30 +02:00
Tim Rühsen
ca10f20aaf * gnulib: Update 2024-04-27 19:25:00 +02:00
Tim Rühsen
f6291c33cd Update gnulib link libraries
* fuzz/Makefile.am: Update gnulib link libraries.
* src/Makefile.am: Likewise.
* tests/Makefile.am: Likewise.
2024-04-20 16:19:51 +00:00
Sam James
5f0aa59239 Fix libproxy build with --disable-debug
The definition of debug_logprintf in src/log.c is guarded by ENABLE_DEBUG
(although its prototype is unconditionally available in src/log.h).

The uses of debug_logprintf in src/retr.c aren't guarded by ENABLE_DEBUG.

Use the DEBUGP macro which is designed for this purpose.

* src/retr.c (getproxy): Use DEBUGP macro.

Fixes: https://gitlab.com/gnuwget/wget/-/issues/19
Copyright-paperwork-exempt: Yes
2024-04-16 02:23:56 +00:00
Darshit Shah
1c934e67de Add a new testcase for pathconf truncation
* testenv/Test-recursive-pathmax.py: Add a new testcase. This test tries
  to check that Wget allows downloading long filenames as far as allowed
  by the OS and filesystem.
2024-03-16 19:14:57 +01:00
Darshit Shah
903373a83c * contrib/make-release: Automatically build and update online documentation 2024-03-11 23:46:36 +01:00
Darshit Shah
480e9d6efd * contrib/make-release: More minor fixes 2024-03-10 15:21:08 +01:00
Darshit Shah
637e58ad50 maint: post-release administrivia
* NEWS: Add header line for next release.
* .prev-version: Record previous version.
* cfg.mk (old_NEWS_hash): Auto-update.
2024-03-10 15:10:58 +01:00
Darshit Shah
dad28423c6 version 1.24.5
* NEWS: Record release date.
2024-03-10 15:08:04 +01:00
Darshit Shah
fdb4ae8ffe * contrib/make-release: Some more release management 2024-03-10 15:05:53 +01:00
Darshit Shah
999700ac5f * NEWS: Update the noteworthy NEWS 2024-03-10 11:25:53 +01:00
Darshit Shah
c9cc2e1d24 * bootstrap.conf: Organize alphabetically 2024-03-10 11:10:06 +01:00
Darshit Shah
a3158065a3 * gnulib: Update to the latest version 2024-03-10 11:03:33 +01:00
Tim Rühsen
e54a1f910e Remove obsolete Travis CI files
* .travis.yml: Remove.
* contrib/travis-ci: Remove.
2024-03-03 17:46:42 +01:00
Tim Rühsen
b32cc7afe0 Fix HSTS matching
* src/hsts.c (hsts_find_entry): Check for includeSubdomains,
  (test_hsts_new_entry): Fix test,
  (test_hsts_url_rewrite_superdomain): Improve test.

Reported-by: Hanno Böck <hanno@hboeck.de
2024-02-24 19:12:59 +01:00
Darshit Shah
3aa53a6220 Delete some redundant tests
* tests/Makefile.am: Remove some tests that are redundant with the
  Python testenv
* tests/Test-auth-basic.px: Delete file
* tests/Test-auth-no-challenge.px: Same
* tests/Test-auth-no-challenge-url.px: Same
* tests/Test-auth-retcode.px: Same
* tests/Test-auth-with-content-disposition.px: Same
* tests/Test-k.px: Same
2024-02-19 19:23:25 +05:30
Darshit Shah
0e0cdc2409 * Makefile.am: Ignore some lcov errors, allowing the tests to run through 2024-02-19 19:21:03 +05:30
Darshit Shah
84a75ace88 * README: Add a link to the COPYING file to meet the GNU Coding Standards 2024-02-19 18:43:12 +05:30
Darshit Shah
35204ab5d7 * bootstrap: Update script from gnulib 2024-02-19 18:37:51 +05:30
Darshit Shah
e377b80863 * gnulib: Update gnulib 2024-02-19 18:35:26 +05:30
Darshit Shah
f973f4857a * Update copyright year to 2024 2024-02-19 18:33:43 +05:30
Darshit Shah
f4da5456c2 Add tests for --convert-links option
* testenv/Makefile.am: Add two new tests, Test-k.py and Test-https-k.py
* testenv/Test-k.py: New file. Add a test based on tests/Test-k.px
* testenv/Test-https-k.py: New file. Add a new test to ensure that the
  protocol of the original host URL is retained when creatign absolute
  links.

This test is added as a result of an issue reported on StackExchange:
https://superuser.com/questions/1348940/making-wgets-convert-links-respect-http-vs-https
2024-02-19 18:27:38 +05:30
Darshit Shah
dfb9f65fc3 * testenv/conf/expected_files.py: Aesthetic changes only. Format file with black 2024-02-19 18:27:32 +05:30
Darshit Shah
642e740182 * testenv/conf/expected_files.py: Nicer diff printing on error 2024-02-19 18:27:19 +05:30
Darshit Shah
28009a048f * SECURITY.md: Add a file stating how to report security issues 2024-02-18 17:07:19 +05:30
Tim Rühsen
4100339a2b Parse 'srcset' HTML attr for 'source' HTML tag.
* src/html-url.c (struct known_tag): Use tag_handle_img() for 'source' tag.
* testenv/Test-recursive-include.py: Extend test.
2024-01-27 19:50:13 +01:00
Tim Rühsen
bedeb7dc27 * src/netrc.c (parse_netrc_fp): Add fetchmail compatibility (user and passwd)
Reported-by: Gerald Pfeifer <gerald@pfeifer.com>
2023-11-26 19:06:11 +01:00
Tim Rühsen
25525f8037 Fix confusing 'Cannot write to ... (Success)' message
* src/http.c (gethttp): Store/restore errno value.

Reported-by: Christian Rosentreter, Andries E. Brouwer
2023-10-22 14:01:09 +02:00
Jan-Michael Brummer
8e8900613c Add libproxy support
Add support for libproxy, which is capable to extract desktop
environment proxy configurations from dozens of systems and platforms.
This also enables wget to handle pac/wpad proxy server.

* configure.ac: Add check for libbproxy.
* src/retr.c (getproxy): Retrieve proxy via libproxy.

Copyright-paperwork-exempt: Yes
2023-10-20 18:08:01 +02:00
Tim Rühsen
73d24b2779 * src/retr.c: Fix sc_prohibit_empty_lines_at_EOF 2023-08-03 11:32:09 +02:00
Tim Rühsen
04ab356669 Fix crash when printing download rate
If the download rate is TB/s, a read buffer overflow happended
that either caused a crash or printed whatever string was pointed to.

* src/retr.c (retr_rate): Add missing array entrie for TB/s and Tb/s,
  (test_retr_rate): New test function.
* tests/unit-tests.c (all_tests): Run test 'test_retr_rate'.
* tests/unit-tests.h: Add prototype for test_retr_rate.

Reported-by: Wiebe Cazemier <wiebe@halfgaar.net>
2023-08-03 11:19:41 +02:00
Christian Weisgerber
4d99bb1ff1 * tests/Makefile.am: Remove './' from for portability (OpenBSD)
Copyright-paperwork-exempt: Yes
2023-08-03 10:39:56 +02:00
Yaakov Selkowitz
9c8668048d testenv: fix for Python 3.12
* testenv/server/http/http_server.py (HTTPSServer): Update for
  ssl.SSLContext APIs instead of deprecated ssl.wrap_socket().

ssl.wrap_socket() was deprecated in 3.7 and removed in 3.12.
This should be compatible back to 3.6 (RHEL 8 and newer).

Copyright-paperwork-exempt: Yes
2023-07-16 14:08:30 +02:00
Tim Rühsen
3583fa0c61 * src/url.c (test_uri_merge): Fix check 2023-07-01 18:20:32 +02:00
Tim Rühsen
834d090bf6 Add new unit test test_uri_merge()
* src/url.c: New test function test_uri_merge().
* tests/unit-tests.c (tests/unit-tests.c): Call test_uri_merge().
* tests/unit-tests.h (tests/unit-tests.h): Declare test_uri_merge().
2023-07-01 18:14:00 +02:00
Darshit Shah
fbbdf9ea01 Ensure that spaces are quoted when converting links
* src/convert.c(convert_links): Print the actual quoted newname when printing DEBUG output
  (local_quote_string): Also quote the ' ' charcter as %20. While it is okay
  to leave the characted as-is, quoting it covers more edge cases.
  And it should resolve a >10 year old bug with CSS url() parameters not being quoted

Bug-Id: 64082
Reported-By: Ethan Gibbs <ethan@snowsign.net>
Discussed-At: https://stackoverflow.com/q/13300017
2023-05-16 18:46:19 +02:00
Darshit Shah
5409cbcee2 Add new test to ensure CSS url() encoding
url() parameters in CSS cannot have spaces in them. Ensure that Wget does not do that
when using --convert-links

* testenv/test_css_url.py: New file
* testenv/Makefile: Add test_css_url.py to tests

Bug-Id: 64082
2023-05-16 00:11:25 +02:00
Darshit Shah
0fea7bc076 Automatically verify if commit author has assigned copyrights in the past
* contrib/commit-check: Add new script
* .gitlab-ci.yml: Add new test in the CI pipeline
2023-05-14 21:55:01 +02:00
Jan Palus
6ca59f4d60 * testenv/conf/expected_files.py: Ignore common.conf
Copyright-paperwork-exempt: Yes
2023-05-14 21:55:01 +02:00
Darshit Shah
27a832aee9 * AUTHORS: Rework file to prepare for autmated testing 2023-05-14 21:55:01 +02:00
Darshit Shah
719ab50a18 maint: post-release administrivia
* NEWS: Add header line for next release.
* .prev-version: Record previous version.
* cfg.mk (old_NEWS_hash): Auto-update.
2023-05-11 03:02:48 +02:00
Darshit Shah
76ab37bff9 contrib/make-release: Update regexes to match the NEWS file 2023-05-11 02:22:45 +02:00
Darshit Shah
774705838f cfg.mk: Replace uses of filesystem with file system 2023-05-11 01:03:23 +02:00
Darshit Shah
e234354080 Update NEWS 2023-05-11 00:48:44 +02:00
Darshit Shah
3a5ca80a1a bootstrap.sh: Update script from gnulib 2023-05-10 23:59:55 +02:00
Darshit Shah
c3fadea0a8 gnulib: Pull forward 2023-05-10 23:57:52 +02:00
jinfuchiang
2b723806a5 Update deprecated option '--html-extension' to '--adjust-extension'
* doc/wget.texi: Update option '--html-extension' to '--adjust-extension'.
  Renamed in Wget 1.12 to better reflect its behavior.

Copyright-paperwork-exempt: Yes
2023-04-09 20:29:07 +02:00
Tim Rühsen
9a35fe609c Don't write core dump if --secure-option value isn't suppported. 2023-03-19 17:39:45 +00:00
Tim Rühsen
d96d20630b * src/retr.c (fd_read_body): Increase bufsize from 8k to 64k 2023-02-18 17:26:23 +01:00
Tim Rühsen
c77c95033a * src/retr.c (fd_read_body): Simplify gzip initialization 2023-02-18 17:26:23 +01:00
Tim Rühsen
af1100f299 * src/retr.c (fd_read_body): Use MAX instead of max 2023-02-18 17:26:23 +01:00
Tim Rühsen
77929eda1b Simplify url_error function.
* src/url.c (url_error): simplify, remove url arg, return const char *.
* src/url.h (url_error): remove url arg, return const char *.
* src/html-url.c (get_urls_file): Simplify call to url_error(),
  remove call to free().
* src/http.c (metalink_from_http): Likewise.
* src/main.c (main): Likewise.
* src/metalink.c (retrieve_from_metalink, fetch_metalink_file): Likewise.
* src/recur.c (retrieve_tree): Likewise.
* src/res.c (res_retrieve_file): Likewise.
* src/retr.c (retrieve_url, retrieve_from_file): Likewise.
2023-02-18 17:25:56 +01:00
Tim Rühsen
218f6fee30 * src/url.c: Refactored url_error() 2023-02-18 17:25:56 +01:00
Tim Rühsen
2339d79b05 * tests/valgrind-suppressions: Add rule for 'strcmp-sse2.S in libdl.so' 2023-02-18 17:25:56 +01:00
Tim Rühsen
dcd2ed739e * configure.ac: Remove CC flags -Wc90-c99-compat and -Wlong-long 2023-02-17 14:00:02 +01:00
Tim Rühsen
24e876357a * fuzz/*: Use grep >/dev/null instead of grep -q 2023-02-17 13:46:58 +01:00
Tim Rühsen
8247a34521 * src/retr.c: Don't include hash.h 2023-02-17 13:46:58 +01:00
Tim Rühsen
4223996930 Update copyright years 2023-02-17 13:46:58 +01:00
Tim Rühsen
27d3fcba33 * gnulib: Update 2023-02-17 13:46:58 +01:00
Tim Rühsen
c69030a904 * configure.ac: Disable nettle if NTLM is explicitly disabled 2022-12-11 13:31:38 +01:00
Tim Rühsen
485217d0ff * configure.ac: Allow disabling NTLM if nettle present (Savannah #63431) 2022-12-10 16:43:38 +01:00
Tim Rühsen
9835085544 * fuzz/Makefile.am: Add -lz to fuzzer libs 2022-09-24 18:41:31 +02:00
Tim Rühsen
aab539bb44 * src/main.c (print_help): Add --retry-on-host-error to help text 2022-03-20 21:07:54 +01:00
Tim Rühsen
cb114fbbf7 Fix HSTS portability by using int64_t instead of time_t.
* src/hsts.c: Use int64_t instead of time_t.
* src/http.c: Use int64_t for parsing Strict-Transport-Security.
2022-03-20 20:57:10 +01:00
Tim Rühsen
1cda2bb5d5 src/http.c (time_to_rfc1123): Fix -Wformat-nonliteral 2022-03-20 20:53:10 +01:00
Tim Rühsen
565f566fab * src/warc.c (warc_process_cdx_line): Fix variable type to idx_t 2022-03-20 20:49:07 +01:00
Tim Rühsen
c7e6e378e5 * src/main.c (secs_to_human_time): Use snprintf instead of sprintf 2022-03-20 20:45:59 +01:00
Tim Rühsen
59d08d3290 * src/main.c (main): Remove unused variable 2022-03-20 20:44:32 +01:00
Tim Rühsen
8d5cdef9a9 * src/netrc.c (test_parse_netrc): Check if HAVE_FMEMOPEN is defined 2022-03-20 15:57:21 +01:00
Darshit Shah
9f93ffb44b maint: post-release administrivia
* NEWS: Add header line for next release.
* .prev-version: Record previous version.
* cfg.mk (old_NEWS_hash): Auto-update.
2022-02-26 17:27:55 +01:00
Darshit Shah
40747a11e4 * NEWS: Update NEWS items for release 2022-02-26 17:20:26 +01:00
Darshit Shah
b6f3c6153e * .gitignore: Remove empty line at EOF 2022-02-26 17:02:26 +01:00
Darshit Shah
e1fa51206c * .gitignore: Update file 2022-02-26 16:54:51 +01:00
Darshit Shah
6d4a4e56c8 * src.hsts.c(hsts_read_database): Use SCNd64 for portable format flags 2022-02-26 16:51:21 +01:00
Darshit Shah
14a7f68f46 * configure.ac: Add some warning flags to ignore 2022-02-26 16:50:48 +01:00
Darshit Shah
ccc7866fea * cfg.mk: Remove passing syntax-checks from skip list 2022-02-26 16:24:57 +01:00
Darshit Shah
2730a00c0d Fix issues from syntax-check
* doc/wget.texi: s/time stamp/timestamp/
* src/ftp-ls.c(clean_line): Same
  (ftp_parse_vms_ls): Don't cast return value of x*alloc
* src/ftp.c: Don't cast return value of alloca
* src/css-url.c: wget.h should be the first include
* testenv/Makefile.am: Use $(PATH_SEPARATOR) instead of : when declaring
  a path
* testenv/Test-no_proxy-env.py: s/can not/cannot/
2022-02-26 16:20:30 +01:00
Darshit Shah
be936bda56 * Update Copyright years 2022-02-26 15:49:52 +01:00
Darshit Shah
7ba0a44939 * bootstrap: Update script 2022-02-26 15:45:03 +01:00
Darshit Shah
98c23153a2 * gnulib: Pull forward 2022-02-26 15:45:02 +01:00
Darshit Shah
3a470a90f2 Cleanup some incorrect uses of AM Conditionals
* configure.ac: Replace IRI_IS_ENABLED with WITH_IRI and
      METALINK_IS_ENABLED with WITH_METALINK
    * src/Makefile.am: Add the .c and .h files for IRI, Metalink and
      Xattr support to wget_SOURCES directly when needed instead of
      adding them as object files.
    * testenv/Makefile.am: Rename METALINK_IS_ENABLED to WITH_METALINK
2022-02-26 15:45:02 +01:00
Darshit Shah
f5263969fa Replace incorrect usage of AC_LIBOBJ in configure.ac
AC_LIBOBJ is to be used for providing replacement functions for
compatibility reasons. Not for conditional compilation of entire source
files. Autotools provides other methods for achieving that. However, our
build system has (ab-)used the AC_LIBOBJ macros for doing this for over
15 years. That stops today.

    * configure.ac: Replace uses of AC_LIBOBJ with automake conditionals
      that can be used in Makefiles
    * src/Makefile.am: Use the defined conditionals to select which
      files get built.
2022-02-26 15:20:29 +01:00
Darshit Shah
cc5ec2a158 Fix case where installed gettext is newer than minimum version
* configure.ac: Use AM_GNU_GETTEXT_REQUIRE_VERSION to specify a minimum
  version of gettext needed. This should allow newer versions of gettext
  to be copied for autipoint to use when available.

This commit hopefully fixes the annoying issue when building from
source on a system that has a newer version of gettext.
2022-02-25 17:25:30 +01:00
Tim Rühsen
f7ce79fd85 * src/netrc.c (test_parse_netrc): Free netrc structure 2022-02-13 18:00:07 +01:00
Tim Rühsen
d139fecbe8 * .gitlab-ci.yml: Fix path to llvm-symbolizer 2022-02-13 17:57:39 +01:00
Tim Rühsen
74a9d9e7c4 * src/netrc.c (test_parse_netrc): New unit test function 2022-02-13 17:28:02 +01:00
Aarni Koskela
446afdca21 * src/http.c (parse_strict_transport_security): Fix typo in string
Copyright-paperwork-exempt: Yes
2022-01-31 18:01:51 +01:00
Tim Rühsen
e6fa409a4d * .gitlab-ci.yml (Scan-Build): Allow failure due to two false positives 2022-01-23 14:10:49 +01:00
Tim Rühsen
a24e67e239 * configure.ac: Use pkg-config for gpgme, libidn2 and nettle 2022-01-23 14:10:49 +01:00
Tim Rühsen
c984cb316a * src/ftp.c: Small cleanups 2022-01-22 19:53:26 +01:00
Nik Soggia
35a6317b99 Print newline after dot progress bar in non-verbose mode
* src/progress.c (dot_finish): Print new in all progress bar contexts
  instead of just verbose

Copyright-paperwork-exempt: Yes
2022-01-16 00:01:39 +01:00
Tim Rühsen
9474a2c6f4 * .gitlab-ci.yml: Fix artifact path for the Scan-Build runner 2022-01-12 22:10:01 +01:00
Tim Rühsen
e7a4d818fa * src/main.c (main): Unlink output document when --unlink is given 2022-01-09 18:58:41 +01:00
Tim Rühsen
f354529708 fuzz/*.in: Update fuzzer corpora 2021-12-22 19:49:24 +01:00
Tim Rühsen
67d4cb3ab6 * .gitlab-ci.yml (CoverageReports): Fix artifacts paths 2021-12-22 17:00:47 +01:00
Tim Rühsen
d2af84fbb3 * tests/valgrind-suppressions: Fix libidn rule 2021-12-22 14:32:50 +01:00
Tim Rühsen
bfb5bedf7d * .gitlab-ci.yml: Fix artifacts paths 2021-12-22 14:29:00 +01:00
Tim Rühsen
8c5a620f0f * tests/valgrind-suppressions: Extend libidn rule 2021-12-22 14:01:47 +01:00
Tim Rühsen
c34c2529dc * src/log.c (logprintf): Check earlier for verbosity 2021-12-22 13:07:23 +01:00
Tim Rühsen
c7a37d82ee * src/http.c (http_loop): Fix memleak 2021-12-22 13:06:34 +01:00
Tim Rühsen
c81042295e Switch fuzzing build from C++ to C
* Makefile.am (oss-fuzz): Build with $CC instead of $CXX.
* README.md: Remove CXX and CXXFLAGS exports.
2021-12-21 19:20:52 +01:00
Darshit Shah
f75fcf2985 * src/http.c (http_loop): Hide password when printing status with -nv
Reported-By: Per Lundberg <perlun@gmail.com>
Closes: #61492
2021-12-01 23:38:52 +01:00
Darshit Shah
22611a77ba * gnulib: Pull forward 2021-12-01 23:03:56 +01:00
Darshit Shah
e1bacd2fa5 * src/hsts.c (hsts_read_database): Read time_t values as long long 2021-12-01 22:42:42 +01:00
Thomas Niederberger
faeb4d90c2 * src/main.c (print_help): Add command line option for TLS 1.3 2021-12-01 22:17:11 +01:00
Darshit Shah
65e6d5b3b8 * retr.c (rotate_backups): Non existent files are not errors in this function 2021-10-11 23:06:38 +02:00
Darshit Shah
aecf5fbf1b * ftp.c (ftp_loop_internal): Fix computation of total_downloaded_bytes
When continuing a FTP download, or not starting one because the file is
already fully retrieved, don't include the size of the file in the
total_downloaded_bytes. Only the actual amount of data retrieved over
the network should be considered there.

Fixes: #61277
Reported-By: Michal Ruprich <formaiko>
2021-10-08 20:37:51 +02:00
Darshit Shah
3ea9658c07 Remove suprious print statements
* src/gnutls.c: Remove fprintf statements. We should never print to
  console directly. Always honor the log levels.
  Fixes: #61125
2021-09-08 17:52:32 +02:00
Darshit Shah
31b82825a2 maint: post-release administrivia
* NEWS: Add header line for next release.
* .prev-version: Record previous version.
* cfg.mk (old_NEWS_hash): Auto-update.
2021-09-07 21:04:48 +02:00
2378 changed files with 10339 additions and 4845 deletions

5
.gitignore vendored
View File

@@ -1,7 +1,6 @@
/ABOUT-NLS~
# Project Root
/.sc-start-sc_bindtextdomain
/.sc-start-sc_prohibit_HAVE_MBRTOWC
/.sc-start-*
/.version
/ABOUT-NLS
/GNUmakefile
@@ -18,6 +17,7 @@
!/lib/Makefile.am
/maint.mk
/gnulib_po/
/aminclude_static.am
# Wildcard Ignores
*~
po/*.gmo*
@@ -54,6 +54,7 @@ doc/version.texi
doc/wget.1
doc/wget.info
doc/wget.pod
doc/.gitignore
# m4/
m4/.gitignore
m4/gnulib-cache.m4

View File

@@ -41,6 +41,17 @@ variables:
CONFIGURE_BASE_FLAGS: --enable-assert --cache-file cache/config.cache
CFLAGS_DEFAULT: -O0 -g -ggdb3
CommitCheck:
stage: test-from-git
image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$DEBIAN_TESTING_BUILD
script:
- ./contrib/commit-check
allow_failure: true
cache:
paths:
policy: push
# Create the tarball in a separate build directory (VPATH).
Build-Tarball:
stage: test-from-git
@@ -251,10 +262,10 @@ TLS/OpenSSL:
expire_in: 2 weeks
when: on_failure
paths:
- ./*.log
- fuzz/*.log
- tests/*.log
- testenv/*.log
- wget-*/./*.log
- wget-*/fuzz/*.log
- wget-*/tests/*.log
- wget-*/testenv/*.log
TLS/GnuTLS:
stage: test-from-tarball
@@ -282,10 +293,10 @@ TLS/GnuTLS:
expire_in: 2 weeks
when: on_failure
paths:
- ./*.log
- fuzz/*.log
- tests/*.log
- testenv/*.log
- wget-*/./*.log
- wget-*/fuzz/*.log
- wget-*/tests/*.log
- wget-*/testenv/*.log
Sanitizers:
stage: test-from-tarball
@@ -300,7 +311,7 @@ Sanitizers:
- export CFLAGS="$CFLAGS_DEFAULT"
- export CC="ccache clang"
- export UBSAN_OPTIONS=print_stacktrace=1
- export ASAN_SYMBOLIZER_PATH=/usr/lib/llvm-8/bin/llvm-symbolizer
- export ASAN_SYMBOLIZER_PATH=/usr/bin/llvm-symbolizer
# - export LSAN_OPTIONS=suppressions="$PWD/tests/clang-asan-suppressions"
- ./configure $CONFIGURE_BASE_FLAGS --cache-file ../cache/config.cache
--enable-fsanitize-asan --enable-fsanitize-ubsan
@@ -317,10 +328,10 @@ Sanitizers:
expire_in: 2 weeks
when: on_failure
paths:
- ./*.log
- fuzz/*.log
- tests/*.log
- testenv/*.log
- wget-*/./*.log
- wget-*/fuzz/*.log
- wget-*/tests/*.log
- wget-*/testenv/*.log
Scan-Build:
stage: test-from-tarball
@@ -349,6 +360,8 @@ Scan-Build:
when: on_failure
paths:
- scan-build/
# scan-build reports two false positives that we can't suppress
allow_failure: true
CoverageReports:
stage: test-from-tarball

View File

@@ -1 +1 @@
1.21.1
1.24.5

View File

@@ -1,51 +0,0 @@
sudo: no
dist: trusty
language: c
compiler:
- gcc
notifications:
email:
recipients:
- darnir@gmail.com
- wget-dev@gnu.org
on_success: change
on_failure: always
env:
global:
- PERLLIB=$PERLLIB:../../tests
- PERL5LIB=$PERL5LIB:../../tests
matrix:
- SSL=""
- SSL="openssl"
- SSL="gnutls"
addons:
apt:
packages:
- automake
- autoconf
- autopoint
- flex
- texinfo
- pkg-config
- libgnutls-dev
- libssl-dev
- make
- libhttp-daemon-perl
- libio-socket-ssl-perl
- libidn2-dev
- gettext
- texlive
- python3
- valgrind
- language-pack-tr
- language-pack-ru
script:
- make distclean || true
- ./bootstrap
- ./contrib/travis-ci $SSL

410
AUTHORS
View File

@@ -1,62 +1,366 @@
Authors of GNU Wget.
Thank you very much for spending your time !
[ Note that this file does not attempt to list all the contributors to
Wget; look at the ChangeLogs for that. This is a list of people who
contributed sizeable amounts of code and assigned the copyright to
the FSF. ]
Hrvoje Niksic. Designed and implemented Wget.
This list of contributors is maintained in
(more or less) the order of date of first commit.
Those with the "ASSGN" tag have assigned the copyrights
of their patches to the FSF.
Gordon Matzigkeit. Wrote netrc.c and netrc.h.
The list was generated on 14.05.23 by parsing the ChangeLog
file until 2014 and the git commit history after that.
Darko Budor. Wrote initial support for Windows, wrote wsstartup.c,
wsstartup.h and windecl.h. (The files were later renamed, but his
code and ideas remained present.)
Current Maintainers:
Junio Hamano. Added support for FTP Opie and HTTP digest
authentication.
[ASSGN] Darshit Shah *darnir [at] gnu.org*
[ASSGN] Tim Rühsen *tim.ruehsen [at] gmx.de*
Dan Harkless. Added --backup-converted, --follow-tags, --html-extension,
--ignore-tags, and --page-requisites; improved documentation; etc. Was
the principle maintainer of GNU Wget for some time.
Contributors:
Christian Fraenkel. Initially implemented SSL support.
Thomas Lussnig. Initially implemented IPv6 support.
Ian Abbott. Contributed bugfixes, Windows-related fixes, provided a
prototype implementation of the new recursive code, and more.
Co-maintained Wget during the 1.8 release cycle.
Gisle Vanem. Contributed Windows and MS-DOS improvements, including a
port of run_with_timeout to Windows, additions to Makefiles, and many
bug reports and fixes.
Mauro Tortonesi. Improved IPv6 support, adding support for dual
family systems. Refactored and enhanced FTP IPv6 code. Maintained GNU
Wget from 2004-2007.
Nicolas Schodet. Contributed to cookie code and documentation.
Daniel Stenberg. NTLM authentication in http-ntlm.c and http-ntlm.h
originally written for curl donated for use in GNU Wget.
Micah Cowan. Maintained Wget from mid-2007 to mid-2010.
Ralf Wildenhues. Contributed patches to convert Wget to use Automake as
part of its build process, and various bugfixes.
Steven Schubiger. Many helpful patches, bugfixes and improvements.
Notably, conversion of Wget to use the Gnulib quotes and quoteargs
modules, and the addition of password prompts at the console, via the
Gnulib getpasswd-gnu module.
Ted Mielczarek. Support for parsing links from CSS.
Saint Xavier. Support for IRIs (RFC 3987).
Giuseppe Scrivano. Added support for HTTP/1.1. Active Wget Maintainer from 2010-2015.
Tim Ruehsen. Active Wget Maintainer / Developer from 2012-2020.
Darshit Shah. Active Wget Maintainer / Developer from 2013-2020.
[ASSGN] Hrvoje Niksic *hniksic [at] srce.hr*
Designed and implemented Wget.
[ ] Hrvoje Lacko *hlacko [at] fly.cc.fer.hr*
[ ] Antonio Rosella *antonio.rosella [at] agip.it*
[ ] Drazen Kacar *dave [at] fly.cc.fer.hr*
[ ] Tage Stabell-Kulo *tage [at] acm.org*
[ ] Shawn McHorse *riffraff [at] txdirect.net*
[ ] Mark Boyns *boyns [at] sdsu.edu*
[ ] Dieter Baron *dillo [at] danbala.tuwien.ac.at*
[ ] Gregor Hoffleit *flight [at] mathi.uni-heidelberg.DE*
[ ] Kaveh R. Ghazi *ghazi [at] caip.rutgers.edu*
[ASSGN] Gordon Matzigkeit *gord [at] gnu.ai.mit.edu*
Wrote netrc.c and netrc.h.
[ASSGN] Darko Budor *dbudor [at] zems.fer.hr*
Wrote initial support for Windows, wrote wsstartup.c,
wsstartup.h and windecl.h.(The files were later renamed,
but his code and ideas remained present.)
[ ] Roger Beeman *beeman [at] cisco.com*
[ ] Marin Purgar *pmc [at] asgard.hr*
[ ] gilles Cedoc *gilles [at] cedocar.fr*
[ ] Karl Eichwalder *ke [at] ke.Central.DE*
[ ] Fila Kolodny *fila [at] ibi.com*
[ ] Andreas Schwab *schwab [at] issan.informatik.uni-dortmund.de*
[ ] Mike Thomas *mthomas [at] reality.ctron.com*
[ ] Francois Pinard *pinard [at] iro.umontreal.ca*
[ ] Jordan Mendelson *jordy [at] wserv.com*
[ ] Karl Heuer *kwzh [at] gnu.org*
[ ] Andy Eskilsson *andy.eskilsson [at] telelogic.se*
[ ] Karl Eichwalder *ke [at] suse.de*
[ ] Simon Josefsson *jas [at] pdc.kth.se*
[ ] Karl Eichwalder *karl [at] suse.de*
[ASSGN] Junio Hamano *junio [at] twinsun.com*
Added support for FTP Opie and HTTP digest authentication.
[ ] Tim Adam *tma [at] osa.com.au*
[ ] Wanderlei Cavassin *cavassin [at] conectiva.com.br*
[ASSGN] Jan Prikryl *prikryl [at] cg.tuwien.ac.at*
[ ] John *john [at] futuresguide.com*
[ ] Tim Charron *tcharron [at] interlog.com*
[ ] Robert Schmidt *rsc [at] vingmed.no*
[ ] Stefan Hornburg *racke [at] gundel.han.de*
[ ] Giovanni Bortolozzo *borto [at] dei.unipd.it*
[ ] Gregor Hoffleit *flight [at] mathi.uni-heidelberg.de*
[ ] Douglas E. Wegscheid *wegscd [at] whirlpool.com*
[ ] Toomas Soome *tsoome [at] ut.ee*
[ ] Simos KSenitellis *simos [at] teiath.gr*
[ ] Juan Jose Rodriguez *jcnsoft [at] jal1.telmex.net.mx*
[ ] Dominique Delamarre *dominique.delamarre [at] hol.fr*
[ ] Martin Kraemer *Martin.Kraemer [at] mch.sni.de*
[ ] Mathieu Guillaume *mat [at] cythere.com*
[ ] Alexander Kourakos *awk [at] bnt.com*
[ ] Dave Love *d.love [at] dl.ac.uk*
[ ] Heinz Salzmann *heinz.salzmann [at] intermetall.de*
[ ] Adam D. Moss *adam [at] foxbox.org*
[ ] Howard Gayle *howard [at] fjst.com*
[ ] Hans Grobler *grobh [at] conde.ee.sun.ac.za*
[ ] Szakacsits Szabolcs *szaka [at] sienet.hu*
[ ] Simon Munton *simonm [at] m4data.co.uk*
[ ] Edward J. Sabol *sabol [at] alderaan.gsfc.nasa.gov*
[ ] "R. K. Owen" *rkowen [at] Nersc.GOV*
[ ] Alexander V. Lukyanov *lav [at] yars.free.net*
[ ] andrew deryabin *djsf [at] softhome.net*
[ ] Heiko Herold *Heiko.Herold [at] previnet.it*
[ ] Dan Berger *dberger [at] ix.netcom.com*
[ ] Charles G Waldman *cgw [at] fnal.gov*
[ ] Damir Dzeko *ddzeko [at] zesoi.fer.hr*
[ASSGN] Dan Harkless *wget [at] harkless.org*
Added --backup-converted, --follow-tags, --html-extension,
--ignore-tags, and --page-requisites;
improved documentation; etc. Was the principle maintainer
of GNU Wget for some time.
[ ] Daniel S. Lewart *d-lewart [at] uiuc.edu*
[ ] HIROSE Masaaki *hirose31 [at] t3.rim.or.jp*
[ ] Const Kaplinsky *const [at] ce.cctpu.edu.ru*
[ ] John Daily *jdaily [at] cyberdude.com*
[ ] Adrian Aichner *adrian [at] xemacs.org*
[ ] Matthew Seaman *m.seaman [at] inpharmatica.co.uk*
[ ] Tyler Riddle *triddle [at] liquidmarket.com*
[ ] John Summerfield *summer [at] OS2.ami.com.au*
[ ] Csaba Raduly *csaba.raduly [at] sophos.com*
[ ] Igor Khristophorov *igor [at] atdot.org*
[ ] Adrian Aichner *Adrian.Aichner [at] t-online.de*
[ ] Jonas Jensen *bones [at] huleboer.dk*
[ ] Tim Mooney *mooney [at] dogbert.cc.ndsu.NoDak.edu*
[ ] Hack Kampbjørn *hack [at] hackdata.com*
[ ] Philipp Thomas *pthomas [at] suse.de*
[ ] Nicolas Lichtmaier *nick [at] debian.org*
[ ] KOJIMA Hajime *kjm [at] rins.ryukoku.ac.jp*
[ ] Paul Bludov *paul [at] ozero.net*
[ ] Trond Eivind Glomsrod *teg [at] redhat.com*
[ASSGN] Ian Abbott *abbotti [at] mev.co.uk*
Contributed bugfixes, Windows-related fixes, provided a
prototype implementation of the new recursive code, and more.
Co-maintained Wget during the 1.8 release cycle.
[ASSGN] Maciej W. Rozycki *macro [at] ds2.pg.gda.pl*
[ ] R.I.P. Deaddog *maddog [at] linuxhall.org*
[ ] Adam J. Richter *adam [at] yggdrasil.com*
[ ] Dave Turner *dct25 [at] hermes.cam.ac.uk*
[ASSGN] Christian Fraenkel *c.fraenkel [at] gmx.net*
Initially implemented SSL support.
[ ] Daniel BODEA *dali [at] dali-designs.com*
[ ] Alan Eldridge *alane [at] geeksrus.net*
[ ] Chris Seawood *cls [at] seawood.org*
[ ] Peter Farmer *peter.farmer [at] zveno.com*
[ ] Jochen Hein *jochen [at] jochen.org*
[ ] Lemble Gregory *gregory.lemble [at] st.com*
[ ] Ingo T. Storm *tux-sparc [at] computerbild.de*
[ ] T. Bharath *TBharath [at] responsenetworks.com*
[ ] Andre Majorel *amajorel [at] teaser.fr*
[ ] Christian Lackas *delta [at] lackas.net*
[ ] Andreas Damm *andreas-sourceforge [at] radab.org*
[ ] Chin-yuan Kuo *sr1111111 [at] yahoo.com.tw*
[ASSGN] Thomas Lussnig *thomas.lussnig [at] bewegungsmelder.de*
Initially implemented IPv6 support.
[ ] Bill Richardson *bill [at] riverstonenet.com*
[ASSGN] Nicolas Schodet *contact [at] ni.fr.eu.org*
Contributed to cookie code and documentation.
[ ] Ahmon Dancy *dancy [at] dancysoft.com*
[ ] Noel Kothe *noel [at] debian.org*
[ ] Aurelien Marchand *artaxerxes [at] users.sf.net*
[ ] Aaron S. Hawley *Aaron.Hawley [at] uvm.edu*
[ ] Bertrand Demiddelaer *bert [at] b3rt.org*
[ ] Matthew J. Mellon *mellon [at] tymenet.com*
[ASSGN] Gisle Vanem *giva [at] bgnett.no*
Contributed Windows and MS-DOS improvements, including a
port of run_with_timeout to Windows, additions to Makefiles,
and many bug reports and fixes.
[ ] Philip Stadermann *philip.stadermann [at] credativ.de*
[ ] Dennis Smit *ds [at] nerds-incorporated.org*
[ ] Christian Biere *christianbiere [at] gmx.de*
[ ] David Fritz *zeroxdf [at] att.net*
[ ] Jens Roesner *jens.roesner [at] gmx.de*
[ ] Nico R. *n-roeser [at] gmx.net*
[ ] Larry Jones *lawrence.jones [at] ugsplm.com*
[ ] YAMAZAKI Makoto *Yamazaki.Makoto [at] fujixerox.co.jp*
[ ] Hans-Andreas Engel *engel [at] node.ch*
[ ] Leonid Petrov *nouser [at] lpetrov.net*
[ ] Ulf Harnhammar *ulf.harnhammar.9485 [at] student.uu.se*
[ASSGN] Mauro Tortonesi *mauro [at] ferrara.linux.it*
Improved IPv6 support, adding support for dual
family systems. Refactored and enhanced FTP IPv6 code.
Maintained GNU Wget from 2004-2007.
[ ] Marco Colombo *m.colombo [at] ed.ac.uk*
[ ] Joseph Caretto *jcaretto [at] pitt.edu*
[ ] FUJISHIMA Satsuki *sf [at] FreeBSD.org*
[ ] Charles C.Fu *ccwf [at] bacchus.com*
[ ] Andreas Beckmann *debian [at] abeckmann.de*
[ ] Keith Moore *keithmo [at] exmsft.com*
[ ] Benno Schulenberg *benno [at] nietvergeten.nl*
[ ] Giuseppe Bonacci *g.bonacci [at] libero.it*
[ ] Vasil Dimov *vd [at] datamax.bg*
[ ] Albert Chin *wget [at] mlists.thewrittenword.com*
[ ] Jeremy Shapiro *jnshapiro [at] gmail.com*
[ ] Stepan Kasal *kasal [at] ucw.cz*
[ ] Russ Allbery *rra [at] stanford.edu*
[ASSGN] Daniel Stenberg *daniel [at] haxx.se*
NTLM authentication in http-ntlm.c and http-ntlm.h
originally written for curl donated for use in GNU Wget.
[ ] Lawrence Jones *lawrence.jones [at] ugs.com*
[ ] CHEN Peng *chenpeng [at] alumni.nus.edu.sg*
[ASSGN] Tony Lewis *tlewis [at] exelana.com*
[ ] KJKHyperion *hackbunny [at] reactos.com*
[ ] Daniel Richard G. *skunk [at] iSKUNK.ORG*
[ ] Mike Grant *mggr [at] pml.ac.uk*
[ASSGN] Micah Cowan *micah [at] cowan.name*
Maintained Wget from mid-2007 to mid-2010.
[ASSGN] Joshua David Williams *yurimxpxman [at] gmail.com*
[ASSGN] Ralf Wildenhues *Ralf.Wildenhues [at] gmx.de*
Contributed patches to convert Wget to use Automake as
part of its build process, and various bugfixes.
[ ] Jochen Roderburg *roderburg [at] uni-koeln.de*
[ ] Stephen Gildea *stepheng+wget [at] gildea.com*
[ ] Benno Schulenberg *bensberg [at] justemail.net*
[ ] Alexander Dergachev *cy6erbr4in [at] gmail.com*
[ASSGN] Rabin Vincent *rabin [at] rab.in*
[ASSGN] Steven Schubiger *schubiger [at] gmail.com*
Many helpful patches, bugfixes and improvements.
Notably, conversion of Wget to use the Gnulib quotes and
quoteargs modules, and the addition of password prompts
at the console, via the Gnulib getpasswd-gnu module.
[ ] Alain Guibert *alguibert+bts [at] free.fr*
[ ] Jim Paris *jim [at] jtan.com*
[ASSGN] Mike Frysinger *vapier [at] gentoo.org*
[ ] Pranab Shenoy *pranab.loosinit.shenoy [at] gmail.com*
[ASSGN] Ted Mielczarek *ted.mielczarek [at] gmail.com*
Support for parsing links from CSS.
[ASSGN] Joao Ferreira *joao [at] joaoff.com*
[ ] Kenny Parnell *k.parnell [at] gmail.com*
[ ] Henri Häkkinen *henux [at] users.sourceforge.net*
[ASSGN] Madhusudan Hosaagrahara *com.gmail.hrmadhu*
[ASSGN] Xavier Saint *wget [at] sxav.eu*
Support for IRIs (RFC 3987).
[ ] Michael Kessler *kessler.michael [at] aon.at*
[ ] Alexander Drozdov *dzal_mail [at] mtu-net.ru*
[ ] Alexander Belopolsky *alexander.belopolsky [at] gmail.com*
[ASSGN] Gerardo E. Gidoni *gerel [at] gnu.org*
[ ] Benjamin Wolsey *bwy [at] benjaminwolsey.de*
[ ] Xin Zou *zouxin2008 [at] gmail.com*
[ ] Julien Pichon *julienpichon7 [at] gmail.com*
[ ] Phil Pennock *mutt-dev [at] spodhuis.org*
[ ] Jay Krell *jay.krell [at] cornell.edu*
[ASSGN] Steven Schweda *sms [at] antinode.info*
[ASSGN] Petr Pisar *petr.pisar [at] atlas.cz*
[ ] Marcel Telka *marcel [at] telka.sk*
[ ] Michael Baeuerle *michael.baeuerle [at] gmx.net*
[ASSGN] Arvind Jamuna Dixit *ardsrk [at] gmail.com*
[ ] Peter Rosin *peda [at] lysator.liu.se*
[ ] David Holman *holman.david [at] gmail.com*
[ ] Jeremy Olexa *darkside [at] gentoo.org*
[ ] Paul Townsend *aab [at] purdue.edu*
[ASSGN] Giuseppe Scrivano *gscrivano [at] gnu.org*
Added support for HTTP/1.1.
Active Wget Maintainer from 2010-2015.
[ ] Muthu Subramanian K *muthusuba [at] gmail.com*
[ ] Alan Jenkins *alan-jenkins [at] tuffmail.co.uk*
[ ] John Trengrove *jtrengrove [at] gmail.com*
[ ] Alon Bar-Lev *alon.barlev [at] gmail.com*
[ASSGN] Reza Snowdon *vivi [at] mage.me.uk*
[ASSGN] Dennis, CHENG Renquan *crquan [at] fedoraproject.org*
[ASSGN] Merinov Nikolay *kim.roader [at] gmail.com*
[ ] Ivanov Anton *x86mail [at] gmail.com*
[ ] Manfred Koizar *mkoi-pg [at] aon.at*
[ASSGN] Jessica McKellar *jesstess [at] mit.edu*
[ ] Filipe Brandenburger *filbranden [at] gmail.com*
[ ] Evgeniy Philippov *egphilippov [at] googlemail.com*
[ ] Adrien Nader *adrien [at] notk.org*
[ ] Gilles Carry *gilles.carry [at] st.com*
[ ] Tomasz Buchert *tomek.buchert [at] gmail.com*
[ASSGN] Ray Satiro *raysatiro [at] yahoo.com*
[ ] Cristian Rodríguez *crrodriguez [at] opensuse.org*
[ASSGN] Daniel Manrique *roadmr [at] tomechangosubanana.com*
[ ] Carlos Martín Nieto *carlos [at] cmartin.tk*
[ ] Jochen Roderburg *Roderburg [at] Uni-Koeln.DE*
[ ] Mojca Miklavec *mojca.miklavec.lists [at] gmail.com*
[ ] Alan Hourihane *alanh [at] fairlite.co.uk*
[ ] Christian Jullien *eligis [at] orange.fr*
[ ] Jakob Matthes *jakob.matthes [at] gmail.com*
[ ] Karl Berry *karl [at] freefriends.org*
[ ] Henrik Holst *henrik.holst [at] millistream.com*
[ASSGN] Gijs van Tulder *gvtulder [at] gmail.com*
[ASSGN] Sasikantha Babu *sasikanth.v19 [at] gmail.com*
[ ] Ángel González *keisial [at] gmail.com*
[ ] Daniel Kahn Gillmor *dkg [at] fifthhorseman.net*
[ ] illusionoflife *illusion.of.life92 [at] gmail.com*
[ ] mancha *mancha [at] mac.hush.com*
[ ] *y-iida [at] secom.co.jp*
[ ] Rohit Mathulla *rohit_mathulla [at] yahoo.com*
[ ] Nguyễn Thái Ngọc Duy *pclouds [at] gmail.com*
[ ] Stefano Lattarini *stefano.lattarini [at] gmail.com*
[ ] Michael Stapelberg *michael [at] stapelberg.de*
[ ] Pavel Mateja *pavel [at] netsafe.cz*
[ASSGN] Darshit Shah *darnir [at] gnu.org*
[ ] Tomas Hozza *thozza [at] redhat.com*
[ ] mancha *mancha1 [at] hush.com*
[ASSGN] Bykov Aleksey *gnfalex [at] rambler.ru*
[ ] Dave Reisner *dreisner [at] archlinux.org*
[ ] Ciprian Vieru *devel.php [at] gmail.com*
[ ] Karsten Hopp *karsten [at] redhat.com*
[ ] Will Dietz *w [at] wdtz.org*
[ ] Andrea Urbani *matfanjol [at] mail.com*
[ ] Håkon Vågsether *hauk142 [at] gmail.com*
[ ] Lars Wendler *polynomial-c [at] gentoo.org*
[ASSGN] Yousong Zhou *yszhou4tech [at] gmail.com*
[ ] Vladimír Pýcha *vpycha [at] gmail.com*
[ASSGN] Zihang Chen *chsc4698 [at] gmail.com*
[ ] Benjamin Goose *gans+wget [at] tngtech.com*
[ ] Nikita Vetrov *admin [at] kanaria.ru*
[ ] Nikolay Morozov *n.morozov [at] securitycode.ru*
[ ] Matthew Atkinson *mutley456 [at] ntlworld.com*
[ ] Peter Meiser *meiser [at] gmx-topmail.de*
[ ] Pär Karlsson *feinorgh [at] gmail.com*
[ ] Jakub Čajka *jcajka [at] redhat.com*
[ ] Witchakorn Kamolpornwijit *witchakk [at] mit.edu*
[ ] Tom Li *biergaizi2009 [at] gmail.com*
[ ] Jérémie Courrèges-Anglas *jca [at] wxcvbn.org*
[ ] Cong Ma *cma [at] pmo.ac.cn*
[ ] Yuriy M. Kaminskiy *yumkam [at] gmail.com*
[ASSGN] Eli Zaretskii *eliz [at] gnu.org*
[ ] Mathieu Parent *math.parent [at] gmail.com*
[ ] Dagobert Michelsen *dam [at] opencsw.org*
[ ] Gisle Vanem *gvanem [at] yahoo.no*
[ ] Anderson Goulart *global [at] kokre.com*
[ASSGN] Ander Juaristi Alamos *ajuaristi [at] gmx.es*
[ ] Rohan Prinja *rohan.prinja [at] gmail.com*
[ASSGN] Hubert Tarasiuk *hubert.tarasiuk [at] gmail.com*
[ASSGN] Miquel Llobet *mllobet.cm [at] gmail.com*
[ ] Romain Bentz *romain.bentz [at] dataiku.com*
[ ] Alex Henrie *alexhenrie24 [at] gmail.com*
[ASSGN] Jookia *166291 [at] gmail.com*
[ ] Daniele Calore *daniele.calore [at] tin.it*
[ ] Christian Neukirchen *chneukirchen [at] gmail.com*
[ ] christian fafard *cfaf [at] hotmail.com*
[ ] Ikey Doherty *michael.i.doherty [at] intel.com*
[ ] Ygal Blum *ygal.blum [at] technicolor.com*
[ ] Jernej Simončič *jernej|s-wget [at] eternallybored.org*
[ ] Maks Orlovich *morlovich [at] google.com*
[ASSGN] moparisthebest *admin [at] moparisthebest.com*
[ ] Sergio Gelato *sergio.gelato [at] astro.su.se*
[ ] Sean Burford *sburford [at] google.com*
[ASSGN] Matthew White *mehw.is.me [at] inventati.org*
[ ] Jeffery To *jeffery.to [at] gmail.com*
[ ] Tobias Stoeckmann *tobias [at] stoeckmann.org*
[ASSGN] Dale R. Worley *worley [at] ariadne.com*
[ ] Liam R. Howlett *Liam.Howlett [at] WindRiver.com*
[ ] losgrandes *pwajda [at] gmail.net.pl*
[ ] Rahul Bedarkar *rahul.bedarkar [at] imgtec.com*
[ ] Nikos Mavrogiannopoulos *nmav [at] gnutls.org*
[ASSGN] vijeth-aradhya *vijthaaa [at] gmail.com*
[ASSGN] Tom Szilagyi *tomszilagyi [at] gmail.com*
[ASSGN] YX Hao *lifenjoiner [at] 163.com*
[ ] Benjamin Esham *benjamin [at] esham.io*
[ ] Christof Horschitz *christof [at] nimbusec.com*
[ASSGN] Vijo Cherian *codervijo [at] gmail.com*
[ ] klemens *ka7 [at] github.com*
[ ] Anton Yuzhaninov *citrin+github [at] citrin.ru*
[ASSGN] Tim Schlueter *schlueter.tim [at] linux.com*
[ASSGN] Josef Moellers *jmoellers [at] suse.de*
[ ] Peter Wu *peter [at] lekensteyn.nl*
[ ] Reiji *gey3dr [at] gmail.com*
[ ] Loganaden Velvindron *logan [at] hackers.mu*
[ ] ethus3h *kolubat [at] gmail.com*
[ ] Tomas Korbar *tkorbar [at] redhat.com*
[ ] Nikos Mavrogiannopoulos *nmav [at] redhat.com*
[ ] Luiz Angelo Daros de Luca *luizluca [at] gmail.com*
[ ] Kapus, Timotej *timotej.kapus13 [at] imperial.ac.uk*
[ ] Rosen Penev *rosenp [at] gmail.com*
[ ] André Wolski *andre [at] dena-design.de*
[ ] Leon Klingele *git [at] leonklingele.de*
[ASSGN] Jeffrey Walton *noloader [at] gmail.com*
[ ] raminfp *ramin.blackhat [at] gmail.com*
[ ] Leif Ryge *leif [at] synthesize.us*
[ ] Eneas U de Queiroz *cote2004-github [at] yahoo.com*
[ ] AviSoomirtee *avi [at] cyberstorm.mu*
[ASSGN] sulfastor *torresmoisesa [at] gmail.com*
[ ] Lauri Nurmi *lanurmi [at] iki.fi*
[ASSGN] Вячеслав Петрищев *vyachemail [at] gmail.com*
[ ] Matt Whitlock *gentoo [at] mattwhitlock.name*
[ ] Shamil Gumirov *shamil [at] gumirov.com*
[ ] Nils *nils [at] nilsand.re*
[ ] Nekun *nekokun [at] firemail.cc*
[ ] jmoellers *josef.moellers [at] suse.com*
[ ] WB *3572564-wadersgeek [at] users.noreply.gitlab.com*
[ ] Thomas Niederberger *thomas [at] niederb.ch*
[ ] Nik Soggia *wget [at] niksoggia.it*
[ ] Aarni Koskela *akx [at] iki.fi*
[ ] jinfuchiang *jinfuchiang [at] outlook.com*
[ ] Jan-Michael Brummer *jan-michael.brummer1 [at] volkswagen.de*

View File

@@ -1,7 +1,7 @@
GNU GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/>
Copyright (C) 2007, 2023 Free Software Foundation, Inc. <https://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.

View File

@@ -1,5 +1,5 @@
# Makefile for `Wget' utility
# Copyright (C) 1995-1997, 2006-2021 Free Software Foundation, Inc.
# Copyright (C) 1995-1997, 2006-2024 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -92,8 +92,8 @@ check-coverage: clean clean-lcov
lcov --capture --initial --directory src/ --output-file $(LCOV_INFO)
$(MAKE) CFLAGS="$(CFLAGS) --coverage" LDFLAGS="$(LDFLAGS) --coverage" VALGRIND_TESTS=0 check
lcov --capture --directory src/ --output-file $(LCOV_INFO)
lcov --remove $(LCOV_INFO) '/usr/include/*' '*/lib/*' -o $(LCOV_INFO)
genhtml --prefix . --ignore-errors source $(LCOV_INFO) --legend --title "Wget" --output-directory=lcov
lcov --remove $(LCOV_INFO) --ignore-errors unused '/usr/include/*' '*/lib/*' -o $(LCOV_INFO)
genhtml --prefix . --ignore-errors source --ignore-errors unmapped $(LCOV_INFO) --legend --title "Wget" --output-directory=lcov
@echo
@echo "You can now view the coverage report with 'xdg-open lcov/index.html'"

51
NEWS
View File

@@ -1,5 +1,54 @@
GNU Wget NEWS -- history of user-visible changes.
* Noteworthy changes in release ?.? (????-??-??) [?]
* Noteworthy changes in release 1.24.5 (2024-03-10) [stable]
** Fix how subdomain matches are checked for HSTS.
Fixes a minor issue where cookies may be leaked to the wrong domain
** Wget will now also parse the srcset attribute in <source> HTML tags
** Support reading fetchmail style "user" and "passwd" fields from netrc
** In some cases, prevent the confusing "Cannot write to... (success)" error messages
** Support extremely fast download speeds (TB/s).
Previously this would cause Wget to crash when printing the speed
** Improve portability on OpenBSD to run the test suite
** Ensure that CSS URLs are corectly quoted (Bug: 64082)
* Noteworthy changes in release 1.21.4 (2023-05-11)
** Document --retry-on-host-error in help text
** Increase read buffer size to 64k. This should speed up downloads on gigabit and faster connections
** Update deprecated option '--html-extension' to '--adjust-extension' in documentation
** Update gnulib compatibility layer.
Fixes HSTS test failures on i686. (Thanks to Andreas Enge for ponting it out)
* Noteworthy changes in release 1.21.3 (2022-02-26)
** Fix computation of total bytes downloaded during FTP trasnfers (#61277)
** Add option to select TLS 1.3 on the command line
** Fix HSTS build issues on some 64-bit big-endian systems
** Hide password during status report in --no-verbose
** Remove a sprurious print statement that showed up even during --quiet
** Some more cleanups and bug-fixes
* Noteworthy changes in release 1.21.2 (2021-09-07)
** Support for autoconf 2.71
@@ -1169,7 +1218,7 @@ geturl -vo log http://fly.cc.fer.hr/
----------------------------------------------------------------------
Copyright information:
Copyright (C) 1997-2021 Free Software Foundation, Inc.
Copyright (C) 1997-2024 Free Software Foundation, Inc.
Permission is granted to anyone to make or distribute verbatim
copies of this document as received, in any medium, provided that

5
README
View File

@@ -55,12 +55,15 @@ Wget's home page is at <https://www.gnu.org/software/wget/>.
If you would like to contribute code for Wget, please read
CONTRIBUTING.md.
Wget is offered under the terms of the GNU GPLv3 license. Please see the
COPYING file for a full text of the license terms.
Wget was originally written and mainained by Hrvoje Niksic. Please see
the file AUTHORS for a list of major contributors, and the ChangeLogs
for a detailed listing of all contributions.
Copyright (C) 1995-2021 Free Software Foundation, Inc.
Copyright (C) 1995-2024 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by

View File

@@ -161,7 +161,7 @@ Testing and development
that bug, which might be tedious. Tests should only be run through GDB for that purpose.
Copyright (C) 2008, 2010, 2014-2015, 2018-2021 Free Software
Copyright (C) 2008, 2010, 2014-2015, 2018-2024 Free Software
Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
<https://www.gnu.org/licenses/gpl.html>.

84
SECURITY.md Normal file
View File

@@ -0,0 +1,84 @@
# Security Policy
## Reporting a Vulnerability
At GNU Wget, we take security seriously and appreciate the efforts of security
researchers in identifying and disclosing vulnerabilities responsibly. If you
believe you've discovered a security vulnerability in GNU Wget, we encourage you
to disclose it to us privately and work with us to ensure it is addressed
promptly and appropriately.
To report a vulnerability, please contact the maintainers directly via email.
The names and contact details of the current maintainers is always available via
the AUTHORS file in this repository. In order to send an encrypted email,
please use the keyring available at the following URL:
https://savannah.gnu.org/project/release-gpgkeys.php?group=wget
Please include the following information in your report:
- A detailed description of the vulnerability
- The version(s) of GNU Wget that are affected.
- Steps to reproduce the vulnerability.
- Any proof-of-concept or exploit code, if applicable.
- Your contact information for coordination and follow-up.
Once we receive your report, we will acknowledge receipt and work with you to
investigate the issue. We work on GNU Wget on a volunteer basis and as such may
face delays in responding immediately. We aim to respond to initial reports
within 5 working days and will keep you informed of our progress throughout the
resolution process.
Please refrain from disclosing the vulnerability publicly until we have had an
opportunity to investigate and address it. We appreciate your cooperation in
helping to keep GNU Wget and its users secure.
## Vulnerability Disclosure Policy
Once a security vulnerability has been identified and confirmed, we will take
the following steps:
1. **Investigation**: We will promptly investigate the reported vulnerability to
verify its authenticity and determine its scope and impact.
2. **Resolution**: Once validated, we will develop and test a fix for the
vulnerability. We will strive to address the issue as quickly as possible and
prepare a patch for release.
3. **Coordination**: We will work with the reporter to ensure that the
vulnerability is disclosed responsibly and coordinated with the release of
the fix.
4. **Release**: Upon completion of the fix and any necessary testing, we will
release a new version of GNU Wget that addresses the vulnerability. We will
provide appropriate credit to the reporter in the release notes, unless
otherwise requested.
5. **Public Disclosure**: We will coordinate the public disclosure of the
vulnerability with the reporter and other relevant stakeholders. Once the fix
is widely available, we will publish an advisory detailing the vulnerability
and its resolution.
We strive to follow these steps in a timely and transparent manner, while
prioritizing the security and stability of GNU Wget and its users.
## Responsible Disclosure Guidelines
In order to protect our users and systems, we ask that security researchers
adhere to the following guidelines when reporting vulnerabilities to GNU Wget:
- **Responsible Disclosure**: Please disclose vulnerabilities to us privately
and allow us a reasonable amount of time to investigate and address them
before disclosing them publicly.
- **Cooperation**: We appreciate your cooperation and collaboration throughout
the disclosure process. We will do our best to keep you informed of our
progress and coordinate the release of information with you.
- **Respect**: Please respect our users' privacy and refrain from any actions
that could cause harm or disrupt our systems. We ask that you do not exploit
or disclose vulnerabilities before they have been resolved.
By following these guidelines, you can help us maintain the security and
integrity of GNU Wget for the benefit of all users. We thank you for your
contributions to our project and for helping to make the internet a safer place.

1572
bootstrap

File diff suppressed because it is too large Load Diff

View File

@@ -1,5 +1,5 @@
# bootstrap.conf - Bootstrap configuration.
# Copyright (C) 2007-2012, 2018-2021 Free Software Foundation, Inc.
# Copyright (C) 2007-2012, 2018-2024 Free Software Foundation, Inc.
#
# This file is part of GNU Wget.
#
@@ -36,13 +36,20 @@ c-strcasestr
clock-time
close
connect
crypto/md2
crypto/md4
crypto/md5
crypto/sha1
crypto/sha256
crypto/sha512
dirname
do-release-commit-and-tag
fcntl
flock
fnmatch-gnu
fopen
futimens
ftello
futimens
gendocs
getaddrinfo
getline
@@ -51,19 +58,20 @@ getpass-gnu
getpeername
getsockname
gettext-h
gitlog-to-changelog
git-version-gen
gnupload
gitlog-to-changelog
gnu-web-doc-update
gnupload
group-member
hostent
ioctl
iconv
iconv-h
inet_ntop
intprops
inttypes
ioctl
langinfo
libunistring-optional
limits-h
link
listen
@@ -72,15 +80,9 @@ mbiter
mbtowc
memrchr
mkdir
mkstemp
mkostemp
mkstemp
nanosleep
crypto/md2
crypto/md4
crypto/md5
crypto/sha1
crypto/sha256
crypto/sha512
open
pipe-posix
posix_spawn
@@ -93,8 +95,8 @@ select
send
setsockopt
signal-h
sigprocmask
sigpipe
sigprocmask
snprintf
socket
spawn-pipe
@@ -112,12 +114,11 @@ symlink
sys_types
timegm
tmpdir
unicase/u8-tolower
unistr/u8-strlen
unlink
unlocked-io
update-copyright
libunistring-optional
unistr/u8-strlen
unicase/u8-tolower
utime
utimens
vasprintf

View File

@@ -2,7 +2,7 @@
# Generate build_info.c.
# Copyright (C) 2009-2011, 2018-2021 Free Software Foundation, Inc.
# Copyright (C) 2009-2011, 2018-2024 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by

20
cfg.mk
View File

@@ -1,35 +1,25 @@
# Explicit syntax-check exceptions.
exclude_file_name_regexp--sc_trailing_blank = ^doc/annou.*$$
exclude_file_name_regexp--sc_bindtextdomain = ^fuzz/.*.c$$
exclude_file_name_regexp--sc_require_config_h = fuzz/main.c$$
exclude_file_name_regexp--sc_require_config_h_first = fuzz/main.c$$
# exclude_file_name_regexp--sc_po_
exclude_file_name_regexp--sc_require_config_h = (fuzz/.*.c|src/decc_ver.c|util/trunc.c)$$
exclude_file_name_regexp--sc_require_config_h_first = (fuzz/.*.c|src/decc_ver.c|src/vms.c|util/trunc.c)$$
exclude_file_name_regexp--sc_file_system = ^(NEWS|testenv/server/ftp/ftp_server.py)$$
export VC_LIST_EXCEPT_DEFAULT=^(lib/.*|m4/.*|md5/.*|build-aux/.*|src/gettext\.h|.*ChangeLog|tests/certs/.*)$$
config_h_header = "wget\.h"
local-checks-to-skip = \
sc_const_long_option \
sc_error_message_uppercase \
sc_file_system \
sc_immutable_NEWS \
sc_copyright_check \
sc_makefile_path_separator_check \
sc_require_config_h \
sc_require_config_h_first \
sc_two_space_separator_in_usage \
sc_useless_cpp_parens \
\
sc_prohibit_atoi_atof \
sc_prohibit_strcmp \
sc_cast_of_alloca_return_value \
sc_cast_of_x_alloc_return_value \
sc_prohibit_S_IS_definition \
\
sc_program_name \
sc_makefile_at_at_check \
sc_cast_of_argument_to_free \
sc_prohibit_undesirable_word_seq \
sc_prohibit_gnu_make_extensions \
\
sc_indent
@@ -43,5 +33,5 @@ VC_LIST_ALWAYS_EXCLUDE_REGEX = ^ABOUT-NLS|((msdos|vms)/.*)|ChangeLog-2014-12-10|
update-copyright-env = UPDATE_COPYRIGHT_USE_INTERVALS=1
generated_files =
old_NEWS_hash = 0813bf0ca67740840d6385f115107fac
old_NEWS_hash = b80dbf02602654e200d7cbce7aeda8d2
manual_title = $(VERSION)

View File

@@ -1,5 +1,5 @@
dnl Template file for GNU Autoconf
dnl Copyright (C) 1995-1997, 2001, 2007-2014, 2018-2021 Free Software
dnl Copyright (C) 1995-1997, 2001, 2007-2014, 2018-2024 Free Software
dnl Foundation, Inc.
dnl This program is free software; you can redistribute it and/or modify
@@ -262,6 +262,7 @@ dnl Gettext
dnl
AM_GNU_GETTEXT([external],[need-ngettext])
AM_GNU_GETTEXT_VERSION([0.19.3])
AM_GNU_GETTEXT_REQUIRE_VERSION([0.19.3])
AC_PROG_RANLIB
@@ -346,10 +347,6 @@ AC_CHECK_FUNCS(strptime timegm vsnprintf vasprintf drand48 pathconf)
AC_CHECK_FUNCS(strtoll usleep ftello sigblock sigsetjmp memrchr wcwidth mbtowc)
AC_CHECK_FUNCS(sleep symlink utime strlcpy random fmemopen)
if test x"$ENABLE_OPIE" = xyes; then
AC_LIBOBJ([ftp-opie])
fi
dnl We expect to have these functions on Unix-like systems configure
dnl runs on. The defines are provided to get them in config.h.in so
dnl Wget can still be ported to non-Unix systems (such as Windows)
@@ -361,9 +358,10 @@ dnl Deal with specific hosts
case $host_os in
*mingw32* )
LIBS+=' -lws2_32'
AC_LIBOBJ([mswindows])
OS_USED="mswindows"
;;
esac
AM_CONDITIONAL([OS_MSWINDOWS], [test x"$OS_USED" = x"mswindows"])
# enable all possible compiler warnings in WARN_FLAGS
#
@@ -394,6 +392,12 @@ if test -n "$WARN_CFLAGS"; then
nw="$nw -Wabi" # gcc 8, very noisy
nw="$nw -Wunused-macros" # triggers in auto-generated lex css parser, #pragma doesn't work, conflicts with -Werror
nw="$nw -Wchkp" # Deprecated option
nw="$nw -Wswitch-enum" # Too noisy
nw="$nw -Wswitch-default" # TODO: Enable someday. Too noisy for now
nw="$nw -Wpedantic" # GCC 11. Too noisy, will never be supported
nw="$nw -Wnested-externs" # Stylistic choice and we do use it in hsts code
nw="$nw -Wc90-c99-compat" # gcc-12, we use C99
nw="$nw -Wlong-long" # gcc-12, we use C99
if test "$cross_compiling" = yes; then
nw="$nw -Wformat"
fi
@@ -516,7 +520,7 @@ AS_IF([test x"$with_ssl" = xopenssl], [
if [test x"$with_libssl_prefix" = x]; then
PKG_CHECK_MODULES([OPENSSL], [openssl], [
AC_MSG_NOTICE([compiling in support for SSL via OpenSSL])
AC_LIBOBJ([openssl])
ssl_library="openssl"
LIBS="$OPENSSL_LIBS $LIBS"
CFLAGS="$OPENSSL_CFLAGS -DHAVE_LIBSSL $CFLAGS"
LIBSSL=" " # ntlm check below wants this
@@ -545,7 +549,7 @@ AS_IF([test x"$with_ssl" = xopenssl], [
AC_CHECK_LIB(ssl32, SSL_connect, [
ssl_found=yes
AC_MSG_NOTICE([Enabling support for SSL via OpenSSL (shared)])
AC_LIBOBJ([openssl])
ssl_library="openssl"
LIBS="${LIBS} -lssl32"
AC_DEFINE([HAVE_LIBSSL32], [1], [Define to 1 if you have the 'ssl32' library (-lssl32).])
],
@@ -574,7 +578,7 @@ AS_IF([test x"$with_ssl" = xopenssl], [
then
ssl_found=yes
AC_MSG_NOTICE([compiling in support for SSL via OpenSSL])
AC_LIBOBJ([openssl])
ssl_library="openssl"
LIBS="$LIBSSL $LIBS"
AC_CHECK_FUNCS([RAND_egd])
elif test x"$with_ssl" != x
@@ -593,7 +597,7 @@ AS_IF([test x"$with_ssl" = xopenssl], [
if [test x"$with_libgnutls_prefix" = x]; then
PKG_CHECK_MODULES([GNUTLS], [gnutls], [
AC_MSG_NOTICE([compiling in support for SSL via GnuTLS])
AC_LIBOBJ([gnutls])
ssl_library="gnutls"
LIBS="$GNUTLS_LIBS $LIBS"
CFLAGS="$GNUTLS_CFLAGS -DHAVE_LIBGNUTLS $CFLAGS"
AC_DEFINE([HAVE_LIBGNUTLS], [1], [Define if using gnutls.])
@@ -608,7 +612,7 @@ AS_IF([test x"$with_ssl" = xopenssl], [
then
ssl_found=yes
AC_MSG_NOTICE([compiling in support for SSL via GnuTLS])
AC_LIBOBJ([gnutls])
ssl_library="gnutls"
LIBS="$LIBGNUTLS $LIBS"
else
AC_MSG_ERROR([GnuTLS has not been found. Use --with-ssl=openssl if you explicitly want OpenSSL.])
@@ -620,36 +624,33 @@ AS_IF([test x"$with_ssl" = xopenssl], [
]) # endif: --with-ssl == openssl?
dnl Enable NTLM if requested and if SSL is available.
if test x"$LIBSSL" != x || test "$ac_cv_lib_ssl32_SSL_connect" = yes
if test x"$ENABLE_NTLM" != xno
then
if test x"$ENABLE_NTLM" != xno
if test x"$LIBSSL" != x || test "$ac_cv_lib_ssl32_SSL_connect" = yes
then
ENABLE_NTLM=yes
AC_DEFINE([ENABLE_NTLM], 1,
[Define if you want the NTLM authorization support compiled in.])
AC_LIBOBJ([http-ntlm])
fi
else
AC_CHECK_LIB(nettle, nettle_md4_init, [HAVE_NETTLE=yes], [HAVE_NETTLE=no; AC_MSG_WARN(*** libnettle was not found. You will not be able to use NTLM)])
if test x"$HAVE_NETTLE" = xyes
then
AC_SUBST(NETTLE_LIBS, "-lnettle")
AC_DEFINE([HAVE_NETTLE], [1], [Use libnettle])
if test x"$ENABLE_NTLM" != xno
then
ENABLE_NTLM=yes
AC_DEFINE([ENABLE_NTLM], 1,
[Define if you want the NTLM authorization support compiled in.])
AC_LIBOBJ([http-ntlm])
LIBS="$NETTLE_LIBS $LIBS"
fi
AC_DEFINE([ENABLE_NTLM], 1, [Define if you want the NTLM authorization support compiled in.])
else
dnl If SSL is unavailable and the user explicitly requested NTLM,
dnl abort.
if test x"$ENABLE_NTLM" = xyes
then
AC_MSG_ERROR([NTLM authorization requested and SSL not enabled; aborting])
PKG_CHECK_MODULES([NETTLE], nettle, [
HAVE_NETTLE=yes
LIBS="$NETTLE_LIBS $LIBS"
CFLAGS="$NETTLE_CFLAGS $CFLAGS"
], [
AC_CHECK_LIB(nettle, nettle_md4_init, [HAVE_NETTLE=yes], [HAVE_NETTLE=no; AC_MSG_WARN(*** libnettle was not found. You will not be able to use NTLM)])
if test x"$HAVE_NETTLE" != xyes; then
if test x"$ENABLE_NTLM" = xyes; then
AC_MSG_ERROR([NTLM authorization requested and SSL not enabled; aborting])
fi
else
AC_SUBST(NETTLE_LIBS, "-lnettle")
LIBS="$NETTLE_LIBS $LIBS"
fi
])
if test x"$HAVE_NETTLE" = xyes; then
AC_DEFINE([HAVE_NETTLE], [1], [Use libnettle])
ENABLE_NTLM=yes
AC_DEFINE([ENABLE_NTLM], 1, [Define if you want the NTLM authorization support compiled in.])
fi
fi
fi
@@ -789,19 +790,18 @@ AS_IF([test "X$iri" != "Xno"],[
fi
])
AC_ARG_WITH(libidn, AS_HELP_STRING([--with-libidn=[DIR]],[Support IDN2008/IRIs (needs GNU libidn2 + libunicode)]),
libidn=$withval, libidn="")
if test "X$iri" != "Xno"; then
AS_IF([test "x$with_libidn2" != xno], [
AC_SEARCH_LIBS(idn2_lookup_u8, idn2,
[with_libidn2=yes; AC_DEFINE([ENABLE_IRI], 1, [Define if IRI support is enabled.])],
[with_libidn2=no; iri=no; AC_MSG_WARN(*** LIBIDN2 was not found. You will not be able to use IDN2008 support)])
# AS_IF([test "x$with_libidn2" = xyes], [
# AC_SEARCH_LIBS(u8_tolower, unistring,
# [AC_DEFINE([ENABLE_IRI], 1, [Define if IRI support is enabled.])],
# [iri=no; AC_MSG_WARN(*** LIBUNISTRING was not found. You will not be able to use IDN2008 support)])
# ])
PKG_CHECK_MODULES([LIBIDN2], [libidn2 >= 0.14.0], [
with_libidn2=yes
LIBS="$LIBIDN2_LIBS $LIBS"
CFLAGS="$LIBIDN2_CFLAGS $CFLAGS"
AC_DEFINE([ENABLE_IRI], 1, [Define if IRI support is enabled.])
], [
AC_SEARCH_LIBS(idn2_lookup_u8, idn2,
[with_libidn2=yes; AC_DEFINE([ENABLE_IRI], 1, [Define if IRI support is enabled.])],
[with_libidn2=no; iri=no; AC_MSG_WARN(*** LIBIDN2 was not found. You will not be able to use IDN2008 support)])
])
])
fi
@@ -930,20 +930,42 @@ AS_IF([test x"$with_metalink" != xno], [
dnl
dnl Check for GPGME
dnl
m4_ifdef([AM_PATH_GPGME], [
AM_PATH_GPGME([], [
# Put libgpgme to the end of the library list since it introduces a -L linker flags.
# That -L might break the build if there are two different version of
# a library (e.g. GnuTLS) in /usr/local and in the system directory.
LIBS="$LIBS $GPGME_LIBS"
CFLAGS="$GPGME_CFLAGS $CFLAGS"
AC_DEFINE([HAVE_GPGME], [1], [Define if GPGME is available.])
have_gpg=yes
PKG_CHECK_MODULES([GPGME], gpgme, [
LIBS="$LIBS $GPGME_LIBS"
CFLAGS="$GPGME_CFLAGS $CFLAGS"
AC_DEFINE([HAVE_GPGME], [1], [Define if GPGME is available.])
have_gpg=yes
], [
m4_ifdef([AM_PATH_GPGME], [
AM_PATH_GPGME([], [
# Put libgpgme to the end of the library list since it introduces a -L linker flags.
# That -L might break the build if there are two different version of
# a library (e.g. GnuTLS) in /usr/local and in the system directory.
LIBS="$LIBS $GPGME_LIBS"
CFLAGS="$GPGME_CFLAGS $CFLAGS"
AC_DEFINE([HAVE_GPGME], [1], [Define if GPGME is available.])
have_gpg=yes
])
])
])
])
])
dnl
dnl libproxy support
dnl
with_libproxy=no
AC_ARG_ENABLE(libproxy,
[ --enable-libproxy libproxy support for system wide proxy configuration])
AS_IF([test "${enable_libproxy}" = "yes"], [
with_libproxy=yes
PKG_CHECK_MODULES([LIBPROXY], [libproxy-1.0], [
LIBS="$LIBPROXY_LIBS $LIBS"
CFLAGS="$LIBPROXY_CFLAGS $CFLAGS"
AC_DEFINE([HAVE_LIBPROXY], [1], [Define if using libproxy.])
])
])
dnl
dnl Extended Attribute support
dnl
@@ -971,11 +993,14 @@ test "X${ENABLE_XATTR}" = "Xyes" && AC_DEFINE([ENABLE_XATTR], 1,
[Define if you want file meta-data storing into POSIX Extended Attributes compiled in.])
dnl Needed by src/Makefile.am
AM_CONDITIONAL([IRI_IS_ENABLED], [test "X$iri" != "Xno"])
AM_CONDITIONAL([WITH_IRI], [test "X$iri" != "Xno"])
AM_CONDITIONAL([WITH_SSL], [test "X$with_ssl" != "Xno"])
AM_CONDITIONAL([METALINK_IS_ENABLED], [test "X$with_metalink" != "Xno"])
AM_CONDITIONAL([WITH_METALINK], [test "X$with_metalink" != "Xno"])
AM_CONDITIONAL([WITH_XATTR], [test "X$ENABLE_XATTR" != "Xno"])
AM_CONDITIONAL([WITH_NTLM], [test "X$ENABLE_NTLM" = "Xyes"])
AM_CONDITIONAL([WITH_OPIE], [test x"$ENABLE_OPIE" = x"yes"])
AM_CONDITIONAL([WITH_OPENSSL], [test x"$ssl_library" = x"openssl"])
AM_CONDITIONAL([WITH_GNUTLS], [test x"$ssl_library" = x"gnutls"])
dnl
dnl Create output
@@ -1012,4 +1037,5 @@ AC_MSG_NOTICE([Summary of build options:
GPGME: $have_gpg
IRI: $iri
Fuzzing build: $enable_fuzzing, $LIB_FUZZING_ENGINE
libproxy: $with_libproxy
])

48
contrib/commit-check Executable file
View File

@@ -0,0 +1,48 @@
#!/usr/bin/env sh
# Copyright (c) 2018-2022, 2024 Free Software Foundation, Inc.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
set -e
set -u
AUTHOR=$(git log -n1 --format='%aN')
EMAIL=$(git log -n1 --format='%aE')
DOMAIN=$(echo "$EMAIL" | cut -d'@' -f2)
EMAIL_PARSE=$(echo "$EMAIL" | sed 's/@/ \\[at\\] /g')
retval=0
echo "The last commit is made by $AUTHOR: $EMAIL_PARSE"
if git cat-file -p HEAD | grep "^Copyright-paperwork-exempt: Yes"; then
echo "This work is copyright paperwork exempt."
elif ! grep -E -q "^\\[ASSGN\\] .* \\*($EMAIL_PARSE|$DOMAIN)\\*$" AUTHORS; then
if grep -E -q "^\\[ *\\] .* \\*($EMAIL_PARSE|$DOMAIN)\\*$" AUTHORS; then
echo "The author is known, but did not yet complete the FSF Copyright Assignment."
else
echo "The author was not found in the AUTHORS file."
echo "Has the author completed the FSF Copyright Assignment?"
fi
echo
echo "If the commit is minor, please add this to the commit message:"
echo "Copyright-paperwork-exempt: Yes"
retval=1
else
echo "The author or company was found in the AUTHORS file."
echo "This work may be merged into master"
fi
exit $retval

View File

@@ -24,18 +24,33 @@ ask_continue() {
set +x
}
REQUIRED_PROGRAMS="ncftpput sponge"
REQUIRED_PROGRAMS="ncftpput sponge cvs ssh rsync rsh"
for prog in $REQUIRED_PROGRAMS; do
if ! command -v "$prog" >/dev/null 2>&1; then
2>&1 echo "Required program $prog not found. Please install before proceeding"
exit 1
fi
if ! command -v "$prog" >/dev/null 2>&1; then
2>&1 echo "Required program $prog not found. Please install before proceeding"
exit 1
fi
done
if [ ! -d ".git" ]; then
echo "Please run this script from the root of the git repository"
2>&1 echo "Please run this script from the root of the git repository"
exit 1
fi
if [ $# -ne 2 ]; then
2>&1 echo "Usage: $0 [version] [release-type]"
exit 1
fi
readonly VERSION="$1" && shift
readonly REL_TYPE_IN="$1" && shift
REL_TYPE=
case $REL_TYPE_IN in
a|A|alpha|Alpha) REL_TYPE=alpha;;
b|B|beta|Beta) REL_TYPE=beta;;
s|S|stable|Stable) REL_TYPE=stable;;
esac
echo "This script will make a new release and upload it to the GNU FTP Servers"
echo "Will run git clean -dxf to get a clean dir"
ask_continue
@@ -50,38 +65,22 @@ autoreconf -ivf
echo "=> Configure"
./configure -q
APP_NAME=$(grep "^PACKAGE_NAME='" configure | cut -d "'" -f2)
APP_VER=$(grep "^PACKAGE_VERSION='" configure | cut -d "'" -f2)
echo "Making release for $APP_NAME $APP_VER"
echo "Building $APP_NAME v$VERSION $REL_TYPE"
ask_continue
NEWS_VERSION=$(grep -i "Noteworthy changes in release" NEWS | head -1 | awk '{print $6}')
if [ "$NEWS_VERSION" != "$APP_VER" ]; then
echo "Latest version in NEWS file does not match latest tag"
exit 1
fi
PREV_VER=$(cat .prev-version)
LNO_CVER=$(grep -in "Noteworthy changes in release" NEWS | head -1 | cut -f1 -d:)
LNO_PVER=$(grep -in "Changes in $APP_NAME" NEWS | head -2 | tail -1 | cut -f1 -d:)
LNO_CVER=$(grep -in "Noteworthy changes in release" NEWS | head -1 | tail -1 | cut -f1 -d:)
LNO_PVER=$(grep -in "Noteworthy changes in release" NEWS | head -2 | tail -1 | cut -f1 -d:)
sed -n "${LNO_CVER},${LNO_PVER}p" NEWS
echo "This is the current contents of your NEWS"
ask_continue
echo ""
REL_TYPE=
while [ -z $REL_TYPE ]; do
printf "Enter release type (alpha, beta, stable): "
read x
case $x in
a|A|alpha|Alpha) REL_TYPE=alpha;;
b|B|beta|Beta) REL_TYPE=beta;;
s|S|stable|Stable) REL_TYPE=stable;;
esac
done
export RELEASE="$VERSION $REL_TYPE"
echo "=> Making release-commit"
make -s release-commit
echo "=> Make release"
make -s release RELEASE_TYPE=$REL_TYPE
make -s release
GPG_KEY=
while [ -z $GPG_KEY ]; do
@@ -95,7 +94,7 @@ done
echo ""
upload_command=$(make -s emit_upload_commands RELEASE_TYPE=stable \
upload_command=$(make -s emit_upload_commands \
| sponge \
| head -n3 \
| tail -1 \
@@ -108,22 +107,17 @@ echo "$upload_command"
ask_continue
$upload_command
if [[ $REL_TYPE == "stable" ]]; then
export CVSROOT=:ext:${CVSUSER:-${USER}}@cvs.savannah.gnu.org:/web/wget
export CVS_RSH=/usr/bin/ssh
export gendocs_options_=-I ../build-aux
make web-manual-update
fi
echo ""
echo "Remaining Release Checklist:
1. Send a mail to coordinator@translationproject.org with the subject
\"Requesting Translations for $APP_NAME-$APP_VER.POT\"
2. Announce email template placed at ~/announce-$APP_NAME-$APP_VER
\"Requesting Translations for $APP_NAME-$VERSION.POT\"
2. Announce email template placed at ~/announce-$APP_NAME-$VERSION
Send an announce mail to info-gnu@gnu.org
3. Run \`make web-manual\` and \`make web-manual-update\` to update manual online
(Only Stable)
"
echo ""
prev_tag=$(git tag | tail -2 | head -1)
echo ""
echo "Don't forget to mention the following contributors in the announcement:"
(
git log "${prev_tag}.." --format="%aN" --reverse
git log "${prev_tag}.." --reverse | grep -i reported | cut -d':' -f2 | cut -d'<' -f1 | cut -d' ' -f2- | tr -d '"'
) | sort -u

View File

@@ -1,60 +0,0 @@
#!/bin/bash
# Set a stricter bash mode
set -e
set -u
# Set up the subset of tests this Matrix instance will run.
# One instance is forked for each of the SSL library possibilities
SSL=${1:-""}
case $SSL in
"") SSL_LIB="--without-ssl";;
"openssl") SSL_LIB="--with-ssl=openssl";;
"gnutls") SSL_LIB="--with-ssl=gnutls";;
esac
# For some reason. /proc/cpuinfo reports 16 cores on Travis, while the docs
# claim that each instance has only 2 cores. We believe the docs and force a
# value of n+1 here.
CORES=3
# Define a large number of Warning flags for the compiler. Hopefully, someone
# will sit and analyze the output to clean the warnings from the codebase.
CFLAGS="-std=c89 -pedantic -O0 -Wall -Wextra -Wstrict-prototypes -Wold-style-definition -Wwrite-strings -Wshadow -Wformat -Wformat-security -Wunreachable-code -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition"
# A cachefile for ./configure. Saves significant time when reconfiguring
CACHEFILE=$PWD/config_check.cache
# measure time consumed and print it at the end of the script
START=$(date +%s)
# Test different Permutations of Wget. Always under Valgrind
#
# Options:
# - All Features Enabled
# - C [Default Locale]
# - Russian [Multibyte / Multicolumn Locale]
# - Turkish [Special Test due to issues with language]
# - IPv6 Disabled
# - C
for options in "" "--disable-ipv6"; do
export DISTCHECK_CONFIGURE_FLAGS="-C --cache-file=$CACHEFILE --enable-assert --enable-valgrind-tests $SSL_LIB $options"
echo " ./configure $DISTCHECK_CONFIGURE_FLAGS CFLAGS=\"$CFLAGS\""
./configure $DISTCHECK_CONFIGURE_FLAGS CFLAGS="$CFLAGS"
if [[ -z $options ]]; then
LANG_ARR=("ru_RU.UTF-8" "tr_TR.UTF-8" "C")
else
LANG_ARR=("C")
fi
for xLCALL in "${LANG_ARR[@]}"; do
export TESTS_ENVIRONMENT="LC_ALL=$xLCALL VALGRIND_TESTS=1"
echo " TESTS_ENVIRONMENT=\"$TESTS_ENVIRONMENT\" make distcheck CFLAGS=$CFLAGS -j$CORES"
make distcheck CFLAGS="$CFLAGS" -j$CORES
done
done
END=$(date +%s)
echo "Duration: $((END-START))"

View File

@@ -1,5 +1,5 @@
# Makefile for `wget' utility
# Copyright (C) 1995-1997, 2007-2011, 2015, 2018-2021 Free Software
# Copyright (C) 1995-1997, 2007-2011, 2015, 2018-2024 Free Software
# Foundation, Inc.
# This program is free software; you can redistribute it and/or modify

View File

@@ -5,7 +5,7 @@
@c hence no sectioning command or @node.
@display
Copyright @copyright{} 2000--2002, 2007--2008, 2015, 2018--2021 Free
Copyright @copyright{} 2000--2002, 2007--2008, 2015, 2018--2024 Free
Software Foundation, Inc.
@uref{http://fsf.org/}

View File

@@ -1,6 +1,6 @@
#! /usr/bin/env perl
# Copyright (C) 1999-2001, 2003, 2007, 2009-2011, 2015, 2018-2021 Free
# Copyright (C) 1999-2001, 2003, 2007, 2009-2011, 2015, 2018-2024 Free
# Software Foundation, Inc.
# This file is part of GCC.

View File

@@ -31,7 +31,7 @@ This file documents the GNU Wget utility for downloading network
data.
@c man begin COPYRIGHT
Copyright @copyright{} 1996--2011, 2015, 2018--2021 Free Software
Copyright @copyright{} 1996--2011, 2015, 2018--2024 Free Software
Foundation, Inc.
@iftex
@@ -2144,7 +2144,7 @@ download them recursively, though this feature may be added in the future.
When @samp{--retr-symlinks=no} is specified, the linked-to file is not
downloaded. Instead, a matching symbolic link is created on the local
filesystem. The pointed-to file will not be retrieved unless this recursive
file system. The pointed-to file will not be retrieved unless this recursive
retrieval would have encountered it separately and downloaded it anyway. This
option poses a security risk where a malicious FTP Server may cause Wget to
write to files outside of the intended directories through a specially crafted
@@ -3046,7 +3046,7 @@ file so that it keeps its date of modification.
wget -S http://www.gnu.ai.mit.edu/
@end example
A simple @code{ls -l} shows that the time stamp on the local file equals
A simple @code{ls -l} shows that the timestamp on the local file equals
the state of the @code{Last-Modified} header, as returned by the server.
As you can see, the time-stamping info is preserved locally, even
without @samp{-N} (at least for @sc{http}).
@@ -3982,7 +3982,7 @@ or @samp{application/xhtml+xml} to @file{@var{name}.html}.
@example
wget --mirror --convert-links --backup-converted \
--html-extension -o /home/me/weeklog \
--adjust-extension -o /home/me/weeklog \
https://www.gnu.org/
@end example

View File

@@ -3,10 +3,26 @@ AM_CPPFLAGS = -I$(top_srcdir)/src -I$(srcdir) -I$(top_builddir)/lib -I$(top_srcd
$(CODE_COVERAGE_CPPFLAGS) \
-DSRCDIR=\"$(abs_srcdir)\"
LDADD = ../lib/libgnu.a \
$(GETADDRINFO_LIB) $(HOSTENT_LIB) $(INET_NTOP_LIB) $(INET_PTON_LIB) \
$(LIBSOCKET) $(LIB_CLOCK_GETTIME) $(LIB_CRYPTO) $(LIB_GETLOGIN) $(LIB_NANOSLEEP) $(LIB_POLL) \
$(LIB_POSIX_SPAWN) $(LIB_PTHREAD_SIGMASK) $(LIB_SELECT) $(LIBICONV) $(LIBINTL) \
$(LIBMULTITHREAD) $(LIBTHREAD) $(SERVENT_LIB) @INTL_MACOSX_LIBS@ \
$(CLOCK_TIME_LIB) \
$(GETADDRINFO_LIB) \
$(GETRANDOM_LIB) \
$(HARD_LOCALE_LIB) \
$(HOSTENT_LIB) \
$(INET_NTOP_LIB) \
$(LIBSOCKET) \
$(LIBTHREAD) \
$(LIB_CRYPTO) \
$(LIBC32CONV) \
$(LIBICONV) \
$(LIBINTL) \
$(LIBUNISTRING) \
$(MBRTOWC_LIB) \
$(NANOSLEEP_LIB) \
$(POSIX_SPAWN_LIB) \
$(PTHREAD_SIGMASK_LIB) \
$(SELECT_LIB) \
$(SERVENT_LIB) \
$(SETLOCALE_NULL_LIB) \
$(FUZZ_LIBS) $(CODE_COVERAGE_LIBS)
WGET_TESTS = \
@@ -93,10 +109,10 @@ clean-local:
oss-fuzz:
if test "$$OUT" != ""; then \
XLIBS="-lpsl -lgnutls -lhogweed -lnettle -lidn2 -lunistring"; \
XLIBS="-lpsl -lgnutls -lhogweed -lnettle -lgmp -lidn2 -lunistring -lz"; \
for ccfile in wget*_fuzzer.c; do \
fuzzer=$$(basename $$ccfile .c); \
$$CXX $$CXXFLAGS -I$(top_srcdir)/src -I$(top_srcdir) -I$(top_srcdir)/lib \
$$CC $$CFLAGS -I$(top_srcdir)/src -I$(top_srcdir) -I$(top_srcdir)/lib \
"$${fuzzer}.c" -o "$${fuzzer}" \
../src/libunittest.a ../lib/libgnu.a $${LIB_FUZZING_ENGINE} \
-Wl,-Bstatic $${XLIBS} -Wl,-Bdynamic; \

View File

@@ -15,14 +15,12 @@ regression testing with top dir 'make check' or 'make check-valgrind'.
Use the following commands on top dir:
```
export CC=clang
export CXX=clang++
# address sanitizer:
#export CFLAGS="-O1 -g -fno-omit-frame-pointer -gline-tables-only -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -fsanitize=undefined,integer,nullability -fsanitize=address -fsanitize-address-use-after-scope -fsanitize-coverage=trace-pc-guard,trace-cmp"
export CFLAGS="-O1 -fno-omit-frame-pointer -gline-tables-only -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -fsanitize=undefined -fsanitize=address -fsanitize-address-use-after-scope -fsanitize=fuzzer-no-link"
# undefined sanitizer;
export CFLAGS="-O1 -fno-omit-frame-pointer -gline-tables-only -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -fsanitize=bool,array-bounds,float-divide-by-zero,function,integer-divide-by-zero,return,shift,signed-integer-overflow,vla-bound,vptr -fno-sanitize-recover=bool,array-bounds,float-divide-by-zero,function,integer-divide-by-zero,return,shift,signed-integer-overflow,vla-bound,vptr -fsanitize=fuzzer-no-link"
export CXXFLAGS="$CFLAGS -stdlib=libc++"
export LIB_FUZZING_ENGINE="-lFuzzer -lstdc++"
export LIB_FUZZING_ENGINE="-lFuzzer -lstdc++"
./configure --enable-fuzzing --without-metalink --without-zlib --disable-pcre --without-libuuid --enable-assert
make clean
make -j$(nproc)

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2017-2021 Free Software Foundation, Inc.
* Copyright (c) 2017-2024 Free Software Foundation, Inc.
*
* This file is part of GNU Wget.
*

View File

@@ -1,6 +1,6 @@
#!/bin/sh -eu
if ! grep -q FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION Makefile; then
if ! grep FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION Makefile >/dev/null; then
echo "The fuzzers haven't been built for fuzzing (maybe for regression testing !?)"
echo "Please built regarding README.md and try again."
exit 1

View File

@@ -13,7 +13,7 @@ if test -z "$1"; then
exit 1
fi
if ! grep -q FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION Makefile; then
if ! grep FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION Makefile >/dev/null; then
echo "The fuzzers haven't been built for fuzzing (maybe for regression testing !?)"
echo "Please built regarding README.md and try again."
exit 1

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2017-2021 Free Software Foundation, Inc.
* Copyright (c) 2017-2024 Free Software Foundation, Inc.
*
* This file is part of GNU Wget.
*

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2017-2021 Free Software Foundation, Inc.
* Copyright (c) 2017-2024 Free Software Foundation, Inc.
*
* This file is part of GNU Wget.
*

View File

@@ -1,6 +1,6 @@
#!/bin/sh -eu
# Copyright (c) 2017, 2019-2021 Free Software Foundation, Inc.
# Copyright (c) 2017, 2019-2024 Free Software Foundation, Inc.
#
# This file is part of GNU Wget.
#
@@ -17,7 +17,7 @@
# You should have received a copy of the GNU Lesser General Public License
# along with GNU Wget. If not, see <https://www.gnu.org/licenses/>.
if ! grep -q '^CC=.afl-clang-fast' ../config.log; then
if ! grep '^CC=.afl-clang-fast' ../config.log >/dev/null; then
echo "compile first library as:"
echo "CC=afl-clang-fast ./configure"
exit 1

View File

@@ -1,6 +1,6 @@
#!/bin/bash -e
#
# Copyright (c) 2017, 2019-2021 Free Software Foundation, Inc.
# Copyright (c) 2017, 2019-2024 Free Software Foundation, Inc.
#
# This file is part of GNU Wget.
#
@@ -30,7 +30,7 @@ if test -z "$1"; then
exit 1
fi
if ! grep -q FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION Makefile; then
if ! grep FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION Makefile >/dev/null; then
echo "The fuzzers haven't been built for fuzzing (maybe for regression testing !?)"
echo "Please built regarding README.md and try again."
exit 1

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2017-2021 Free Software Foundation, Inc.
* Copyright (c) 2017-2024 Free Software Foundation, Inc.
*
* This file is part of GNU Wget.
*

View File

@@ -1,18 +0,0 @@
 =;
;
;
;
;
;; ;
;
;
;
;;
;
;
; 
;
;
;
; 
;

View File

@@ -0,0 +1 @@
.=;max-age=˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙=-˛

View File

@@ -1 +0,0 @@
*=;expires=M;expires=*;expires=*;expires=M;expires=*;expires=M;expires=M;expires=M;expires=E;expires=*;expires=*;expires=M;expires=*;expires=*;expires=M;expires=M;expires=M;expires=M;expires=E;expires=*;expires=*;expires=M;expires=M;expires=E;expires=*;expires=*;expires=M;expires=*;expires==M;expires=M;expires=M;expires=M;expires=M;expires=M;max-age=t

View File

@@ -1 +0,0 @@
¦=;e;x;s;e;ò;s;`;s;<3B>;„;A;r;s;e;ò;s;`;s;<3B>;„;A;r;s;e;s;c;e;e;s;„;,;s;ò;`;s;<3B>;„;A;r;w;e;;

View File

@@ -1 +0,0 @@
E=;expireS=Mon,2-FeB-0 7:4:2 

View File

@@ -1 +0,0 @@
x=;path=/;path=/;path=/;path=/;path=û;path=0;path=/;path=a;path=/;path=/;path=a;path=û;path=0;path=û;path=1;path=/;path=a;path=/;path=/;path=a;path=û;path=0;path=/;path=a;path=û;path=/;path=a;path=û;path=/;path=û;path=~;path=a;path=/;path=/;path=0;path=/;path=û;path=0;path=/

View File

@@ -1 +0,0 @@
(=;expires=M;expires=M;expires=*;expires=*;expires=p;expires=M;expires=*;expires=*;expires==;expires=M;expires=*;expires=*;expires=M;expires=M;expires=M;expires=M;expires=M;expires=E;expires=M;expires=E;expires=M;expires=M;expires=M;expires=M;expires=M;expires=E;expires=M;expires=E;expires=M;expires=M;expires=M;expires=M;expires=*;expires=*;expires==;expires=*;expires=es=M;expires=*;expires=*;expires=M;expires=M;expires=M;expires=M;expires=M;expires=E;expires=M;expires=*;expires=*;expires==;expires=M;expires=*;expires=*;expires==;expires=M;expires=*;expires=*;expires=p;expires=M;expires=*;ees=M;expires=*;expires=M;expires=M;expires=*;expires=*;expires=M;expires=M;max-age=t

View File

@@ -0,0 +1 @@
**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=

View File

@@ -0,0 +1 @@
s=;expires=o;expires=r;expires=M;expires=R;expires=o;expires=r;expires=M;expires=*;expires=*;expIres==;expires=M;expires=M;expires=M;expires=E;expires=M;expires=M;expires=*;expires=*;expires==;expires=M;expires=~;expires=M;expires=E;eXpiRes=M;expires=o;expires=r;expires=0;expires=*;expires=p;expires=*;expires=*;expires==;expires==;expireS=Mon,9-FeB-129 0:0:8;expires=M;expires=*;expires=M;expires=*;expires=*;expires=M;expires=r;expires=E;expires=2

View File

@@ -1 +0,0 @@
g=;max-age=0;max-age=0;[=

View File

@@ -0,0 +1 @@
x=;path=/;path=û;path=a;path=/;path=/;path=/;path=/;path=a;path=û;path=0;path=/;path=/;path=a;path=û;path=1;path=/;path=a;path=/;path=/;path=a;path=û;path=0;path=/;path=a;path=û;path=/;path=a;path=û;path=a;path=û;path=0;path=/;path=a;path=/;path=/;path=0;path=/;path=/;path=0;path=/;path=0;path=/;path=û;path=a;path=/;path=/;path=/;path=/;path=a;path=û;path=1;path=/;path=/;path=a;path=û;path=0;path=/;path=a;path=/;path=/;path=a;path=û;path=0;path=a;path=û;path=/;path=a;path=û;path=a;path=û;path=0;path=/;path=a;path=/;path=/;path=0;path=/;path=/;path=0;path=/;path=0;path=/;path=t

View File

@@ -1 +0,0 @@
o=;domain=....X

View File

@@ -1 +0,0 @@
*=;expires=M;expires=M;expires=*;expires=M;expires=*;expires=*;expires=M;expires=M;expires=i;expires=E;expires=M;expires=M;expires=M;expires=M;expires=E;expires=M;max-age=t

View File

@@ -1 +0,0 @@
(=;expires==;expires=e;expires=M;expires=*;expires=*;expires==;expires=M;expires=M;expires=4;expires==;expires=M;expires=*;expires=*;expires==;expires=*;expires=M;expires=MonFeB1 7:4:83;expires==;expires=M;expires=*;expires=*;expires=i;expires=M;expires=ª;expires=*;expires==;expires=M;expires=x;expires=4;expires==;expires=M;expires=*;expires=*;expires==;expires=*;expires=M;expires=M;expires=6;expires=<;expires=M;expires=M;expires=E;expires=M

View File

@@ -1 +0,0 @@
_=;max-age=2;max-age=9;max-age=9;max-age=8;max-age=E

View File

@@ -1 +0,0 @@
*=;expires=M;expires=*;expires=*;expires=M;expires=*;expires=*;expires=M;expires=M;expires=M;expires=E;expires=*;expires=*;expires=M;expires=*;expires=*;expires=M;expires=M;expires=M;expires=M;expires=E;expires=*;expires=*;expires=M;expires=*;expires=*;expires=M;expires=E;expires=*;expires=*;expires=M;expires=*;expires=M;expires=*;expires=*;expires=M;expires=M;expires=M;expires=M;expires=M;expires=M;max-age=t

View File

@@ -1 +0,0 @@
_==x;max-age=4; max-age=8; max-agage=8; max-age=8ag; max-age=9; max-age=8; max-age=8ag ;ax-age=8ag; max-age=9; max-age=8; max-age=8ag; max-age=9; max-age=83; max-age=9;max-age=8_;max-age=4=898

View File

@@ -1 +0,0 @@
*=;expires=M;expires=*;expires=*;expires=M;expires=M;expires=M;expires=M;expires=M;expires=E;expires=M;expires=M;expires=E;expires=M;max-age=t

View File

@@ -1 +0,0 @@
U=;e;r;|;„;£;s;ò;`;s;„;A;r;w;e;s;ÿ;c;e;e;r;„;£;s;<3B>;„;A;r;w;ò;s;`;s;<3B>;„;s;<3B>;s;„;A;r;w;e;s;ÿ;c;e;e;r;„;£;s;<3B>;„;A;r;w;ò;s;`;s;<3B>;„;s;<3B>;„;I;<3B>;„;A;r;s;e;„;I;š;„;A;r;s;e;s;c;e;e;;

View File

@@ -1 +0,0 @@
W=;e;<3B>;s;e;ò;s;`;<3B>;ÿ=

View File

@@ -0,0 +1 @@
**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=

View File

@@ -0,0 +1 @@
s=;expireS=Mon<6F><6E><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-5 7:4:2 \ +

View File

@@ -1 +0,0 @@
w=;domain=..x;patH=/p/

View File

@@ -1 +0,0 @@
*=;expires=M;expires=M;expires=M;expires=i;expires=E;expires=M;expires=M;expires=M;expires=M;expires=E;expires==;expires=M;expires=*;expires=*;expires=M;expires=M;expires=i;expires=E;expires=M;expires=M;expires=M;expires=M;expires=E;expires=M;max-age=t

View File

@@ -1 +0,0 @@
=;expireS=Mon,2-FeB-0 7:4:1];expireS=Mon,4-FeB-0 7:4:9=;expireS=Mon,2-FeB-0 7:4:1];expireS=Mon,4-FeB-0 7:4:9=;expireS=Mon,2-FeB-0 2:4:93;expireS=Mon,2-FeB-0 2:4:93

View File

@@ -1 +0,0 @@
(=;expires=M;expires=pp;expires=M;expires=*;expires=*;expires==;expires=M;expires=*;expires=M;expires=M;expires=M;expires=M;expires=M;expires=E;expires=M;expires=E;expires=M;expires=M;expires=*;expires=*;expires=M;expires=M;expires=M;expires=M;expires=E;expires=M;expires=E;expires=M;M;expires=M;expires=M;expires=M;expires=M;expires=E;expires=M;expires=E;expires=M;expires=M;expires=M;expires=M;expires=M;expires=M;expires=E;expires=M;expires=E;expires=M;expires=*;expires==;expires=M;expires=*;expires=*;expires=M;expires=M;expires=M;expires=*;expires=E;expires=M;expires=E;expires=*;expires==;expires=M;expires=*;expires=*;expires=M;expires=M;expires=M;expires=*;e=E;expires=M;expires=M;expires=*;expires=*;expires=M;expires=M;expires=M;expires=*;expires==;expires=M;expires=*;expires=*;expires=M;expires=M;expires=E;expires=M;max-age=t

View File

@@ -1,9 +0,0 @@
 =;
;
;
;
;;
;
;
; 
;

View File

@@ -1 +0,0 @@
ø=;domain=..................x

View File

@@ -0,0 +1 @@
´=;DOMAQM;DOMAIW;DOMAIX;DOMAIX;DOMAYX;DOMAIX;DOMAIX;DOMAIX;DOMAIX;DOMAIX;DOMAIX;DOMAIX;DOMAYX;DOMAIX;DOMAIX;DOMAIX;DOMAIX;DOMAIM;DOMAII;DOMAIX;DOMAIX;DOMAIX;DOMAQM;DOMAIX;DOMAIX

View File

@@ -0,0 +1 @@
__Host=-ID__Host=-IDx; expires=Mon, 28 FeB 2016 07:48:9+++++st=-ID__Host=-IDx; expires=Mon, 28 FeB 2016 07:48:9++++++;+++++++;œŠ((:97 8:97 x; expires=Mon;, 25 F 20ÏÉpoßD=

View File

@@ -0,0 +1 @@
**=;**=;**=;**=;**=;**=

View File

@@ -0,0 +1 @@
´=;DOMAIW;DOMAIX;DOMAIX;FOMAIX;DOMAIX;DOMAIX;DOMAIX;DOMAIX;DOMAIX;DOMAIX;DOMAIX;DOMAIX;DOMAIX

View File

@@ -1 +0,0 @@
n=;EXpiRes=MonFeB73:1:84<38>

View File

@@ -0,0 +1 @@
}=;domain=

View File

@@ -0,0 +1 @@
**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=

View File

@@ -0,0 +1 @@
u=;domain=X;path=/p/

View File

@@ -0,0 +1 @@
**=;**=;**=

View File

@@ -1 +0,0 @@
,=;{;A;,;e;;E;e;!;};=

View File

@@ -0,0 +1 @@
X=;domaIn=X

View File

@@ -1 +0,0 @@
(=;expires=M;expires=M;expires=*;expires=*;expires=p;expires=M;expires=*;expires=*;expires==;expires=M;expires=*;expires=*;expires=M;expires=M;expires=M;expires=M;expires=M;expires=E;expires=M;expires=E;expires=M;expires=M;expires=M;expires=M;expires=M;expires=E;expires=M;expires=E;expires=M;expires=M;expires=M;expires=M;expires=*;expires=*;expires==;expires=*;expires==;expires=M;expires=*;expires=*;expires=M;expires=M;expires=M;expires=M;expires=M;expires=E;expires=M;expires=*;expires=*;expires==p;expires=M;expires=*;expires=*;expires==;expires=M;expires=*;expires=*;expires=p;expires=M;expires=*;expires=*;expires==;expires=M;expires=M;expires=*;expires=*;expires=M;expires=M;expires=*;expires=*;expires=M;expires=M;max-age=t

View File

@@ -0,0 +1 @@
**=

View File

@@ -1 +0,0 @@
a=;path=/;path=/;path=/;path=5;path=/;path=/;path=5

View File

@@ -1 +0,0 @@
¦=;e;x;s;e;ò;e;x;s;e;ò;s;`;s;<3B>;„;[;r;s;se;ÿ

View File

@@ -0,0 +1 @@
**=;**=

View File

@@ -1 +0,0 @@
x=;path=.;path=/;path=/;path=/;path=a;path=û;path=0;path=/;path==;path=a;path=û;path=0;path=/;path=a;path=/;path=/;path=a;path=û;path=0;path=/;path=a;path=û;path=/;path=a;path=û;path=û;path=/;path=a;path=û;path=/;path=û;path=1;path=/;path=a;path=.;path=/;path=/;path=/;path=a;path=û;path=0;path=/;path=-;path=/;path=û;path=0;path=/;path=a;path=/;path=/;path=a;path=û;path=0;path=/;path=a;path=û;path=/;path=a;path=û;path=û;path=/;path=a;path=û;path=/;path=û;path=5;path=/;path=a;path=/;path=/;path=0;path=/;path=û;path=/;path=0;path=/;path=û;path=0;path=/;path=5;path=/;path=t

View File

@@ -0,0 +1 @@
**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=;**=

View File

@@ -1 +0,0 @@
c=;domain=......x

View File

@@ -1 +0,0 @@
¿=;dOm ×.;dOmain=........................x

View File

@@ -1 +0,0 @@
+=;path=/p/;domain=....x

View File

@@ -1 +0,0 @@
(=;expires=M;expires=M;expires=*;expires=*;expires=p;expires=M;expires=*;expires=*;expires==;expires=M;expires=*;expires=*;expires=M;expires=M;expires=M;expires=M;expires=M;expires=E;expires=M;expires=E;expires=M;expires=M;expires=*;expires=*;expires=M;expires=M;expires=M;expires=M;expires=E;expires=M;expires=E;expires=M;expires=*;expires==;expires=M;expires=*;expires=*;expires=M;expires=M;expires=Mp;expires=M;expires=*;expires=*;expires==;expires=M;expires=*;expires=*;expires=M;expires=M;expires=M;expires=M;expires=M;expires=E;expires=M;expires=E;expires=M;max-age=t

View File

@@ -0,0 +1 @@
ð=;pAtH=

View File

@@ -1,7 +0,0 @@
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
]

View File

@@ -1 +0,0 @@
(=;expires=M;expires=pp;expires=M;expires=*;expires=*;expires==;expires=M;expires=*;expires=M;expires=M;expires=M;expires=M;expires=M;expires=E;expires=M;expires=E;expires=M;expires=M;expires=*;expires=*;expires=M;expires=M;expires=M;expires=M;expires=E;expires=M;expires=E;expires=M;expires=*;expires==;expires=M;expires=*;expires=*;expires=M;expires=M;expires=M;expires=*;expires=E;expires=M;expires=E;expires=M;expires=*;expires==;expires=M;expires=*;expires=*;expires=M;expires=M;expires=E;expires=M;max-age=t

View File

@@ -1 +0,0 @@
=;expireS=Mon,2-FeB-0 7:4:9t

View File

@@ -1 +0,0 @@
*=;expires=M;expires=M;expires=M;expires=i;expires=E;expires=M;expires=E;expires=M;max-age=t

View File

@@ -1 +0,0 @@
+=;path=/p/;domain=...x

View File

@@ -1 +0,0 @@
Ö=;skre;sece;w•r;ec/š;skre;sece

View File

@@ -1 +0,0 @@
\=;expireS=Mon,2-FeB-0 7:4:9M;expireS=Mon,2-FeB-0 7:4:6”;expireS=Mon,2-FeB-0 7:4:6”;expireS=Mon,2-FeB-0 7:4:9e;expireS=Mon,2-FeB-0 7:4:4:;expireS=Mon,2-FeB-0 7:4:9M;expireS=Mon,2-FeB-0 7:4:9M;expireS=Mon,2-FeB-0 7:4:6e;expireS=Mon,2-FeB-0 7:4:9O;expireS=Mon,2-FeB-0 7:4:3:;expireS=Mon,1-FeB-0 7:4:9O;expireS=Mon,2-FeB-0 7:4:9%;expireS=Mon,2-FeB-0 7:4:9 r;expireS=Mon,2-FeB-0 7:8:4:;expireS=Mon,2-FeB-0 7:4:9o;expireS=Mon,2-FeB-0 7:4:9M;expireS=Mon,2-FeB-0 7:4:6e;expireS=Mon,2-FeB-0 7:4:9O;expireS=Mon,2-FeB-0 7:4:4:;expireS=Mon,3-FeB-0 7:4:9o;expireS=Mon,2-FeB-0 7:4:9%;expireS=Mon,1-FeB-0 7:4:9%

View File

@@ -1 +0,0 @@
e=;expireS=Mon,1FeB0 7:4:9

View File

@@ -1 +0,0 @@
(=;expires=M;expires=MonFeB1 7:4:83;expires==;expires=M;expires=*;expires=*;expires==;expires=*;expires=M;expires=MonFeB1 7:3:83;expires==;expires=M;expires=*;expires=*;expires==;expires=M;expires=M;expires=M;expires=M;expires=M;expires=E;expires=M

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2017-2021 Free Software Foundation, Inc.
* Copyright (c) 2017-2024 Free Software Foundation, Inc.
*
* This file is part of GNU Wget.
*

View File

@@ -0,0 +1 @@
url(%E)url(%l)url(%l)url(%E)url(%l)url(%E)url(%l)url(%l)url(%l)url(%E)url(%l)url(%l)url(%E)url(%l)url(%E)url(%l)url(%l)url(%E)url(%l)url(%l)url(%E)url(%l)url(%l)url(%l)url(%l)url(%E)url(%l)url(%E)url(%l)url(%l)url(%E)url(%l)url(%l)url(%E)url(%l)url(%l)url(%E)url(%l)url(%l)url(%l)url(%E)url(%l)url(%l)url(%E)url(%l)url(%l)url(%E)url(%l)url(%l)url(%l)url(%E)url(%l)url(%E)url(%l)url(%l)url(%E)url(%l)url(%l)url(%E)url(%l)url(%l)url(%E)url(%l)url(%l)url(%E)Url(%l)url(%l)url(%l)url(%E)url(%l)url(%l)url(%E)url(%l)url(%E)url(%l)url(%l)url(%E)url(%l)url(%l)url(%E)url(%l)url(%l)url(%E)url(%l)url(%E)url(%l)url(%l)url(%E)url(%l)url(%l)url(%E)url(%l)url(%l)url(%E)url(%l)url(%l)url(%E)url(%l)url(%E)url(%l)url(%l)url(%E)url(%l)url(%l)url(%E)url(%l)url(%l)url(%E)url(%l)url(%l)url(%E)url(%l)url(%l)url(%E)url(%l)url(%l)url(%l)url(%E)url(%l)url(%E)url(%l)url(%l)url(%l)url(%E)url(%l)url(%E)url(%l)url(%l)

Some files were not shown because too many files have changed in this diff Show More