Do not decrement RST life time if keep_alive is not turned on.

This allows use differen values configured by user for sysctl variable
net.inet.ip.fw.dyn_rst_lifetime.

Obtained from:	Yandex LLC
MFC after:	3 weeks
Sponsored by:	Yandex LLC
This commit is contained in:
ae 2018-10-21 16:44:57 +00:00
parent 96594387aa
commit 5e43f73087

View File

@ -979,7 +979,8 @@ dyn_update_tcp_state(struct dyn_data *data, const struct ipfw_flow_id *pkt,
break;
default:
if (V_dyn_rst_lifetime >= V_dyn_keepalive_period)
if (V_dyn_keepalive != 0 &&
V_dyn_rst_lifetime >= V_dyn_keepalive_period)
V_dyn_rst_lifetime = V_dyn_keepalive_period - 1;
expire = time_uptime + V_dyn_rst_lifetime;
}