Gleb Pomykalov
0f32c4a01a
Update to hyper 0.13
2019-12-10 16:24:05 -08:00
Sean McArthur
40d4d05e4e
Remove username and password when parsing proxies ( #686 )
2019-10-17 17:27:25 -07:00
Sean McArthur
5b55aee1a9
Send user-agent in proxy tunnel requests
2019-10-03 10:34:51 -07:00
Sean McArthur
53495e1526
Redesign Error type
...
- The `Error`'s kind is a now a set of variants depending on the context
of when an error could occur.
- If another error was the cause, it is now always the `source`.
Along with the `is_*` methods, this should help in understanding *when*
a certain error occurred. For example, an error setting the TLS
certificates will return a builder error, with the TLS error as the
source. This should help differentiate from a TLS error that happens
when connecting to a server.
It also makes the internal code less dependent on all the exact
dependencies that can be enabled or disabled.
2019-09-17 14:23:22 -07:00
Constantin Nickel
b1a90eb402
Prune the futures dependencies
2019-09-12 07:52:31 -07:00
Sean McArthur
5fb04356fc
Re-enable rustls feature ( #625 )
2019-09-09 12:45:45 -07:00
Sean McArthur
ba7b2a754e
refactor all to async/await ( #617 )
...
Co-authored-by: Danny Browning <danny.browning@protectwise.com >
Co-authored-by: Daniel Eades <danieleades@hotmail.com >
2019-09-06 17:22:56 -07:00
danieleades
cf8944a0f0
cargo fmt ( #604 )
...
Run rustfmt and setup CI to check for it.
2019-08-29 09:52:39 -07:00
Daniel Eades
4bb4149b63
remove unnecessary double-colons
2019-08-16 12:59:55 -07:00
Daniel Eades
e45d77584b
repair a dodgy find and replace
2019-08-16 12:59:55 -07:00
Daniel Eades
3ba4b6eadf
port all optional features to 2018-edition
2019-08-16 12:59:55 -07:00
Daniel Eades
1452ca2bd1
remove unnecessary extern crate lines
2019-08-16 12:59:55 -07:00
Daniel Eades
5dc5162765
update and tidy code
2019-08-16 12:59:55 -07:00
Daniel Eades
86d9cbc66e
cargo fix --edition
2019-08-16 12:59:55 -07:00
Vignesh Karuthedath (വിഘ്നേഷ് ശ൪മ കെ)
36f2b78122
Give more useful errors when connection through proxy fails
...
Before the fix anything other than 200 & 407 would throw an unhelpful
`unsuccessful tunnel` error.
After this change,
- Explicit handling of 403, where the proxy forbids a connection.
- All other responses will be part of the error message.
2019-08-16 10:54:09 -07:00
Sean McArthur
964d87ce57
Update trait object syntax to use 'dyn'
2019-06-03 13:15:09 -07:00
Diggory Blake
c45ff29bfb
Add support for SOCKS5 proxies, and parsing proxy authorizations from URLs
2019-04-08 11:42:18 -07:00
quininer
f02ca0ded0
disable Nagle's for default-tls handshake
2019-03-20 14:09:31 -07:00
quininer
47640170bb
Add tcp_nodelay for Builder
2019-03-20 14:09:31 -07:00
quininer
f5e7e883c7
disable nagle algorithm for TLS handshake
2019-03-20 14:09:31 -07:00
quininer
a27db28deb
fix proxy missing alpn ( #466 )
...
* fix #459
* disable alpn for proxy connection
2019-03-06 11:02:55 -08:00
Sean McArthur
9e2b56ba56
Add connect_timeout to async and sync clients
2019-02-20 15:15:55 -08:00
Sean McArthur
66db8d6283
refactor connect_async module into connect module
2019-02-20 15:15:55 -08:00
Michael Habib
4dc679d535
Add ClientBuilder::local_address option to bind to a local IP address ( #451 )
...
Closes #414
2019-02-11 10:40:16 -08:00
Sean McArthur
4d221533a2
Switch trust-dns to an off-by-default optional feature
2019-01-11 17:30:10 -08:00
Sean McArthur
23e13304ef
Disable trust-dns on Windows
...
Closes #431
2019-01-11 12:34:03 -08:00
Sean McArthur
2649f9ab56
Remove trust-dns when target_os is Android
2019-01-10 13:52:35 -08:00
Sean McArthur
b71787be86
refactor DNS resolver construction
...
- System Conf is read as `ClientBuilder::build()` time, providing the
error earlier.
- If there is an error reading the resolve system conf, a better error
is reported.
- Resolver only needs to lock a mutex once to spawn the background task,
instead of every single `resolve` call.
2019-01-10 12:47:29 -08:00
Sean McArthur
ad854c3ee8
add Proxy::basic_auth support
...
Closes #322
2019-01-04 14:40:19 -08:00
Sean McArthur
44837c1b69
Replace getaddrinfo resolver with trust-dns-resolver
2018-12-18 12:54:22 -08:00
quininer
37039760f8
Add rustls support ( #390 )
2018-12-17 11:57:43 -08:00
Sean McArthur
e2fa5497ef
update deprecated Uri::port to port_part
2018-11-26 12:14:05 -08:00
Sean McArthur
97393143a5
put all TLS functionality behind a feature flag
...
The "Cargo feature" `default-tls`, which is enabled by default, is
added, with all TLS support relying on it. This allows using reqwest but
disabling the `native-tls` dependency, by disabling this feature.
Closes #225
2018-10-29 16:37:25 -07:00
Yannick Heinrich
c4bf420021
Integrate helper functions inside corresponding structs
2018-10-05 11:19:52 -07:00
Yannick Heinrich
647f59756e
Add missing pub(crate) statements.
2018-10-05 11:19:52 -07:00
Yannick Heinrich
11f8588989
upgrade to native-tls 0.2 + invalid certs ( #325 )
...
- Bumps `native-tls` dependency to 0.2 and adapt code accordingly
- Import code used from `tokio-tls` into `connect_async` and adapt dependencies accordinlgy
- Add an option for using `danger_accept_invalid_certs` inside the `Config` struct
2018-08-08 13:14:36 -07:00
Yash Srivastav
c417d6dab8
Upgrade hyper to 0.12
...
Closes #304
2018-07-05 10:03:31 -07:00
Sean McArthur
7db860759d
Revert "Merge pull request #232 from tafia/hyper-proxy"
...
This reverts commit b09b8620a6 , reversing
changes made to abfcd2796e .
2018-02-15 12:13:33 -08:00
Johann Tuffe
8b1bb0b53e
remove proxy handling in favor of hyper-proxy crate
2017-12-15 11:51:02 +08:00
Ömer Sinan Ağacan
d9d92b7479
Implement option to set num of DNS threads in async ClientBuilder
2017-10-09 21:16:04 +03:00
Sean McArthur
8719b3d540
add some traces for proxy
2017-08-17 10:01:18 -07:00
Sean McArthur
229a2384a6
add Proxy::custom to allow custom proxy functions
2017-08-02 15:03:37 -07:00
Sean McArthur
f4f3c3e173
use proxy port as a u16 instead of String
2017-07-04 11:55:26 -07:00
Brian Henderson
f9f27f9c66
format connect request with host:port and connect on http/1.0 responses
2017-07-03 21:06:33 -04:00
Sean McArthur
17c0739fcc
connect TLS aftet tunneling to a proxy
2017-06-30 18:28:52 -07:00
Sean McArthur
1785e0dc5d
Disable hostname verification when option is enabled
...
Closes #153
2017-06-28 11:03:28 -07:00
Sean McArthur
6cdaff4b66
add a Proxy type
...
Proxies can currently be configured to intercept HTTP, HTTPS, and all
requests. HTTPS tunneling is supported.
Closes #30
2017-06-22 09:49:00 -07:00