[systemd-devel] [PATCH 1/3] socket: Add Support for TCP keep alive variables
Lennart Poettering
lennart at poettering.net
Wed Aug 13 17:43:15 PDT 2014
On Tue, 29.07.14 23:10, Susant Sahani (susant at redhat.com) wrote:
> The tcp keep alive variables now can be configured via conf
> parameter. Follwing variables are now supported by this patch.
>
> tcp_keepalive_intvl: The number of seconds between TCP keep-alive probes
>
> tcp_keepalive_probes: The maximum number of TCP keep-alive probes to
> send before giving up and killing the connection if no response is
> obtained from the other end.
>
> tcp_keepalive_time: The number of seconds a connection needs to be
> idle before TCP begins sending out keep-alive probes.
Looks pretty OK.
> ---
> man/systemd.socket.xml | 36 +++++++++++++++++++++++++++++++++++
> src/core/dbus-socket.c | 3 +++
> src/core/load-fragment-gperf.gperf.m4 | 3 +++
> src/core/socket.c | 33 ++++++++++++++++++++++++++++++++
> src/core/socket.h | 3 +++
> 5 files changed, 78 insertions(+)
>
> diff --git a/man/systemd.socket.xml b/man/systemd.socket.xml
> index 09a7311..6dbcc81 100644
> --- a/man/systemd.socket.xml
> +++ b/man/systemd.socket.xml
> @@ -488,6 +488,42 @@
> </varlistentry>
>
> <varlistentry>
> + <term><varname>KeepAliveTime=</varname></term>
> + <listitem><para>Takes time (in seconds) as
> argument . The connection needs to remain
^^^^^ there's a spurious space too much here...
> + idle before TCP starts sending keepalive probes. This controls the TCP_KEEPIDLE
> + socket option (see
> + <citerefentry><refentrytitle>socket</refentrytitle><manvolnum>7</manvolnum></citerefentry>
> + and the <ulink
> + url="http://www.tldp.org/HOWTO/html_single/TCP-Keepalive-HOWTO/">TCP
> + Keepalive HOWTO</ulink> for details.)
> + Defaults value is 7200 seconds (2 hours).</para></listitem>
> + </varlistentry>
Could you indent this like the rest of the settings, please?
> + SD_BUS_PROPERTY("KeepAliveTime", "t", bus_property_get_usec, offsetof(Socket, keep_alive_time), SD_BUS_VTABLE_PROPERTY_CONST),
> + SD_BUS_PROPERTY("KeepAliveInterval", "t", bus_property_get_usec, offsetof(Socket, keep_alive_interval), SD_BUS_VTABLE_PROPERTY_CONST),
> + SD_BUS_PROPERTY("KeepAliveProbes", "i", bus_property_get_int,
> offsetof(Socket, keep_alive_cnt), SD_BUS_VTABLE_PROPERTY_CONST),
This should really be an "u" and use bus_property_get_unsigned(), no? I
mean, there is no negative count possible, is there?
> + if(s->keep_alive_time)
> + fprintf(f,
> + "%sKeepAliveTime: %lo\n",
> + prefix, s->keep_alive_time / USEC_PER_SEC);
Please format this with format_timespan()!
Otherwise looks good!
Lennart
--
Lennart Poettering, Red Hat
More information about the systemd-devel
mailing list