summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJan Kratochvil <jan.kratochvil@redhat.com>2011-01-07 15:24:46 +0100
committerJan Kratochvil <jan.kratochvil@redhat.com>2011-01-07 15:24:46 +0100
commit88031229cfa6b44725c7c05604df2258dd6ca64e (patch)
tree42f2e109908b5bec5e8a1b0fab0efd22dc7fc54d
parente18491f16b8bf08fb08b1b0885f3a699a5d2cbb8 (diff)
Use TCP_NODELAY (and SO_KEEPALIVE) as suggested by Frank Ch. Eigler.upstream/jankratochvil/gdbserver
-rw-r--r--src/gdbserver.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/gdbserver.c b/src/gdbserver.c
index 2986506b..9b9e8625 100644
--- a/src/gdbserver.c
+++ b/src/gdbserver.c
@@ -45,6 +45,7 @@
#include <fcntl.h>
#include <stdarg.h>
#include <sys/param.h>
+#include <netinet/tcp.h>
/* FIXME: regs should use GDB XML arch descriptor instead! */
#include <sys/user.h>
@@ -139,6 +140,14 @@ open_socket (const char *ports)
if (i != 0)
error (EXIT_FAILURE, errno, gettext ("Could not close the port"));
+ i = 1;
+ /* Errors ignored. */
+ setsockopt (sock2, SOL_SOCKET, SO_KEEPALIVE, &i, sizeof (i));
+
+ i = 1;
+ /* Errors ignored. */
+ setsockopt (sock2, IPPROTO_TCP, TCP_NODELAY, &i, sizeof (i));
+
return sock2;
}