From 43bbf3cd8f77951d9d19226b6ebcc49936a34934 Mon Sep 17 00:00:00 2001 From: Jim Wilcoxson Date: Wed, 27 May 2020 18:49:35 -0400 Subject: [PATCH] TCP_KEEPALIVE timer not supported on OSX --- devamlc.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/devamlc.h b/devamlc.h index df7be98..52ddf2c 100644 --- a/devamlc.h +++ b/devamlc.h @@ -911,10 +911,12 @@ int devamlc (int class, int func, int device) { optval = 1; if (setsockopt(fd, IPPROTO_TCP, TCP_NODELAY, &optval, sizeof(optval)) == -1) perror("unable to set TCP_NODELAY"); +#ifndef __APPLE__ /* Set 600 second keepalive idle time for this socket */ optval = 600; - if (setsockopt(fd, 6 /* TCP */, TCP_KEEPIDLE, &optval, sizeof(optval)) == -1) + if (setsockopt(fd, IPPROTO_TCP, TCP_KEEPIDLE, &optval, sizeof(optval)) == -1) perror("unable to set TCP_KEEPIDLE"); +#endif /* ... and turn on keepalive */ optval = 1; if (setsockopt(fd, SOL_SOCKET, SO_KEEPALIVE, &optval, sizeof(optval)) == -1)