diff --git a/lightway-client/src/config.rs b/lightway-client/src/config.rs index 09814c69..169ecb69 100644 --- a/lightway-client/src/config.rs +++ b/lightway-client/src/config.rs @@ -151,8 +151,8 @@ pub struct Config { #[patch(attribute(clap(long)))] #[patch(empty_value = false)] #[patch(attribute(serde(default)))] - #[patch(attribute(doc = "Enable continuous Keepalive"))] - pub keepalive_continuous: bool, + #[patch(attribute(doc = "Disable continuous keepalive"))] + pub disable_keepalive_continuous: bool, #[patch(attribute(clap(long)))] #[patch(attribute(doc = r#"Time it takes to trigger a tracer packet @@ -480,7 +480,7 @@ impl Default for Config { keyshare: KeyShare::default(), keepalive_interval: NonZeroDuration::from_std_duration(StdDuration::from_secs(10)), keepalive_timeout: NonZeroDuration::from_std_duration(StdDuration::from_secs(60)), - keepalive_continuous: true, + disable_keepalive_continuous: false, tracer_packet_timeout: NonZeroDuration::from_std_duration(StdDuration::from_secs(10)), preferred_connection_wait_interval: Duration::from_std_duration( StdDuration::from_secs(0), diff --git a/lightway-client/src/lib.rs b/lightway-client/src/lib.rs index e7aff0d5..ac2d9e6d 100644 --- a/lightway-client/src/lib.rs +++ b/lightway-client/src/lib.rs @@ -323,7 +323,7 @@ impl ClientConfig { expresslane_metrics: None, keepalive_interval: config.keepalive_interval.into(), keepalive_timeout: config.keepalive_timeout.into(), - continuous_keepalive: config.keepalive_continuous, + continuous_keepalive: !config.disable_keepalive_continuous, tracer_packet_timeout: config.tracer_packet_timeout.into(), preferred_connection_wait_interval: config.preferred_connection_wait_interval.into(), sndbuf: config.sndbuf, diff --git a/lightway-client/src/mobile/lightway.rs b/lightway-client/src/mobile/lightway.rs index d494b512..9cd24610 100644 --- a/lightway-client/src/mobile/lightway.rs +++ b/lightway-client/src/mobile/lightway.rs @@ -214,7 +214,7 @@ pub(crate) async fn async_lightway_start( connect_conf, sni_header: config.sni_header.clone(), socket: outside_sockets[instance_id].take(), - enable_keepalive: config.keepalive_continuous, + enable_keepalive: !config.disable_keepalive_continuous, enable_expresslane: config.enable_expresslane, expresslane_keys_rotation_interval: config .expresslane_keys_rotation_interval diff --git a/tests/client/client_config.yaml b/tests/client/client_config.yaml index d12048c9..eedc50bd 100644 --- a/tests/client/client_config.yaml +++ b/tests/client/client_config.yaml @@ -18,7 +18,6 @@ enable_tun_iouring: false iouring_entry_count: 1024 keepalive_interval: 10s keepalive_timeout: 30s -keepalive_continuous: true enable_expresslane: false enable_pmtud: false # sndbuf: 1.5 MiB