diff --git a/actix-http/CHANGES.md b/actix-http/CHANGES.md index 94ea543b..b14c5784 100644 --- a/actix-http/CHANGES.md +++ b/actix-http/CHANGES.md @@ -5,6 +5,7 @@ ### Changed * Add `Clone` impl for `HeaderMap` +* Add `rustls` support ### Fixed diff --git a/actix-http/Cargo.toml b/actix-http/Cargo.toml index b4d14a63..2498a4f3 100644 --- a/actix-http/Cargo.toml +++ b/actix-http/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "actix-http" -version = "0.2.7" +version = "0.2.8" authors = ["Nikolay Kim "] description = "Actix http primitives" readme = "README.md" diff --git a/actix-http/src/client/connector.rs b/actix-http/src/client/connector.rs index 1bde67ef..7d6fca25 100644 --- a/actix-http/src/client/connector.rs +++ b/actix-http/src/client/connector.rs @@ -25,14 +25,14 @@ use rustls::ClientConfig; use std::sync::Arc; #[cfg(any(feature = "ssl", feature = "rust-tls"))] -pub enum SslConnector { +enum SslConnector { #[cfg(feature = "ssl")] Openssl(OpensslConnector), #[cfg(feature = "rust-tls")] Rustls(Arc), } #[cfg(not(any(feature = "ssl", feature = "rust-tls")))] -pub type SslConnector = (); +type SslConnector = (); /// Manages http client network connectivity /// The `Connector` type uses a builder-like combinator pattern for service @@ -150,10 +150,16 @@ where self } - #[cfg(any(feature = "ssl", feature = "rust-tls"))] + #[cfg(feature = "ssl")] /// Use custom `SslConnector` instance. - pub fn ssl(mut self, connector: SslConnector) -> Self { - self.ssl = connector; + pub fn ssl(mut self, connector: OpensslConnector) -> Self { + self.ssl = SslConnector::Openssl(connector); + self + } + + #[cfg(feature = "rust-tls")] + pub fn rustls(mut self, connector: Arc) -> Self { + self.ssl = SslConnector::Rustls(connector); self } @@ -325,76 +331,6 @@ where ), } } - // #[cfg(feature = "rust-tls")] - // { - // const H2: &[u8] = b"h2"; - // use actix_connect::ssl::RustlsConnector; - // use rustls::Session; - // let ssl = match self.ssl { - // SslConnector::Rustls(ssl) => ssl, - // _ => unimplemented!(), - // }; - - // let ssl_service = TimeoutService::new( - // self.timeout, - // apply_fn(self.connector.clone(), |msg: Connect, srv| { - // srv.call(TcpConnect::new(msg.uri).set_addr(msg.addr)) - // }) - // .map_err(ConnectError::from) - // .and_then( - // RustlsConnector::service(ssl) - // .map_err(ConnectError::from) - // .map(|stream| { - // let sock = stream.into_parts().0; - // let h2 = sock - // .get_ref() - // .1 - // .get_alpn_protocol() - // .map(|protos| protos.windows(2).any(|w| w == H2)) - // .unwrap_or(false); - // if h2 { - // (sock, Protocol::Http2) - // } else { - // (sock, Protocol::Http1) - // } - // }), - // ), - // ) - // .map_err(|e| match e { - // TimeoutError::Service(e) => e, - // TimeoutError::Timeout => ConnectError::Timeout, - // }); - - // let tcp_service = TimeoutService::new( - // self.timeout, - // apply_fn(self.connector.clone(), |msg: Connect, srv| { - // srv.call(TcpConnect::new(msg.uri).set_addr(msg.addr)) - // }) - // .map_err(ConnectError::from) - // .map(|stream| (stream.into_parts().0, Protocol::Http1)), - // ) - // .map_err(|e| match e { - // TimeoutError::Service(e) => e, - // TimeoutError::Timeout => ConnectError::Timeout, - // }); - - // connect_impl::InnerConnector { - // tcp_pool: ConnectionPool::new( - // tcp_service, - // self.conn_lifetime, - // self.conn_keep_alive, - // None, - // self.limit, - // ), - // ssl_pool: Some(ConnectionPool::new( - // ssl_service, - // self.conn_lifetime, - // self.conn_keep_alive, - // Some(self.disconnect_timeout), - // self.limit, - // )), - // } - // } } } diff --git a/actix-http/src/client/mod.rs b/actix-http/src/client/mod.rs index 876766d7..1d10117c 100644 --- a/actix-http/src/client/mod.rs +++ b/actix-http/src/client/mod.rs @@ -9,7 +9,7 @@ mod h2proto; mod pool; pub use self::connection::Connection; -pub use self::connector::{Connector, SslConnector}; +pub use self::connector::Connector; pub use self::error::{ConnectError, InvalidUrl, SendRequestError}; pub use self::pool::Protocol; diff --git a/actix-http/tests/cert.pem b/actix-http/tests/cert.pem deleted file mode 100644 index f9bb0508..00000000 --- a/actix-http/tests/cert.pem +++ /dev/null @@ -1,32 +0,0 @@ ------BEGIN CERTIFICATE----- -MIIFfjCCA2agAwIBAgIJAOIBvp/w68KrMA0GCSqGSIb3DQEBCwUAMGsxCzAJBgNV -BAYTAlJVMRkwFwYDVQQIDBBTYWludC1QZXRlcnNidXJnMRkwFwYDVQQHDBBTYWlu -dC1QZXRlcnNidXJnMRIwEAYDVQQKDAlLdXBpYmlsZXQxEjAQBgNVBAMMCWxvY2Fs -aG9zdDAgFw0xOTA3MjcxODIzMTJaGA8zMDE5MDcyNzE4MjMxMlowazELMAkGA1UE -BhMCUlUxGTAXBgNVBAgMEFNhaW50LVBldGVyc2J1cmcxGTAXBgNVBAcMEFNhaW50 -LVBldGVyc2J1cmcxEjAQBgNVBAoMCUt1cGliaWxldDESMBAGA1UEAwwJbG9jYWxo -b3N0MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAuiQZzTO3gRRPr6ZH -wcmKqkoXig9taCCqx72Qvb9tvCLhQLE1dDPZV8I/r8bx+mM4Yz3r0Hm5LxTIhCM9 -p3/abuiJAZENC/VkxgFzBGg7KGLSFmzU+A8Ft+2mrKmj5MpIPBCxDeVg80TCQOJy -hj+NU3PpBo9nxTgxWNWO6X+ZovZohdp78fYLLtns8rxjug3FVzdPrrLnBvihkGlq -gfImkh+vZxMTj1OgtxyCOhdbO4Ol4jCbn7a5yIw+iixHOEgBQfTQopRP7z1PEUV2 -WIy2VEGzvQDlj2OyzH86T1IOFV5rz5MjdZuW0qNzeS0w3Jzgp/olSbIZLhGAaIk0 -gN7y9XvSHqs7rO0wW+467ico7+uP1ScGgPgJA5fGu7ahp7F7G3ZSoAqAcS60wYsX -kStoA3RWAuqste6aChv1tlgTt+Rhk8qjGhuh0ng2qVnTGyo2T3OCHB/c47Bcsp6L -xiyTCnQIPH3fh2iO/SC7gPw3jihPMCAQZYlkC3MhMk974rn2zs9cKtJ8ubnG2m5F -VFVYmduRqS/YQS/O802jVCFdc8KDmoeAYNuHzgRZjQv9018UUeW3jtWKnopJnWs5 -ae9pbtmYeOtc7OovOxT7J2AaVfUkHRhmlqWZMzEJTcZws0fRPTZDifFJ5LFWbZsC -zW4tCKBKvYM9eAnbb+abiHXlY1MCAwEAAaMjMCEwHwYDVR0RBBgwFoIJbG9jYWxo -b3N0ggkxMjcuMC4wLjEwDQYJKoZIhvcNAQELBQADggIBAC1EU4SVCfUKc7JbhYRf -P87F+8e13bBTLxevJdnTCH3Xw2AN8UPmwQ2vv9Mv2FMulMBQ7yLnQLGtgGUua2OE -XO+EdBBEKnglo9cwXGzU6qHhaiCeXZDM8s53qOOrD42XsDsY0nOoFYqDLW3WixP9 -f1fWbcEf6+ktlvqi/1/3R6QtQR+6LS43enbsYHq8aAP60NrpXxdXxEoUwW6Z/sje -XAQluH8jzledwJcY8bXRskAHZlE4kGlOVuGgnyI3BXyLiwB4g9smFzYIs98iAGmV -7ZBaR5IIiRCtoKBG+SngM7Log0bHphvFPjDDvgqWYiWaOHboYM60Y2Z/gRbcjuMU -WZX64jw29fa8UPFdtGTupt+iuO7iXnHnm0lBBK36rVdOvsZup76p6L4BXmFsRmFK -qJ2Zd8uWNPDq80Am0mYaAqENuIANHHJXX38SesC+QO+G2JZt6vCwkGk/Qune4GIg -1GwhvsDRfTQopSxg1rdPwPM7HWeTfUGHZ34B5p/iILA3o6PfYQU8fNAWIsCDkRX2 -MrgDgCnLZxKb6pjR4DYNAdPwkxyMFACZ2T46z6WvLWFlnkK5nbZoqsOsp+GJHole -llafhrelXEzt3zFR0q4zGcqheJDI+Wy+fBy3XawgAc4eN0T2UCzL/jKxKgzlzSU3 -+xh1SDNjFLRd6sGzZHPMgXN0 ------END CERTIFICATE----- diff --git a/actix-http/tests/key.pem b/actix-http/tests/key.pem deleted file mode 100644 index 70153c8a..00000000 --- a/actix-http/tests/key.pem +++ /dev/null @@ -1,52 +0,0 @@ ------BEGIN PRIVATE KEY----- -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 -o21xtGh0nP2Fq1TC6jFO+9cpbK8jNA== ------END PRIVATE KEY----- diff --git a/actix-http/tests/test_rustls_server.rs b/actix-http/tests/test_rustls_server.rs index 9392a755..2725af77 100644 --- a/actix-http/tests/test_rustls_server.rs +++ b/actix-http/tests/test_rustls_server.rs @@ -30,8 +30,8 @@ where fn ssl_acceptor() -> Result> { // load ssl keys let mut config = RustlsServerConfig::new(NoClientAuth::new()); - let cert_file = &mut BufReader::new(File::open("tests/cert.pem").unwrap()); - let key_file = &mut BufReader::new(File::open("tests/key.pem").unwrap()); + let cert_file = &mut BufReader::new(File::open("../tests/cert.pem").unwrap()); + let key_file = &mut BufReader::new(File::open("../tests/key.pem").unwrap()); let cert_chain = certs(cert_file).unwrap(); let mut keys = pkcs8_private_keys(key_file).unwrap(); config.set_single_cert(cert_chain, keys.remove(0)).unwrap(); diff --git a/actix-web-codegen/tests/test_macro.rs b/actix-web-codegen/tests/test_macro.rs index f1198bbb..8ecc81dc 100644 --- a/actix-web-codegen/tests/test_macro.rs +++ b/actix-web-codegen/tests/test_macro.rs @@ -142,7 +142,6 @@ fn test_body() { assert!(response.status().is_success()); assert_eq!(response.status(), http::StatusCode::NO_CONTENT); - // let mut srv = TestServer::new(|| HttpService::new(App::new().service(auto_sync))); let request = srv.request(http::Method::GET, srv.url("/test")); let response = srv.block_on(request.send()).unwrap(); assert!(response.status().is_success()); diff --git a/awc/CHANGES.md b/awc/CHANGES.md index 602f9a3b..d9b6db41 100644 --- a/awc/CHANGES.md +++ b/awc/CHANGES.md @@ -1,5 +1,9 @@ # Changes +## [0.2.3] - 2019-07-xx + +* Add `rustls` support + ## [0.2.2] - 2019-07-01 ### Changed diff --git a/awc/Cargo.toml b/awc/Cargo.toml index 22595918..3abc0edb 100644 --- a/awc/Cargo.toml +++ b/awc/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "awc" -version = "0.2.2" +version = "0.2.3" authors = ["Nikolay Kim "] description = "Actix http client." readme = "README.md" @@ -44,7 +44,7 @@ flate2-rust = ["actix-http/flate2-rust"] [dependencies] actix-codec = "0.1.2" actix-service = "0.4.1" -actix-http = "0.2.4" +actix-http = "0.2.8" base64 = "0.10.1" bytes = "0.4" derive_more = "0.15.0" diff --git a/awc/tests/test_rustls_client.rs b/awc/tests/test_rustls_client.rs index a65b97e5..f25b80b8 100644 --- a/awc/tests/test_rustls_client.rs +++ b/awc/tests/test_rustls_client.rs @@ -7,7 +7,7 @@ use std::sync::atomic::{AtomicUsize, Ordering}; use std::sync::Arc; use actix_codec::{AsyncRead, AsyncWrite}; -use actix_http::{HttpService, client::SslConnector::Rustls}; +use actix_http::HttpService; use actix_http_test::TestServer; use actix_server::ssl::RustlsAcceptor; use actix_service::{service_fn, NewService}; @@ -74,7 +74,7 @@ fn test_connection_reuse_h2() { .set_certificate_verifier(Arc::new(danger::NoCertificateVerification {})); let client = awc::Client::build() - .connector(awc::Connector::new().ssl(Rustls(Arc::new(config))).finish()) + .connector(awc::Connector::new().rustls(Arc::new(config)).finish()) .finish(); // req 1 diff --git a/awc/tests/test_ssl_client.rs b/awc/tests/test_ssl_client.rs index 1f446a84..e6b0101b 100644 --- a/awc/tests/test_ssl_client.rs +++ b/awc/tests/test_ssl_client.rs @@ -6,7 +6,7 @@ use std::sync::atomic::{AtomicUsize, Ordering}; use std::sync::Arc; use actix_codec::{AsyncRead, AsyncWrite}; -use actix_http::{HttpService, client::SslConnector::Openssl}; +use actix_http::HttpService; use actix_http_test::TestServer; use actix_server::ssl::OpensslAcceptor; use actix_service::{service_fn, NewService}; @@ -67,7 +67,7 @@ fn test_connection_reuse_h2() { .map_err(|e| log::error!("Can not set alpn protocol: {:?}", e)); let client = awc::Client::build() - .connector(awc::Connector::new().ssl(Openssl(builder.build())).finish()) + .connector(awc::Connector::new().ssl(builder.build()).finish()) .finish(); // req 1 diff --git a/test-server/Cargo.toml b/test-server/Cargo.toml index 8cccf78a..e5e83b16 100644 --- a/test-server/Cargo.toml +++ b/test-server/Cargo.toml @@ -37,7 +37,7 @@ actix-rt = "0.2.4" actix-service = "0.4.1" actix-server = "0.6.0" actix-utils = "0.4.1" -actix-http = "0.2.7" +actix-http = "0.2.8" awc = "0.2.2" base64 = "0.10" @@ -61,4 +61,3 @@ webpki = { version = "0.19", optional = true } [dev-dependencies] actix-web = "1.0.0" -actix-http = "0.2.7" diff --git a/test-server/src/lib.rs b/test-server/src/lib.rs index 6216f51f..afc38fb2 100644 --- a/test-server/src/lib.rs +++ b/test-server/src/lib.rs @@ -154,7 +154,6 @@ impl TestServer { let connector = { #[cfg(feature = "ssl")] { - use actix_http::client::SslConnector::Openssl; use openssl::ssl::{SslConnector, SslMethod, SslVerifyMode}; let mut builder = @@ -166,12 +165,11 @@ impl TestServer { Connector::new() .conn_lifetime(time::Duration::from_secs(0)) .timeout(time::Duration::from_millis(500)) - .ssl(Openssl(builder.build())) + .ssl(builder.build()) .finish() } #[cfg(all(not(feature = "ssl"), feature = "rust-tls"))] { - use actix_http::client::SslConnector::Rustls; use rustls::ClientConfig; use std::sync::Arc; @@ -185,7 +183,7 @@ impl TestServer { Connector::new() .conn_lifetime(time::Duration::from_secs(0)) .timeout(time::Duration::from_millis(500)) - .ssl(Rustls(Arc::new(config))) + .rustls(Arc::new(config)) .finish() } #[cfg(not(any(feature = "ssl", feature = "rust-tls")))] diff --git a/tests/test_httpserver.rs b/tests/test_httpserver.rs index 997f3d09..c0d2e81c 100644 --- a/tests/test_httpserver.rs +++ b/tests/test_httpserver.rs @@ -124,7 +124,6 @@ fn test_start_ssl() { let client = test::run_on(|| { use openssl::ssl::{SslConnector, SslMethod, SslVerifyMode}; - use actix_http::client::SslConnector::Openssl; let mut builder = SslConnector::builder(SslMethod::tls()).unwrap(); builder.set_verify(SslVerifyMode::NONE); let _ = builder @@ -135,7 +134,7 @@ fn test_start_ssl() { awc::Client::build() .connector( awc::Connector::new() - .ssl(Openssl(builder.build())) + .ssl(builder.build()) .timeout(Duration::from_millis(100)) .finish(), ) diff --git a/tests/test_server.rs b/tests/test_server.rs index 2c662142..491aaef4 100644 --- a/tests/test_server.rs +++ b/tests/test_server.rs @@ -786,7 +786,6 @@ fn test_reading_deflate_encoding_large_random_ssl() { use rustls::{NoClientAuth, ServerConfig}; use std::fs::File; use std::io::BufReader; - use actix_http::client::SslConnector::Openssl; let addr = TestServer::unused_addr(); let (tx, rx) = mpsc::channel(); @@ -836,7 +835,7 @@ fn test_reading_deflate_encoding_large_random_ssl() { .connector( awc::Connector::new() .timeout(std::time::Duration::from_millis(500)) - .ssl(Openssl(builder.build())) + .ssl(builder.build()) .finish(), ) .finish()