summaryrefslogtreecommitdiff
path: root/usr.sbin/traceroute
diff options
context:
space:
mode:
authorFlorian Obser <florian@cvs.openbsd.org>2014-04-23 09:13:01 +0000
committerFlorian Obser <florian@cvs.openbsd.org>2014-04-23 09:13:01 +0000
commit87964bea39547d02831ec953aedc480058429db8 (patch)
treef401911e1daffa4464f57aacb4a0eb99cfe8644a /usr.sbin/traceroute
parentc5fcb68cb0cc81a3b5aec61e6eb9a3b7be59e518 (diff)
move AF independet setsockopts down
OK benno@
Diffstat (limited to 'usr.sbin/traceroute')
-rw-r--r--usr.sbin/traceroute/traceroute.c22
1 files changed, 12 insertions, 10 deletions
diff --git a/usr.sbin/traceroute/traceroute.c b/usr.sbin/traceroute/traceroute.c
index 441d8fe2a8d..ce8100e59fc 100644
--- a/usr.sbin/traceroute/traceroute.c
+++ b/usr.sbin/traceroute/traceroute.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: traceroute.c,v 1.118 2014/04/23 09:10:53 florian Exp $ */
+/* $OpenBSD: traceroute.c,v 1.119 2014/04/23 09:13:00 florian Exp $ */
/* $NetBSD: traceroute.c,v 1.10 1995/05/21 15:50:45 mycroft Exp $ */
/*-
@@ -613,18 +613,9 @@ main(int argc, char *argv[])
ip->ip_v = IPVERSION;
ip->ip_tos = tos;
- if (options & SO_DEBUG)
- (void) setsockopt(rcvsock, SOL_SOCKET, SO_DEBUG,
- (char *)&on, sizeof(on));
- if (setsockopt(sndsock, SOL_SOCKET, SO_SNDBUF, (char *)&datalen,
- sizeof(datalen)) < 0)
- err(6, "SO_SNDBUF");
if (setsockopt(sndsock, IPPROTO_IP, IP_HDRINCL, (char *)&on,
sizeof(on)) < 0)
err(6, "IP_HDRINCL");
- if (options & SO_DEBUG)
- (void) setsockopt(sndsock, SOL_SOCKET, SO_DEBUG,
- (char *)&on, sizeof(on));
if (source) {
(void) memset(&from4, 0, sizeof(from4));
@@ -642,6 +633,17 @@ main(int argc, char *argv[])
err(1, "bind");
}
+ if (options & SO_DEBUG) {
+ (void) setsockopt(rcvsock, SOL_SOCKET, SO_DEBUG,
+ (char *)&on, sizeof(on));
+ (void) setsockopt(sndsock, SOL_SOCKET, SO_DEBUG,
+ (char *)&on, sizeof(on));
+ }
+
+ if (setsockopt(sndsock, SOL_SOCKET, SO_SNDBUF, (char *)&datalen,
+ sizeof(datalen)) < 0)
+ err(6, "SO_SNDBUF");
+
if (getnameinfo(to, to->sa_len, hbuf,
sizeof(hbuf), NULL, 0, NI_NUMERICHOST))
strlcpy(hbuf, "(invalid)", sizeof(hbuf));