From 355ae31fa3f46e55b203eebb890c12ffbc3024e0 Mon Sep 17 00:00:00 2001 From: Andrew Vagin Date: Wed, 16 Sep 2015 14:23:00 +0300 Subject: [PATCH] page-xfer: wait when a connection will be closed from a client side In this case a time wait bucket will be created on a client side, where a port is allocated dinamically. Reported-by: Mr Jenkins Signed-off-by: Andrew Vagin Signed-off-by: Pavel Emelyanov --- page-xfer.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/page-xfer.c b/page-xfer.c index dc7e81593..7465ed81b 100644 --- a/page-xfer.c +++ b/page-xfer.c @@ -257,6 +257,20 @@ static int page_server_serve(int sk) ret = -1; } + if (ret == 0) { + char c; + + /* + * Wait when a remote side closes the connection + * to avoid TIME_WAIT bucket + */ + + if (read(sk, &c, sizeof(c)) != 0) { + pr_perror("Unexpected data"); + ret = -1; + } + } + page_server_close(); pr_info("Session over\n");