Commit Graph

512 Commits

Author SHA1 Message Date
Martin Algesten
c59632bd97 Use Url (instead of String) in internal history var 2021-12-19 11:00:39 +01:00
Martin Algesten
2a5ab43c8c Expose RedirectAuthHeaders enum at crate root 2021-12-19 11:00:39 +01:00
Martin Algesten
8d33318a23 Rename setter to be consistent with other builder settter 2021-12-19 11:00:39 +01:00
Martin Algesten
b033e0f614 Doc fixes to RedirectAuthHeaders 2021-12-19 11:00:39 +01:00
llde
26a3715f62 Revert move of variable 2021-12-19 11:00:39 +01:00
llde
653f791638 Create new configuration option for redirect preserving authorization header in Agent. Handle new option in Unit 2021-12-19 11:00:39 +01:00
llde
38ad90307d Preserve Authorization in same host redirects, when scheme and port are equals 2021-12-19 11:00:39 +01:00
soruh
61e2402045 deprecate using SerdeValue, SerdeMap and serde_to_value
as they are just wrapper around serde_json::{Value, Map, to_value}.
Instead expose the serde_json and serde crates used.
2021-12-17 20:12:07 +01:00
soruh
59f1fab4d3 allow send_json to send any serde::Serialize value 2021-12-17 20:12:07 +01:00
Jacob Hoffman-Andrews
56276c3742 Add support for alternate TLs implementations. 2021-12-17 17:47:30 +01:00
Malloc Voidstar
1c1dfaa691 Bump rustls to 0.20.1; add src to rustls error (#438) 2021-12-17 00:32:00 -08:00
Martin Algesten
a6d1750f14 Fix native-certs and add to test matrix
Close #239
2021-11-28 22:45:16 +01:00
Jochen Kupperschmidt
69ad3aabb0 Add shortcuts for PATCH (again)` 2021-11-26 13:50:29 +01:00
Malloc Voidstar
31dd67380e Return error for InvalidDnsNameError, don't panic (#436)
Can't provide src for the error as rustls 0.20 didn't implement stdlib Error for it; it's on main and targeted for 0.20.1.
2021-11-12 17:15:39 -08:00
Jacob Hoffman-Andrews
f22e67be4c Fix agent test. 2021-10-21 07:38:59 +02:00
Jacob Hoffman-Andrews
3bc7d8336b Fix lint 2021-10-21 07:38:59 +02:00
Jacob Hoffman-Andrews
5fa912c4d3 Update to rustls 0.20, webpki 0.22 2021-10-21 07:38:59 +02:00
Andrew Hickman
eb78813df5 Redact sensitive headers when logging prelude (#415)
Closes #414
2021-10-05 08:57:16 -07:00
Jon Gjengset
1ec60e1c15 Remove trailing newline from testing response
The newline becomes part of the response body, even though it was not passed in
as `body`, which makes `Response::new` difficult to use with anything that
checksums data contents for example. Arguably there should also be a mechanism
for passing in `[u8]` bodies, but that's for a separate feature request.
2021-10-02 18:51:59 +02:00
Jacob Hoffman-Andrews
535bc4b4cb Remove two unused fields. (#425)
Co-authored-by: Michael Richardson <mcr@sandelman.ca>
2021-10-02 01:04:36 -07:00
Martin Algesten
551f4289fb Update all dependencies
webpki and webpki roots are not compatible with current rustls,
so they are held back.:wq
2021-08-23 21:21:39 +02:00
Martin Algesten
485647d5de Fix proxy urls that end with trailing slash
Close #402
2021-08-23 20:57:29 +02:00
Martin Algesten
641eb3df10 Fix overlapping redirect tests
Two tests were using /redirect_post1, which breaks if they are running in parallel.
2021-08-23 20:52:08 +02:00
Keijia
2869a80130 oh, use None != proto instead of proto.is_some() 2021-08-23 20:46:44 +02:00
Keijia
c7292919e5 fix build fails 2021-08-23 20:46:44 +02:00
Keijia
f6f021cdbb highlight that socks:// prefix is equal to socks5:// 2021-08-23 20:46:44 +02:00
Keijia
35c472507b whoops, fix tests for socks4://and socks4a:// 2021-08-23 20:46:44 +02:00
Keijia
401d051bd1 add socks4a:// and socks:// tests 2021-08-23 20:46:44 +02:00
Keijia
12b49e59f4 whoops, fix HTTPConnect proxies 2021-08-23 20:46:44 +02:00
Keijia
37e19b34ec add socks4 to readme 2021-08-23 20:46:44 +02:00
Keijia
bdaa9fc68c add support for socks4 and socks4a 2021-08-23 20:46:44 +02:00
Martin Algesten
526eb7b9e0 Fix clippy lints 2021-08-23 20:45:33 +02:00
Jelle Besseling
6797258e9d Use debug logs when making requests 2021-08-14 14:36:25 +02:00
Niketh Murali
4665b0aa5a Fix clippy warnings
Fix linter warning from clippy about unnecessary borrows - "This expression borrows a reference ... that is immediately dereferenced by the compiler"
2021-08-13 09:26:04 +02:00
Tshepang Lekhonkhobe
eb04d96af8 Fix a typo (#397) 2021-07-09 09:10:22 -07:00
Gus Power
37e1e91e22 Clear Content-Length header from redirected requests (#394)
This PR removes the Content-Length header from subsequent redirect requests if set.
A test verifies the new behaviour.
2021-06-18 16:12:31 -07:00
Martin Algesten
989995d1ba Fix clippy lints (#387) 2021-05-11 18:05:17 -07:00
Berrysoft
c06c345f28 Remove extra clone when request with Url 2021-05-11 20:18:34 +02:00
12932
db5203d1a0 fix typo "memroy" to "memory" (#379) 2021-04-26 11:41:26 -07:00
Jacob Hoffman-Andrews
50d9ccff8c Don't reuse conns with bytes pending from server (#372)
This makes us less likely to try and reuse a closed connection, which
produces problems in particular for requests that can't be retried.

Fixes #361
Fixes #124
2021-04-18 10:46:20 -07:00
Martin Algesten
4ade506047 Allow upper_case_acronyms 2021-04-17 12:30:39 +02:00
Martin Algesten
3cfa9e6b35 Refactor into_string body reading 2021-03-25 21:49:39 +01:00
Martin Algesten
7c6ed53df3 Move Response::unit and stream to the heap 2021-03-25 21:04:12 +01:00
Martin Algesten
cfaca317c6 Provide url in Response Debug impl 2021-03-25 07:45:34 +01:00
Jacob Hoffman-Andrews
3044ae7efd Add size limits on responses (#351)
This prevents a malicious server from running the client out of memory
by returning a very large body.

Limit into_string() to 1 megabyte.
Limit individual header fields to 100 kilobytes.
Limit number of header fields to 100.

Part of #267
2021-03-24 13:28:23 -07:00
Martin Algesten
40e156e2a3 Url access functions for Request (simpler) 2021-03-24 20:58:47 +01:00
Martin Algesten
b42e9afd71 Fix clippy warnings 2021-03-24 20:29:43 +01:00
Martin Algesten
ea53c7cedd Use is_tchar for cookie name check 2021-03-24 20:09:27 +01:00
Martin Algesten
5c9b1b9a0c Enforce cookie RFC name/value rules 2021-03-24 20:09:27 +01:00
Martin Algesten
c5c40cf138 Stop percent encoding cookies 2021-03-24 20:09:27 +01:00