From: Robert Pluim <rpluim@gmail.com>
To: Eric Abrahamsen <eric@ericabrahamsen.net>
Cc: Lars Ingebrigtsen <larsi@gnus.org>,
Christian Barthel <bch@online.de>,
ding@gnus.org
Subject: Re: new wifi connection = nntp timeout = Emacs restart?
Date: Mon, 04 May 2020 19:21:15 +0200 [thread overview]
Message-ID: <m27dxr4nw4.fsf@gmail.com> (raw)
In-Reply-To: <874ksvodwm.fsf@ericabrahamsen.net> (Eric Abrahamsen's message of "Mon, 04 May 2020 09:36:41 -0700")
>>>>> On Mon, 04 May 2020 09:36:41 -0700, Eric Abrahamsen <eric@ericabrahamsen.net> said:
>> Eric, are you on GNU/Linux? I can cook up a patch for that platform to
>> try if you want.
Eric> Yes, I'm on arch linux. I'd be happy to try this out. I'll be switching
Eric> networks later this morning, if you've got something on hand already!
Be prepared for rather more network traffic when Gnus is idle.
diff --git a/src/process.c b/src/process.c
index 6e5bcf307a..fb0a20c797 100644
--- a/src/process.c
+++ b/src/process.c
@@ -38,6 +38,7 @@ Copyright (C) 1985-1988, 1993-1996, 1998-1999, 2001-2020 Free Software
#include <sys/socket.h>
#include <netdb.h>
#include <netinet/in.h>
+#include <netinet/tcp.h>
#include <arpa/inet.h>
#endif /* subprocesses */
@@ -3456,6 +3457,27 @@ connect_network_socket (Lisp_Object proc, Lisp_Object addrinfos,
optbits |= set_socket_option (s, key, val);
}
}
+ if (!p->is_server && p->socktype != SOCK_DGRAM)
+ {
+ int optval;
+ int sz = sizeof(optval);
+ /* Enable keepalive. */
+ optval = 1;
+ if (setsockopt (s, SOL_SOCKET, SO_KEEPALIVE, &optval, sz))
+ report_file_error ("socket keepalive 1", Qnil);
+ /* Set idle time. */
+ optval = 1;
+ if (setsockopt (s, IPPROTO_TCP, TCP_KEEPIDLE, &optval, sz))
+ report_file_error ("socket keepalive 2", Qnil);
+ /* Time between keepalives. */
+ optval = 1;
+ if (setsockopt (s, IPPROTO_TCP, TCP_KEEPINTVL, &optval, sz))
+ report_file_error ("socket keepalive 3", Qnil);
+ /* Number of probes. */
+ optval = 2;
+ if (setsockopt (s, IPPROTO_TCP, TCP_KEEPCNT, &optval, sz))
+ report_file_error ("socket keepalive 4", Qnil);
+ }
if (p->is_server)
{
next prev parent reply other threads:[~2020-05-04 17:22 UTC|newest]
Thread overview: 67+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-04-16 17:37 Eric Abrahamsen
2020-04-17 11:46 ` Eric S Fraga
2020-04-17 12:20 ` Gijs Hillenius
2020-04-17 12:26 ` Andreas Schwab
2020-04-17 14:51 ` Eric Abrahamsen
2020-04-17 15:38 ` David Engster
2020-04-17 16:35 ` Eric Abrahamsen
2020-04-19 6:37 ` Christian Barthel
2020-04-19 17:32 ` Eric Abrahamsen
2020-04-19 18:02 ` Robert Pluim
2020-04-19 21:23 ` Eric Abrahamsen
2020-04-19 22:10 ` Eric Abrahamsen
2020-04-20 4:54 ` Eric Abrahamsen
2020-04-20 7:40 ` Andreas Schwab
2020-04-20 15:45 ` Eric Abrahamsen
2020-04-20 15:54 ` Robert Pluim
2020-04-20 18:24 ` Eric Abrahamsen
2020-04-21 8:36 ` Alberto Luaces
2020-04-21 15:53 ` Eric Abrahamsen
2020-04-22 7:37 ` Alberto Luaces
2020-04-22 8:28 ` Alberto Luaces
2020-04-30 5:26 ` Lars Ingebrigtsen
2020-04-30 17:34 ` Eric Abrahamsen
2020-04-30 21:49 ` Lars Ingebrigtsen
2020-04-30 22:11 ` Eric Abrahamsen
2020-05-04 12:53 ` Robert Pluim
2020-05-04 13:13 ` Andreas Schwab
2020-05-04 13:33 ` Robert Pluim
2020-05-04 14:35 ` Andreas Schwab
2020-05-04 14:46 ` Robert Pluim
2020-05-04 15:10 ` Andreas Schwab
2020-05-04 16:29 ` Robert Pluim
2020-05-04 14:51 ` Lars Ingebrigtsen
2020-05-04 16:13 ` Robert Pluim
2020-05-04 16:36 ` Eric Abrahamsen
2020-05-04 17:21 ` Robert Pluim [this message]
2020-05-04 18:01 ` Lars Ingebrigtsen
2020-05-05 7:41 ` new wifi connection = nntp timeout = Emacs restart?, " Robert Pluim
2020-05-05 8:19 ` Lars Ingebrigtsen
2020-05-05 11:55 ` Robert Pluim
2020-05-19 13:34 ` Lars Ingebrigtsen
2020-05-19 13:36 ` Lars Ingebrigtsen
2020-05-04 18:47 ` Eric Abrahamsen
2020-05-04 15:38 ` Eric Abrahamsen
2020-05-04 16:28 ` Robert Pluim
2020-04-30 17:38 ` Eric Abrahamsen
2020-04-30 21:51 ` Lars Ingebrigtsen
2020-04-30 22:26 ` Eric Abrahamsen
2020-04-30 22:28 ` Lars Ingebrigtsen
2020-04-30 22:39 ` Eric Abrahamsen
2020-04-30 22:55 ` Lars Ingebrigtsen
2020-04-30 23:13 ` Eric Abrahamsen
2020-04-30 23:23 ` Lars Ingebrigtsen
2020-05-01 9:46 ` David Engster
2020-05-01 10:35 ` David Engster
2020-05-01 17:29 ` Eric Abrahamsen
2020-05-01 20:51 ` David Engster
2020-05-02 0:33 ` Eric Abrahamsen
2020-05-02 10:20 ` David Engster
2020-05-02 15:13 ` Eric Abrahamsen
2020-05-02 16:50 ` David Engster
2020-05-02 19:07 ` Eric Abrahamsen
2020-05-19 13:23 ` Lars Ingebrigtsen
2020-05-21 0:45 ` Eric Abrahamsen
2020-06-26 9:38 ` Lars Ingebrigtsen
2020-08-21 20:47 ` Eric Abrahamsen
2020-05-01 18:06 ` Eric Abrahamsen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=m27dxr4nw4.fsf@gmail.com \
--to=rpluim@gmail.com \
--cc=bch@online.de \
--cc=ding@gnus.org \
--cc=eric@ericabrahamsen.net \
--cc=larsi@gnus.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).