From 2756437f4bd1c0def6877e3742f018b3fbb721da Mon Sep 17 00:00:00 2001 From: Nicholas Marriott Date: Wed, 11 Nov 2009 08:00:42 +0000 Subject: Only need to chmod +x or -x the socket when a client is created, lost or attached, rather than every event loop. --- server.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) (limited to 'server.c') diff --git a/server.c b/server.c index 09618d25..209fcd07 100644 --- a/server.c +++ b/server.c @@ -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. */ -- cgit