aboutsummaryrefslogtreecommitdiff
path: root/server.c
diff options
context:
space:
mode:
authorNicholas Marriott <nicm@openbsd.org>2009-09-02 21:25:57 +0000
committerNicholas Marriott <nicm@openbsd.org>2009-09-02 21:25:57 +0000
commit81a457e6fb169141fe567feb7bf70f98a8ad6c2a (patch)
tree99f22afe962c1cd0c2b99cd083a9d57d0f1bab93 /server.c
parent459abafcea844ebb2de8cc58761edb84ffa8dec8 (diff)
downloadrtmux-81a457e6fb169141fe567feb7bf70f98a8ad6c2a.tar.gz
rtmux-81a457e6fb169141fe567feb7bf70f98a8ad6c2a.tar.bz2
rtmux-81a457e6fb169141fe567feb7bf70f98a8ad6c2a.zip
When shutting down the server, expect clients to be polite and exit when asked
with the right message.
Diffstat (limited to 'server.c')
-rw-r--r--server.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/server.c b/server.c
index 3bb93d95..970a5ca0 100644
--- a/server.c
+++ b/server.c
@@ -202,8 +202,8 @@ error:
server_write_error(c, cause);
xfree(cause);
+ sigterm = 1;
server_shutdown();
- c->flags |= CLIENT_BAD;
exit(server_main(srv_fd));
}
@@ -304,7 +304,7 @@ server_main(int srv_fd)
/* Update socket permissions. */
xtimeout = INFTIM;
- if (sigterm || server_update_socket() != 0)
+ if (server_update_socket() != 0)
xtimeout = POLL_TIMEOUT;
/* Do the poll. */
@@ -420,7 +420,6 @@ server_shutdown(void)
server_lost_client(c);
else
server_write_client(c, MSG_SHUTDOWN, NULL, 0);
- c->flags |= CLIENT_BAD;
}
}
}