* implementated very basic callback functions for http3
* implemented wget_http3_send_request to create a http3 requests
* reimplemented the internal working of wget_queue_peak_untransmitted
* example code for sending http3 request implemented
* quic_write_read.c file created to demonstrate the working of wget_quic_read
and wget_quic_write hand in hand while configuring it to the QUIC ECHO server
* quic_write.c file created to make provide a example of write.
* A sample string initially pushed into the stream and then the stream
structure further utilised for sending the data over socket.
* Simplified the implementation of wget_quic_connect() and wget_ssl_quic_connect()
* Segregated the function wget_quic_connect into wget_quic_connect and wget_quic_handshake
* examples/Makefile.am: Add batch_loader.c
* examples/batch_loader.c: New example code
This example uses 500 threads to process domains / URLS from
stdin. It downloads the URL and creates a stats entry in out.csv.
Check the source for details.
* examples/Makefile.am: Add rule for examples/check_url_types
* examples/check_url_types.c: New file
This adds a Alexa top-X scanner to find out the numbers of
http:// links in landing pages retrieved via https://.
It follows and counts redirections separated by secure and insecure
ones, flags if the landing page was completely secure, counts links
in the landing HTML page (same-page, external, http, https).
* .gitignore: New entry examples/http_multi_get
* Makefile.am: Move subdir 'examples' before 'src'
* examples/Makefile.am: Add http_multi_get
* examples/http_get2.c (main): Adapt code to API changes
* examples/http_multi_get.c: New example to show async/parallel
requests
* examples/websequencediagram.c (main): Adapt code to API changes
* include/libwget.h.in: New functions wget_http_request_set_header_cb,
wget_http_request_set_body_cb, wget_http_request_set_int.
Changed params of wget_http_get_response.
Removed wget_http_get_response_func, wget_http_get_response_stream,
wget_http_get_response_fd.
Changed params of wget_http_get_response_cb.
Add members pending_requests, received_http2_responses,
pending_http2_requests to wget_http_connection_t.
Add member req to wget_http_response_t.
Add members header_callback, body_callback, header_user_data,
body_user_data, response_keepheader to wget_http_request_t.
New function types wget_http_header_callback_t and
wget_http_body_callback_t.
* libwget/http.c: Implementation of the changes in include/libwget.h.in.
* libwget/http_highlevel.c: Adapt code to API changes
* libwget/ssl_gnutls.c: Fixed defaults for SNI, OCSP and
ALPN.
Adapt code to API changes.
* src/options.c: Reflect changes in libwget/ssl_gnutls.c
* src/wget.c: Adapt code to API changes
* examples/websequencediagram.c: New file
* examples/websequencediagram_high.c: New file
* examples/Makefile.am: Add websequencediagram[_highlevel]
These examples show how to do two requests on one connection,
a POST and a GET, saving the downloaded body to disk.
websequencediagram uses the low-level API.
websequencediagram_highlevel uses the high-level API.