about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2020-11-14 11:31:27 -0500
committerJune McEnroe <june@causal.agency>2020-11-14 11:31:27 -0500
commitb315f738081a31cb44f2d8a9a545894576a8d455 (patch)
tree236b7a3970566e03048df5ea8171c6ddb709dabb
parentMake struct Client public (diff)
downloadpounce-b315f738081a31cb44f2d8a9a545894576a8d455.tar.gz
pounce-b315f738081a31cb44f2d8a9a545894576a8d455.zip
Only send shutdown QUIT and ERROR to registered clients
-rw-r--r--bounce.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/bounce.c b/bounce.c
index 0354bf5..f460d74 100644
--- a/bounce.c
+++ b/bounce.c
@@ -538,10 +538,13 @@ int main(int argc, char *argv[]) {
 	serverFormat("QUIT :%s\r\n", quit);
 	for (size_t i = binds + 1; i < event.len; ++i) {
 		assert(event.clients[i]);
-		clientFormat(event.clients[i], ":%s QUIT :%s\r\n", stateEcho(), quit);
-		clientFormat(event.clients[i], "ERROR :Disconnecting\r\n");
+		if (!event.clients[i]->need) {
+			clientFormat(
+				event.clients[i], ":%s QUIT :%s\r\nERROR :Disconnecting\r\n",
+				stateEcho(), quit
+			);
+		}
 		clientFree(event.clients[i]);
-		close(event.fds[i].fd);
 	}
 }