b9accafecb
* libwget/io.c (getline_internal): Clear memory to not trigger valgrind
2024-05-21 13:55:38 +02:00
de294c8ddf
* libwget/ssl_gnutls.c (verify_certificate_callback): Fix gcc warning -Wjump-misses-init
2024-05-19 20:02:31 +02:00
81cf05e1da
Move Win32 console save/restore from libwget into wget.c.
...
* libwget/init.c: Remove Win32 console code.
* src/wget.c: Add Win32 console code.
2024-05-19 19:58:29 +02:00
f4e7c46073
* libwget/ssl_gnutls.c (verify_certificate_callback): Fix 'do not translate debug strings'
2024-05-19 19:36:59 +02:00
543e1f2708
* libwget/ssl_gnutls.c (verify_certificate_callback): Warn about OCSP privacy leak
2024-05-19 19:29:32 +02:00
2b6bd2e190
Windows: handle ctrl+break to restore console modes
...
* libwget/init.c: Add HandleCtrlEvent(),
(global_exit): Restore console modes,
(global_init): Save console modes.
Copyright-paperwork-exempt: Yes
2024-05-19 13:34:30 +02:00
c556a3226a
* libwget/ssl_openssl.c (verify_ocsp): Fix segfault when OCSP response is missing
2024-05-19 13:05:11 +02:00
c341fcd1df
Disable explicit OCSP requests by default for TLS library functions
...
* libwget/ssl_openssl: Disable explicit OCSP requests by default.
* libwget/ssl_gnutls: Likewise.
* libwget/ssl_wolfssl.c: Likewise.
2024-05-19 12:46:40 +02:00
0895f92308
* libwget/ssl_gnutls.c: Improve messages for OCSP stapling
2024-05-18 14:46:07 +02:00
a96f88a054
-* libwget/ssl_gnutls.c (cert_verify_ocsp): Fix segfault when OCSP response is missing
2024-05-12 19:51:03 +02:00
53a8a88e84
Fix OCSP verification of first intermediate certificate.
...
* libwget/ssl_gnutls.c (verify_certificate_callback): Fix off-by-one check.
See https://gitlab.com/gnuwget/wget2/-/issues/664#note_1901610438
2024-05-12 15:14:36 +02:00
7929bf887c
Allow option --no-tcp-fastopen to work on Linux kernels >= 4.11.
...
* libwget/net.c (set_socket_options): Add check for tcp->tcp_fastopen.
Copyright-paperwork-exempt: Yes
2024-05-11 18:55:49 +02:00
761ae5082d
* libwget/cookie.c (cookie_db_load): Fix return value
2024-04-28 17:37:14 +02:00
235df6545e
* libwget/io.c (wget_update_load_fn): Fix parameter name
2024-04-28 17:36:29 +02:00
62ba66116c
Fix progress bar for multiple downloads
...
* libwget/bar.c (wget_bar_slot_begin): Remove numfiles handling,
(struct bar_slot): Remove member 'numfiles'.
Report: https://github.com/rockdaboot/wget2/issues/307
2024-04-01 18:10:58 +02:00
fbfa096506
* libwget/net.c (wget_tcp_connect): Fix return code on resolve failure
2024-04-01 15:43:45 +02:00
25b28e2c1a
* libwget/xml.c (xml_context): Add docs to member fields
2024-03-29 12:01:32 +01:00
9aeab55d09
Fix --no-parent for denormalized paths
...
* libwget/iri.c (wget_iri_parse): Normalize path part of URL.
* unit-tests/test.c (test_iri_parse): Add test with denormalized path.
2024-03-28 18:17:26 +01:00
d55ecc7113
Update gnulib link libraries
...
* fuzz/Makefile.am: Update gnulib link libraries.
* libwget/Makefile.am: Likewise.
* src/Makefile.am: Likewise.
* tests/Makefile.am: Likewise.
* unit-tests/Makefile.am: Likewise.
2024-03-24 15:58:27 +01:00
07b15e71f4
* libwget/robots.c: Fix robots.txt parser
...
Co-authored-by: Tim Rühsen <tim.ruehsen@gmx.de >
2024-03-15 19:33:13 +01:00
a033e97ac0
* libwget/cookie.c (cookie_db_load): Fix EOL removal
2024-01-07 12:47:24 +01:00
188989e067
Update copyright year
2024-01-07 12:41:02 +01:00
c51cc7d7e2
Fix double free in cookie_db_load().
...
Fixes #650
* libwget/cookie.c (cookie_db_load): Call wget_cookie_init() at top of read loop.
2024-01-07 12:09:01 +01:00
7975ef485c
libwget/ssl_wolfssl.c (wget_ssl_init): Combine CA cert directory and file
2024-01-07 10:57:17 +01:00
fb69b5d280
libwget/ssl_wolfssl.c (wget_ssl_init): Use wolfSSL_CTX_load_system_CA_certs()
2024-01-06 19:18:20 +01:00
1bab5454f9
Fix IPv6 address representation
...
* libwget/dns.c (resolve): Fix IPv6 in debug message,
(wget_dns_cache_ip): Fix IPv6 in error message,
(wget_dns_resolve): Fix IPv6 in debug message.
* libwget/dns_cache.c (wget_dns_cache_get): Fix IPv6 in debug message.
* libwget/hsts.c (hsts_db_add_entry): Fix IPv6 in debug message.
* libwget/http.c (wget_http_create_request): Fix IPv6 in Host header,
(establish_proxy_connect): Fix IPv6 in CONNECT and in Host header.
* libwget/ip.c (wget_ip_is_family): Cosmetic change.
* libwget/iri.c (wget_iri_get_connection_part): Fix IPv6 in URL creation.
* libwget/net.c (debug_addr): Fix IPv6 in debug message.
* src/options.c (stats_callback_dns): Fix IPv6 in output.
* src/wget.c (test_modify_hsts): Fix IPv6 in console output,
(http_create_request): Fix IPv6 in Referer header.
* unit-tests/test.c (test_iri_parse): Add two IPv6 parsing tests.
* libwget/Makefile.am (libwget_dnscache.la): Link with libwget_ip.la,
(libwget_hsts.la): Link with libwget_ip.la.
2023-12-17 18:52:27 +01:00
ae24f83fd0
* libwget/netrc.c (wget_netrc_db_load): Add fetchmail compatibility (user and passwd)
2023-11-26 19:01:30 +01:00
8271687e29
Rename internal functions
2023-11-18 18:45:35 +00:00
b23c934422
Rename internal functions
2023-11-18 18:45:35 +00:00
a6ab8a1d0c
Remove empty guard
2023-11-18 18:45:35 +00:00
0aa23dfc79
Fix NULLABLES
2023-11-18 18:45:35 +00:00
829528217c
Extract common HTTP functions
...
* libwget/http.h: new functions wget_http_connection_is_aborted,
wget_http_fix_broken_server_encoding,
wget_decompress_get_body_cb, wget_decompress_error_handler_cb,
wget_http2_open, wget_http2_close, wget_http2_send_request,
wget_http2_get_response_cb
* libwget/http2.c: new file
2023-11-18 18:45:35 +00:00
ec77b3ebf0
* libwget/http_parse.c: Make http_isseparator an inline function
2023-11-17 20:00:00 +01:00
7014ef7a51
* unit-tests/test.c: Add tests for wget_http_parse_full_date()
2023-11-17 19:40:51 +01:00
7bf93ff6c6
Add support for another non-standard cookie timstamp format
...
- example: Sun Nov 26 2023 21:24:47
* libwget/http_parse.c (wget_http_parse_full_date): Parse additional format.
2023-11-17 19:39:25 +01:00
1a886595e6
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.
* libwget/http.c (wget_http_open): Retrieve proxy via libproxy.
Copyright-paperwork-exempt: Yes
2023-11-04 16:02:45 +00:00
0415d036b3
Fix minor typos in comments
2023-11-04 14:36:43 +01:00
75775a77e9
* libwget/ssl_openssl.c (tls_exit): Fix syntax-check
2023-10-03 18:10:39 +02:00
c569c7f4f8
* libwget/http.c: Fix NULLABLE issues
2023-10-03 18:03:00 +02:00
d7afffb981
* libwget/cookie.c: Fix NULLABLE issues
2023-10-03 17:53:08 +02:00
56d77a8a30
* libwget/metalink.c (add_mirror): Fix NULLABLE issue
2023-10-03 17:51:03 +02:00
75dc1467e0
* libwget/cookie_parse.c: Fix NULLABLE issues
2023-10-03 17:49:26 +02:00
4f85f69837
* libwget/html_url.c (html_get_url): Fix NULLABLE issue
2023-10-03 17:46:58 +02:00
c9d57f0577
* libwget/hpkp_db.c: Fix NULLABLE issues
2023-10-03 17:44:53 +02:00
61ba540ea6
* libwget/hpkp.c: Fix NULLABLE issues
2023-10-03 17:42:08 +02:00
2156dca17e
* libwget/css_url.c (urls_to_absolute): Silence clang nullability checks
2023-10-03 17:34:01 +02:00
0b5be69ecd
* libwget/ssl_gnutls.c (wget_ssl_open): Check ctx for NULL
2023-10-03 17:28:28 +02:00
6836b7d873
* libwget/ssl_openssl.c (tls_exit): Don't call CRYPTO_free_ex_index() when build with LibreSSL
2023-09-30 20:02:23 +02:00
4b872ad601
dns: Merge SOCK_STREAM and SOCK_DGRAM addrinfo lists
...
We want resolve() to return both, TCP and UDP sockets.
On Linux, we could set .ai_socktype = 0 on the getaddrinfo() hints which
would return us all the socket types available. However, that is not
accepted on Windows. Instead, we ask for TCP and UDP sockets separately
and then merge the two lists.
2023-09-07 19:55:49 +02:00
15ba1db248
Update copyrights
2023-08-31 12:57:30 +02:00