summaryrefslogtreecommitdiff
path: root/packet.c
diff options
context:
space:
mode:
Diffstat (limited to 'packet.c')
-rw-r--r--packet.c19
1 files changed, 10 insertions, 9 deletions
diff --git a/packet.c b/packet.c
index 5435b0717..cd42f2f75 100644
--- a/packet.c
+++ b/packet.c
@@ -37,7 +37,7 @@
37 */ 37 */
38 38
39#include "includes.h" 39#include "includes.h"
40RCSID("$OpenBSD: packet.c,v 1.41 2001/01/02 20:41:02 markus Exp $"); 40RCSID("$OpenBSD: packet.c,v 1.42 2001/01/09 21:19:50 markus Exp $");
41 41
42#include "xmalloc.h" 42#include "xmalloc.h"
43#include "buffer.h" 43#include "buffer.h"
@@ -1247,25 +1247,26 @@ packet_set_interactive(int interactive, int keepalives)
1247 error("setsockopt SO_KEEPALIVE: %.100s", strerror(errno)); 1247 error("setsockopt SO_KEEPALIVE: %.100s", strerror(errno));
1248 } 1248 }
1249 /* 1249 /*
1250 * IPTOS_LOWDELAY, TCP_NODELAY and IPTOS_THROUGHPUT are IPv4 only 1250 * IPTOS_LOWDELAY and IPTOS_THROUGHPUT are IPv4 only
1251 */ 1251 */
1252 if (!packet_connection_is_ipv4())
1253 return;
1254 if (interactive) { 1252 if (interactive) {
1255 /* 1253 /*
1256 * Set IP options for an interactive connection. Use 1254 * Set IP options for an interactive connection. Use
1257 * IPTOS_LOWDELAY and TCP_NODELAY. 1255 * IPTOS_LOWDELAY and TCP_NODELAY.
1258 */ 1256 */
1259#if defined(IP_TOS) && !defined(IP_TOS_IS_BROKEN) 1257#if defined(IP_TOS) && !defined(IP_TOS_IS_BROKEN)
1260 int lowdelay = IPTOS_LOWDELAY; 1258 if (packet_connection_is_ipv4()) {
1261 if (setsockopt(connection_in, IPPROTO_IP, IP_TOS, (void *) &lowdelay, 1259 int lowdelay = IPTOS_LOWDELAY;
1262 sizeof(lowdelay)) < 0) 1260 if (setsockopt(connection_in, IPPROTO_IP, IP_TOS,
1263 error("setsockopt IPTOS_LOWDELAY: %.100s", strerror(errno)); 1261 (void *) &lowdelay, sizeof(lowdelay)) < 0)
1262 error("setsockopt IPTOS_LOWDELAY: %.100s",
1263 strerror(errno));
1264 }
1264#endif 1265#endif
1265 if (setsockopt(connection_in, IPPROTO_TCP, TCP_NODELAY, (void *) &on, 1266 if (setsockopt(connection_in, IPPROTO_TCP, TCP_NODELAY, (void *) &on,
1266 sizeof(on)) < 0) 1267 sizeof(on)) < 0)
1267 error("setsockopt TCP_NODELAY: %.100s", strerror(errno)); 1268 error("setsockopt TCP_NODELAY: %.100s", strerror(errno));
1268 } else { 1269 } else if (packet_connection_is_ipv4()) {
1269 /* 1270 /*
1270 * Set IP options for a non-interactive connection. Use 1271 * Set IP options for a non-interactive connection. Use
1271 * IPTOS_THROUGHPUT. 1272 * IPTOS_THROUGHPUT.