@@ -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 ;
@@ -294,14 +293,14 @@ where
294293{
295294 let rid = args. rid ;
296295 let hostname = match & * args. hostname {
297- "" => "localhost" ,
298- n => n,
296+ "" => "localhost" . to_string ( ) ,
297+ n => n. to_string ( ) ,
299298 } ;
300299
301300 {
302301 let mut s = state. borrow_mut ( ) ;
303302 let permissions = s. borrow_mut :: < NP > ( ) ;
304- permissions. check_net ( & ( hostname, Some ( 0 ) ) , "Deno.startTls()" ) ?;
303+ permissions. check_net ( & ( & hostname, Some ( 0 ) ) , "Deno.startTls()" ) ?;
305304 }
306305
307306 let ca_certs = args
@@ -310,8 +309,8 @@ where
310309 . map ( |s| s. into_bytes ( ) )
311310 . collect :: < Vec < _ > > ( ) ;
312311
313- let hostname_dns =
314- ServerName :: try_from ( hostname ) . map_err ( |_| invalid_hostname ( hostname) ) ?;
312+ let hostname_dns = ServerName :: try_from ( hostname . to_string ( ) )
313+ . map_err ( |_| invalid_hostname ( & hostname) ) ?;
315314
316315 let unsafely_ignore_certificate_errors = state
317316 . borrow ( )
@@ -412,9 +411,9 @@ where
412411 . borrow :: < DefaultTlsOptions > ( )
413412 . root_cert_store ( ) ?;
414413 let hostname_dns = if let Some ( server_name) = args. server_name {
415- ServerName :: try_from ( server_name. as_str ( ) )
414+ ServerName :: try_from ( server_name)
416415 } else {
417- ServerName :: try_from ( & * addr. hostname )
416+ ServerName :: try_from ( addr. hostname . clone ( ) )
418417 }
419418 . map_err ( |_| invalid_hostname ( & addr. hostname ) ) ?;
420419 let connect_addr = resolve_addr ( & addr. hostname , addr. port )
@@ -456,15 +455,17 @@ where
456455 Ok ( ( rid, IpAddr :: from ( local_addr) , IpAddr :: from ( remote_addr) ) )
457456}
458457
459- fn load_certs_from_file ( path : & str ) -> Result < Vec < Certificate > , AnyError > {
458+ fn load_certs_from_file (
459+ path : & str ,
460+ ) -> Result < Vec < CertificateDer < ' static > > , AnyError > {
460461 let cert_file = File :: open ( path) ?;
461462 let reader = & mut BufReader :: new ( cert_file) ;
462463 load_certs ( reader)
463464}
464465
465466fn load_private_keys_from_file (
466467 path : & str ,
467- ) -> Result < Vec < PrivateKey > , AnyError > {
468+ ) -> Result < Vec < PrivateKeyDer < ' static > > , AnyError > {
468469 let key_bytes = std:: fs:: read ( path) ?;
469470 load_private_keys ( & key_bytes)
470471}
@@ -513,7 +514,6 @@ where
513514 TlsKeys :: Null => Err ( anyhow ! ( "Deno.listenTls requires a key" ) ) ,
514515 TlsKeys :: Static ( TlsKey ( cert, key) ) => {
515516 let mut tls_config = ServerConfig :: builder ( )
516- . with_safe_defaults ( )
517517 . with_no_client_auth ( )
518518 . with_single_cert ( cert, key)
519519 . map_err ( |e| anyhow ! ( e) ) ?;
0 commit comments