diff options
author | Nicholas Marriott <nicm@openbsd.org> | 2009-11-11 08:00:42 +0000 |
---|---|---|
committer | Nicholas Marriott <nicm@openbsd.org> | 2009-11-11 08:00:42 +0000 |
commit | 2756437f4bd1c0def6877e3742f018b3fbb721da (patch) | |
tree | 77a50265b96bff13535689934a1c597487d96406 /server.c | |
parent | 15b9946a4094d22f3bde6ef5af67fbb526807329 (diff) | |
download | rtmux-2756437f4bd1c0def6877e3742f018b3fbb721da.tar.gz rtmux-2756437f4bd1c0def6877e3742f018b3fbb721da.tar.bz2 rtmux-2756437f4bd1c0def6877e3742f018b3fbb721da.zip |
Only need to chmod +x or -x the socket when a client is created, lost or
attached, rather than every event loop.
Diffstat (limited to 'server.c')
-rw-r--r-- | server.c | 9 |
1 files changed, 3 insertions, 6 deletions
@@ -59,7 +59,6 @@ void server_loop(void); int server_should_shutdown(void); void server_send_shutdown(void); void server_clean_dead(void); -int server_update_socket(void); void server_accept_callback(int, short, void *); void server_signal_callback(int, short, void *); void server_child_signal(void); @@ -105,6 +104,8 @@ server_create_socket(void) if (fcntl(fd, F_SETFD, FD_CLOEXEC) == -1) fatal("fcntl failed"); + server_update_socket(); + return (fd); } @@ -208,8 +209,6 @@ void server_loop(void) { while (!server_should_shutdown()) { - server_update_socket(); - event_loop(EVLOOP_ONCE); server_window_loop(); @@ -288,7 +287,7 @@ server_clean_dead(void) } /* Update socket execute permissions based on whether sessions are attached. */ -int +void server_update_socket(void) { struct session *s; @@ -312,8 +311,6 @@ server_update_socket(void) else chmod(socket_path, S_IRUSR|S_IWUSR); } - - return (n); } /* Callback for server socket. */ |