@@ -31,11 +31,11 @@ use deno_tls::create_client_config;
3131use deno_tls:: load_certs;
3232use deno_tls:: load_private_keys;
3333use deno_tls:: new_resolver;
34- use deno_tls:: rustls:: Certificate ;
34+ use deno_tls:: rustls:: pki_types :: ServerName ;
3535use deno_tls:: rustls:: ClientConnection ;
36- use deno_tls:: rustls:: PrivateKey ;
3736use deno_tls:: rustls:: ServerConfig ;
38- use deno_tls:: rustls:: ServerName ;
37+ use deno_tls:: webpki:: types:: CertificateDer ;
38+ use deno_tls:: webpki:: types:: PrivateKeyDer ;
3939use deno_tls:: ServerConfigProvider ;
4040use deno_tls:: SocketUse ;
4141use deno_tls:: TlsKey ;
@@ -48,7 +48,6 @@ use serde::Deserialize;
4848use std:: borrow:: Cow ;
4949use std:: cell:: RefCell ;
5050use std:: convert:: From ;
51- use std:: convert:: TryFrom ;
5251use std:: fs:: File ;
5352use std:: io:: BufReader ;
5453use std:: io:: ErrorKind ;
@@ -304,14 +303,14 @@ where
304303{
305304 let rid = args. rid ;
306305 let hostname = match & * args. hostname {
307- "" => "localhost" ,
308- n => n,
306+ "" => "localhost" . to_string ( ) ,
307+ n => n. to_string ( ) ,
309308 } ;
310309
311310 {
312311 let mut s = state. borrow_mut ( ) ;
313312 let permissions = s. borrow_mut :: < NP > ( ) ;
314- permissions. check_net ( & ( hostname, Some ( 0 ) ) , "Deno.startTls()" ) ?;
313+ permissions. check_net ( & ( & hostname, Some ( 0 ) ) , "Deno.startTls()" ) ?;
315314 }
316315
317316 let ca_certs = args
@@ -320,8 +319,8 @@ where
320319 . map ( |s| s. into_bytes ( ) )
321320 . collect :: < Vec < _ > > ( ) ;
322321
323- let hostname_dns =
324- ServerName :: try_from ( hostname ) . map_err ( |_| invalid_hostname ( hostname) ) ?;
322+ let hostname_dns = ServerName :: try_from ( hostname . to_string ( ) )
323+ . map_err ( |_| invalid_hostname ( & hostname) ) ?;
325324
326325 let unsafely_ignore_certificate_errors = state
327326 . borrow ( )
@@ -422,9 +421,9 @@ where
422421 . borrow :: < DefaultTlsOptions > ( )
423422 . root_cert_store ( ) ?;
424423 let hostname_dns = if let Some ( server_name) = args. server_name {
425- ServerName :: try_from ( server_name. as_str ( ) )
424+ ServerName :: try_from ( server_name)
426425 } else {
427- ServerName :: try_from ( & * addr. hostname )
426+ ServerName :: try_from ( addr. hostname . clone ( ) )
428427 }
429428 . map_err ( |_| invalid_hostname ( & addr. hostname ) ) ?;
430429 let connect_addr = resolve_addr ( & addr. hostname , addr. port )
@@ -466,15 +465,17 @@ where
466465 Ok ( ( rid, IpAddr :: from ( local_addr) , IpAddr :: from ( remote_addr) ) )
467466}
468467
469- fn load_certs_from_file ( path : & str ) -> Result < Vec < Certificate > , AnyError > {
468+ fn load_certs_from_file (
469+ path : & str ,
470+ ) -> Result < Vec < CertificateDer < ' static > > , AnyError > {
470471 let cert_file = File :: open ( path) ?;
471472 let reader = & mut BufReader :: new ( cert_file) ;
472473 load_certs ( reader)
473474}
474475
475476fn load_private_keys_from_file (
476477 path : & str ,
477- ) -> Result < Vec < PrivateKey > , AnyError > {
478+ ) -> Result < Vec < PrivateKeyDer < ' static > > , AnyError > {
478479 let key_bytes = std:: fs:: read ( path) ?;
479480 load_private_keys ( & key_bytes)
480481}
@@ -523,7 +524,6 @@ where
523524 TlsKeys :: Null => Err ( anyhow ! ( "Deno.listenTls requires a key" ) ) ,
524525 TlsKeys :: Static ( TlsKey ( cert, key) ) => {
525526 let mut tls_config = ServerConfig :: builder ( )
526- . with_safe_defaults ( )
527527 . with_no_client_auth ( )
528528 . with_single_cert ( cert, key)
529529 . map_err ( |e| anyhow ! ( e) ) ?;
0 commit comments