summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkrw <krw@openbsd.org>2012-11-16 16:46:18 +0000
committerkrw <krw@openbsd.org>2012-11-16 16:46:18 +0000
commit7167b3dbee74c1944374ed261ab27f6a73d9715c (patch)
tree5e85ffcf2a6f23c18352691a1687c1096c98bff3
parentAdd missing 'break;' so that IFT_ETHER, etc. routes are deleted as (diff)
downloadwireguard-openbsd-7167b3dbee74c1944374ed261ab27f6a73d9715c.tar.xz
wireguard-openbsd-7167b3dbee74c1944374ed261ab27f6a73d9715c.zip
Call discover_interface() before forking, so both processes will know
the interface index, hardware address, etc. as well as the interface name.
-rw-r--r--sbin/dhclient/dhclient.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/sbin/dhclient/dhclient.c b/sbin/dhclient/dhclient.c
index 1da4fd047fd..fc2bfcc1d83 100644
--- a/sbin/dhclient/dhclient.c
+++ b/sbin/dhclient/dhclient.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: dhclient.c,v 1.177 2012/11/15 14:54:18 krw Exp $ */
+/* $OpenBSD: dhclient.c,v 1.178 2012/11/16 16:46:18 krw Exp $ */
/*
* Copyright 2004 Henning Brauer <henning@openbsd.org>
@@ -359,6 +359,9 @@ main(int argc, char *argv[])
if (pipe(pipe_fd) == -1)
error("pipe");
+ /* set up the interface */
+ discover_interface();
+
fork_privchld(pipe_fd[0], pipe_fd[1]);
close(pipe_fd[0]);
@@ -385,9 +388,6 @@ main(int argc, char *argv[])
sizeof(ifi->rdomain)) == -1)
error("setsockopt(ROUTE_TABLEFILTER): %m");
- /* set up the interface */
- discover_interface();
-
if (chroot(_PATH_VAREMPTY) == -1)
error("chroot");
if (chdir("/") == -1)