about summary refs log tree commit diff homepage
diff options
context:
space:
mode:
authorJune McEnroe <programble@gmail.com>2017-08-08 19:00:54 -0400
committerJune McEnroe <programble@gmail.com>2017-08-08 19:00:54 -0400
commitc8a183c13d951b74315a0d38367c900e59379e3f (patch)
treeb4e4cf173ef8901bb5b1c94c80749c5a53c0cb20
parentRewrite help (diff)
downloadtorus-c8a183c13d951b74315a0d38367c900e59379e3f.tar.gz
torus-c8a183c13d951b74315a0d38367c900e59379e3f.zip
Turn off SIGPIPE at the socket level
I imagine it's better to not generate SIGPIPE at all rather than
generate and ignore.
-rwxr-xr-xserver.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/server.c b/server.c
index fc3b3d0..8ad47ba 100755
--- a/server.c
+++ b/server.c
@@ -260,8 +260,6 @@ static bool clientPut(const struct Client *client, uint8_t color, char cell) {
 int main() {
     int error;
 
-    signal(SIGPIPE, SIG_IGN);
-
     tilesMap();
 
     int server = socket(PF_LOCAL, SOCK_STREAM, 0);
@@ -304,6 +302,10 @@ int main() {
             if (fd < 0) err(EX_IOERR, "accept");
             fcntl(fd, F_SETFL, O_NONBLOCK);
 
+            int on = 1;
+            error = setsockopt(fd, SOL_SOCKET, SO_NOSIGPIPE, &on, sizeof(on));
+            if (error) err(EX_IOERR, "setsockopt");
+
             struct Client *client = clientAdd(fd);
 
             struct kevent event = {
coming something like one sort of thing. God, it took me a whole month (more?) to read and this is only my third book of the year :( I need some more novellas to read, but the other books I have from the library currently are also thick. 2022-03-22Source ~/.profile.local if it existsJune McEnroe 2022-03-18Publish "Addendum 2021"June McEnroe 2022-03-16Remove wcwidth portJune McEnroe DYLD_FORCE_FLAT_NAMESPACE no longer exists in macOS 12 so this approach doesn't work anymore. Moved to <https://git.causal.agency/jorts/tree/wcwidth> and compiled into <https://git.causal.agency/jorts/tree/ncurses>. 2022-03-16Remove -j4 from ./PlanJune McEnroe Plan learned to set this automatically! 2022-03-15Rewrite Linux install.sh for DebianJune McEnroe 2022-03-15Remove dashJune McEnroe