File tree Expand file tree Collapse file tree 2 files changed +7
-11
lines changed Expand file tree Collapse file tree 2 files changed +7
-11
lines changed Original file line number Diff line number Diff line change 1- use anyhow:: { ensure, Context , Error , Result } ;
2- use rustls:: internal:: msgs:: codec:: Codec ;
3- use rustls:: Reader ;
1+ use anyhow:: { Context , Error , Result } ;
42use rustls:: { Certificate , PrivateKey } ;
5- use rustls_pemfile:: { pkcs8_private_keys, rsa_private_keys, Item } ;
3+ use rustls_pemfile:: { pkcs8_private_keys, rsa_private_keys} ;
64use serde:: Deserialize ;
75use std:: fs:: File ;
8- use std:: io:: { BufRead , BufReader , Read } ;
9- use std:: iter;
6+ use std:: io:: BufReader ;
107use std:: path:: Path ;
118use std:: str:: FromStr ;
129
@@ -40,7 +37,6 @@ pub fn load_cert(path: &Path) -> Result<Vec<Certificate>> {
4037 let mut buf_reader = BufReader :: new ( file) ;
4138 let cert_bytes = & rustls_pemfile:: certs ( & mut buf_reader) . unwrap ( ) [ 0 ] ;
4239
43- ensure ! ( cert_bytes. len( ) > 0 , "Empty certificate" ) ;
4440 Ok ( vec ! [ Certificate ( cert_bytes. to_vec( ) ) ] )
4541}
4642
@@ -61,6 +57,5 @@ pub fn load_private_key(path: &Path, kind: &PrivateKeyAlgorithm) -> Result<Priva
6157 } ) ?,
6258 } ;
6359
64- ensure ! ( keys. len( ) == 1 , "Expected a single private key" ) ;
6560 Ok ( PrivateKey ( keys[ 0 ] . clone ( ) ) )
6661}
Original file line number Diff line number Diff line change @@ -105,7 +105,7 @@ impl Server {
105105 println ! ( "Serving HTTPS: {}" , address) ;
106106 }
107107
108- if let Err ( e ) = server
108+ let server_with_graceful_shutdown = server
109109 . serve ( make_service_fn ( |_| {
110110 // Move a clone of `handler` into the `service_fn`.
111111 let handler = handler. clone ( ) ;
@@ -116,8 +116,9 @@ impl Server {
116116 } ) )
117117 }
118118 } ) )
119- . await
120- {
119+ . with_graceful_shutdown ( crate :: utils:: signal:: shutdown_signal ( ) ) ;
120+
121+ if let Err ( e) = server_with_graceful_shutdown. await {
121122 eprint ! ( "Server Error: {}" , e) ;
122123 }
123124 }
You can’t perform that action at this time.
0 commit comments