@@ -90,12 +90,18 @@ impl Server {
9090 ) -> Result < Self , Error > {
9191 debug ! ( "=> {}" , addr) ;
9292 let stream = TcpStream :: connect ( addr. addr ( ) . await ?) . await ?;
93- tweak ( & stream) ?;
94- let cfg = config ( ) ;
93+ let config = config ( ) ;
9594
96- let mut stream = Stream :: plain ( stream, cfg. config . memory . net_buffer ) ;
95+ if let Err ( err) = tweak ( & stream, & config. config . tcp ) {
96+ warn ! (
97+ "keepalive settings ({}) are not supported on this system, ignoring, error: {} [{}]" ,
98+ config. config. tcp, err, addr,
99+ ) ;
100+ }
101+
102+ let mut stream = Stream :: plain ( stream, config. config . memory . net_buffer ) ;
97103
98- let tls_mode = cfg . config . general . tls_verify ;
104+ let tls_mode = config . config . general . tls_verify ;
99105
100106 // Only attempt TLS if not in Disabled mode
101107 if tls_mode != TlsVerifyMode :: Disabled {
@@ -117,7 +123,7 @@ impl Server {
117123
118124 let connector = connector_with_verify_mode (
119125 tls_mode,
120- cfg . config . general . tls_server_ca_certificate . as_ref ( ) ,
126+ config . config . general . tls_server_ca_certificate . as_ref ( ) ,
121127 ) ?;
122128 let plain = stream. take ( ) ?;
123129
@@ -128,7 +134,7 @@ impl Server {
128134 Ok ( tls_stream) => {
129135 debug ! ( "TLS handshake successful with {}" , addr. host) ;
130136 let cipher = tokio_rustls:: TlsStream :: Client ( tls_stream) ;
131- stream = Stream :: tls ( cipher, cfg . config . memory . net_buffer ) ;
137+ stream = Stream :: tls ( cipher, config . config . memory . net_buffer ) ;
132138 }
133139 Err ( e) => {
134140 error ! ( "TLS handshake failed with {:?} [{}]" , e, addr) ;
@@ -260,7 +266,7 @@ impl Server {
260266 addr : addr. clone ( ) ,
261267 stream : Some ( stream) ,
262268 id,
263- stats : Stats :: connect ( id, addr, & params, & options, & cfg . config . memory ) ,
269+ stats : Stats :: connect ( id, addr, & params, & options, & config . config . memory ) ,
264270 replication_mode : options. replication_mode ( ) ,
265271 params,
266272 changed_params : Parameters :: default ( ) ,
@@ -275,7 +281,7 @@ impl Server {
275281 re_synced : false ,
276282 sending_request : false ,
277283 pooler_mode : PoolerMode :: Transaction ,
278- stream_buffer : MessageBuffer :: new ( cfg . config . memory . message_buffer ) ,
284+ stream_buffer : MessageBuffer :: new ( config . config . memory . message_buffer ) ,
279285 disconnect_reason : None ,
280286 } ;
281287
0 commit comments