This commit is contained in:
Andy Pan 2024-04-17 21:34:24 +08:00 committed by GitHub
commit aacb446d4b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 2 additions and 3 deletions

View File

@ -173,6 +173,7 @@ int anetKeepAlive(char *err, int fd, int interval)
}
intvl = idle/3;
if (intvl < 10) intvl = 10; /* kernel expects at least 10 seconds */
if (setsockopt(fd, IPPROTO_TCP, TCP_KEEPINTVL, &intvl, sizeof(intvl))) {
anetSetError(err, "setsockopt TCP_KEEPINTVL: %s\n", strerror(errno));
return ANET_ERR;
@ -195,9 +196,7 @@ int anetKeepAlive(char *err, int fd, int interval)
/* Note that the consequent probes will not be sent at equal intervals on Solaris,
* but will be sent using the exponential backoff algorithm. */
intvl = idle/3;
cnt = 3;
int time_to_abort = intvl * cnt;
int time_to_abort = idle;
if (setsockopt(fd, IPPROTO_TCP, TCP_KEEPALIVE_ABORT_THRESHOLD, &time_to_abort, sizeof(time_to_abort))) {
anetSetError(err, "setsockopt TCP_KEEPCNT: %s\n", strerror(errno));
return ANET_ERR;