about summary refs log tree commit diff homepage
diff options
context:
space:
mode:
Diffstat (limited to '')
-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 = {
>Parse config laterJune McEnroe 2020-08-15Only log signals other than SIGTERMJune McEnroe 2020-08-15Clarify restart interval in catsitd manualJune McEnroe 2020-08-15Fix resetting restart interval with explicit restartJune McEnroe 2020-08-15Add reset interval after which restart interval is resetJune McEnroe 2020-08-15Log when service name pattern doesn't matchJune McEnroe 2020-08-15Add FreeBSD rc scriptJune McEnroe 2020-08-15Call setproctitle with number of servicesJune McEnroe 2020-08-15Rename project to catsitJune McEnroe 2020-08-15Use only LOG_NOTICE and LOG_WARNINGJune McEnroe 2020-08-15Make log messages consistentJune McEnroe 2020-08-15Remove closelog callJune McEnroe 2020-08-15Implement service statusJune McEnroe 2020-08-15Parse control commandsJune McEnroe 2020-08-15Read service pipesJune McEnroe 2020-08-15Implement non-blocking line-buffered readingJune McEnroe 2020-08-15Generate tags fileJune McEnroe 2020-08-15Just use CLOCK_MONOTONIC and clean up includesJune McEnroe 2020-08-15Reap childrenJune McEnroe 2020-08-14Implement serviceSignal, serviceStop, serviceRestartJune McEnroe 2020-08-14Reset restartInterval and restartDeadline on startJune McEnroe 2020-08-14Switch to timespec for timeoutsJune McEnroe 2020-08-14Implement serviceStartJune McEnroe 2020-08-14Flesh out Service structJune McEnroe 2020-08-14Build environment for servicesJune McEnroe 2020-08-14Implement spawntab parsingJune McEnroe 2020-08-14Open syslog, daemonize, write PIDJune McEnroe 2020-08-14Implement user and group lookupJune McEnroe 2020-08-14Add install targetJune McEnroe 2020-08-14Add spawnd skeletonJune McEnroe