Procházet zdrojové kódy

Merge pull request #101 from beinvisible/master

enable TCP keepalive
scandum před 3 roky
rodič
revize
f10d67801c
1 změnil soubory, kde provedl 6 přidání a 0 odebrání
  1. 6 0
      src/net.c

+ 6 - 0
src/net.c

@@ -145,6 +145,12 @@ int connect_mud(struct session *ses, char *host, char *port)
 		return -1;
 	}
 
+	int optval = 1;
+	if (setsockopt(sock, SOL_SOCKET, SO_KEEPALIVE, &optval, sizeof(optval)) < 0)
+	{
+		syserr_printf(ses, "connect_mud: unable to use tcp keepalive, continuing without");
+	}
+
 	ses->connect_error = connect(sock, address->ai_addr, address->ai_addrlen);
 
 	if (fcntl(sock, F_SETFL, O_NDELAY|O_NONBLOCK) == -1)