* docs/wget2.md: Document --ocsp default value as 'off'.
* src/options.c (struct config): Disable .ocsp by default.
OCSP validation of the server certificate implies privacy issues:
- The OCSP request tells the CA which web service the client tries to reach.
- The OCSP requests are sent via unencrypted HTTP, so every "listener in the
middle" can see which web service the client tries to connect.
Additionally, the OCSP requests slow down operation and may cause unexpected
network traffic, which may trigger security alarms unnecessarily.
Due to these issues we explicitly disable OCSP by default.
* configure.ac: Enable DANE if libgnutls-dane is installed,
add option --without-libdane.
* docs/wget2.md: Add docs for option --dane.
* include/wget/wget.h: Add WGET_SSL_DANE.
* libwget/ssl_gnutls.c: Include include <gnutls/dane.h> if requested,
(struct config): New member 'dane',
(wget_ssl_set_config_int): Set value for dane via WGET_SSL_DANE,
(wget_ssl_open): Call dane_verify_session_crt().
* src/options.c (options): Add entry for --dane,
(init): Set config.dane via wget_ssl_set_config_int().
* src/wget_options.h (struct config): Add member 'dane'.
This is Wget1.x compatible.
* docs/wget2.md: Document the new behavior.
* libwget/netrc.c (wget_netrc_db_load): Amended the code to allow \ and "".
* unit-tests/test.c (test_netrc): Add tests.
Some terminal emulators now allow printing hyperlinks through escape
sequences. See
https://gist.github.com/egmontkob/eb114294efbcd5adb1944c9f3cb5feda for
more information.
Hyperlink support cannot be gauged accurately. And while most terminals
just ignore the extra escape sequences, older versions of vte actually
print the URI along with some garbage. So, in this patch, the hyperlink
support is disabled by default and used only if the user explicitly
requests it. Once there is a way to query for feature support in
terminals, this can be intelligently enabled automatically.
* bootstrap.conf: Add new module xgethostname
* src/wget_options.h: Add a new option hyperlink and a global variable
hostname
* src/options.c: Add a new command line option --hyperlink. This is the
same option name as `ls` from coreutils for consistency across
programs
(init): If the user requests hyperlink support, get the hostname and
store it. This is to prevent having to get the hostname for each
downloaded file
* src/wget.c (prepare_file): Print the filename with a hyperlink if the
user requests it.
* docs/wget2.md: Add documentation entry for hyperlinks
* src/options.c: Add --convert-file-only handling
* src/wget_options.h (config): Add bool convert_file_only
* src/wget.c (html_parse): conversions initialized when
convert_file_only is set
(main): Call convert_links when config.convert_file_only
(convert_links): move conversion logic to convert_link_whole and
convert_link_file_only
New function convert_link_whole: convert whole URL
New function convert_link_file_only: convert filename part of URLs
* tests/test-convert-file-only.c: testcase for --convert-file-only
with -E
* tests/Makefile.am: add test-convert-file-only object
* docs/wget2.md: Removed [unimplemented-option] from
--convert-file-only
* src/wget_options.h (config): Added method, body_data, body_file
* src/options.c (options): Added --method, --body-data, --body-file
handling
* src/wget_job.h (JOB): New variable bool redirect_get
* src/wget.c (http_create_request): Added support for user
provided HTTP method and request body
(process_response_header): Set redirect_get to TRUE for 30x
response codes
* tests/test-redirection.c: Added test for redirection with
--method=POST
* docs/wget2.md: Removed [unimplemented-option] for --method,
--body-data, --body-file
* cfg.mk: Multiple changes.
(sc_GPL_version): Don't exclude all files when only one has a parsing
issue
(sc_po_check): Tests should always output English. Their output is for
developers, not users
(sc_prohibit_magic_number_exit): tests/test-plugin.c has a parsing
issue that has been reported to gnulib. Others should be checked.
(sc_trailing_blank): Fixed the relevant files instead of ignoring them
(sc_two_space_separator_in_usage): Doesn't seem to trigger on removal
(sc_prohibit_empty_lines_at_EOF): Same
(sc_prohibit_sprintf): Same
(sc_prohibit_printf): Re-arrange within file
(sc_prohibit_free): Same
(sc_prohibit_alloc): Same
(sc_gettext_printf): Same
* docs/DoxygenLayout.xml: Remove trailing whitespaces
* docs/libwget.doxy.in: Same
* tests/libtest.c: Don't internationalize test suite strings
* tests/test-*.c: Use EXIT_FAILURE and EXIT_SUCCESS instead of 1 and 0
* src/wget.c: Likewise, following RFC 7231
* tests/test--filter-mime-type.c: Added tests to ensure this behavior is present
* docs/wget2.md: Added this new behavior to the docs
* src/options.c: Added new option --if-modified-since, and prevented certain combination of flags
* src/wget.c: Added -N --no-if-modified-since implementation itself
* src/wget_job.h: Added bool 'recursive_send_head' to JOB structure
* src/wget_options.h: Added char 'if_modified_since' to config structure
* tests/test--accept.c: Added tests that make use of -N --no-if-modified-since
* tests/test--filter-mime-type.c: Added tests that make use of -N --no-if-modified-since
* tests/test-include-and-exclude-directories.c: Added tests that make use of -N --no-if-modified-since
* tests/test-timestamping.c: Added tests for -N --no-if-modified-since
* docs/wget2.md: Unmarked --no-if-modified-since as "Not Implemented Yet"
* docs/wget2.md: There is no default progress value
* src/options.c: If no progress type specifier is given return an error
* src/wget.c: Set global file size and already downloaded amount when continuing a download
* src/wget.c: Added fork_to_background(), in order to implement --background
* src/options.c: Added "--background" to the options list
* src/wget_options.h: Added background member to structure config
* docs/wget2.md: Background option marked as "Not supported on Windows"
* docs/wget2.md: Added documentation for --ocsp-server
* libwget/ssl_gnutls.c: Modified to use value from option parameter
* src/options.c: Added option handler
* src/wget_options.h: Declared storage for option parameter