diff options
author | Florian Obser <florian@cvs.openbsd.org> | 2014-04-23 09:13:01 +0000 |
---|---|---|
committer | Florian Obser <florian@cvs.openbsd.org> | 2014-04-23 09:13:01 +0000 |
commit | 87964bea39547d02831ec953aedc480058429db8 (patch) | |
tree | f401911e1daffa4464f57aacb4a0eb99cfe8644a /usr.sbin/traceroute | |
parent | c5fcb68cb0cc81a3b5aec61e6eb9a3b7be59e518 (diff) |
move AF independet setsockopts down
OK benno@
Diffstat (limited to 'usr.sbin/traceroute')
-rw-r--r-- | usr.sbin/traceroute/traceroute.c | 22 |
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)); |