summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkrw <krw@openbsd.org>2019-08-06 11:07:36 +0000
committerkrw <krw@openbsd.org>2019-08-06 11:07:36 +0000
commit8552a089f01c7fad070eb0c017594d8b4ca378f6 (patch)
tree2eeede25d83665727e8df946a7c262a5df0791c6
parentremove some debug cruft i should have removed before the last commit. (diff)
downloadwireguard-openbsd-8552a089f01c7fad070eb0c017594d8b4ca378f6.tar.xz
wireguard-openbsd-8552a089f01c7fad070eb0c017594d8b4ca378f6.zip
Use pw->pw_dir when chroot'ing, not _PATH_VAREMPTY.
Brings various dhcp related daemons into line with the common idiom. ok florian@
-rw-r--r--sbin/dhclient/dhclient.c6
-rw-r--r--usr.sbin/dhcpd/dhcpd.c7
-rw-r--r--usr.sbin/dhcrelay/dhcrelay.c4
-rw-r--r--usr.sbin/dhcrelay6/dhcrelay6.c4
4 files changed, 10 insertions, 11 deletions
diff --git a/sbin/dhclient/dhclient.c b/sbin/dhclient/dhclient.c
index b44897d2d8e..c5d197ee274 100644
--- a/sbin/dhclient/dhclient.c
+++ b/sbin/dhclient/dhclient.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: dhclient.c,v 1.650 2019/08/05 16:22:00 krw Exp $ */
+/* $OpenBSD: dhclient.c,v 1.651 2019/08/06 11:07:36 krw Exp $ */
/*
* Copyright 2004 Henning Brauer <henning@openbsd.org>
@@ -642,8 +642,8 @@ main(int argc, char *argv[])
ifi->rbuf_max = newsize;
}
- if (chroot(_PATH_VAREMPTY) == -1)
- fatal("chroot(%s)", _PATH_VAREMPTY);
+ if (chroot(pw->pw_dir) == -1)
+ fatal("chroot(%s)", pw->pw_dir);
if (chdir("/") == -1)
fatal("chdir(\"/\")");
diff --git a/usr.sbin/dhcpd/dhcpd.c b/usr.sbin/dhcpd/dhcpd.c
index 16d59222b91..b3562dce34f 100644
--- a/usr.sbin/dhcpd/dhcpd.c
+++ b/usr.sbin/dhcpd/dhcpd.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: dhcpd.c,v 1.56 2017/02/16 00:24:43 krw Exp $ */
+/* $OpenBSD: dhcpd.c,v 1.57 2019/08/06 11:07:37 krw Exp $ */
/*
* Copyright (c) 2004 Henning Brauer <henning@cvs.openbsd.org>
@@ -48,7 +48,6 @@
#include <err.h>
#include <netdb.h>
-#include <paths.h>
#include <pwd.h>
#include <stdio.h>
#include <stdlib.h>
@@ -245,8 +244,8 @@ main(int argc, char *argv[])
icmp_startup(1, lease_pinged);
- if (chroot(_PATH_VAREMPTY) == -1)
- fatal("chroot %s", _PATH_VAREMPTY);
+ if (chroot(pw->pw_dir) == -1)
+ fatal("chroot %s", pw->pw_dir);
if (chdir("/") == -1)
fatal("chdir(\"/\")");
if (setgroups(1, &pw->pw_gid) ||
diff --git a/usr.sbin/dhcrelay/dhcrelay.c b/usr.sbin/dhcrelay/dhcrelay.c
index 21025defa46..c7a4e7838ce 100644
--- a/usr.sbin/dhcrelay/dhcrelay.c
+++ b/usr.sbin/dhcrelay/dhcrelay.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: dhcrelay.c,v 1.64 2018/03/16 12:31:09 mpi Exp $ */
+/* $OpenBSD: dhcrelay.c,v 1.65 2019/08/06 11:07:37 krw Exp $ */
/*
* Copyright (c) 2004 Henning Brauer <henning@cvs.openbsd.org>
@@ -296,7 +296,7 @@ main(int argc, char *argv[])
if ((pw = getpwnam("_dhcp")) == NULL)
fatalx("user \"_dhcp\" not found");
- if (chroot(_PATH_VAREMPTY) == -1)
+ if (chroot(pw->pw_dir) == -1)
fatal("chroot");
if (chdir("/") == -1)
fatal("chdir(\"/\")");
diff --git a/usr.sbin/dhcrelay6/dhcrelay6.c b/usr.sbin/dhcrelay6/dhcrelay6.c
index 30df0a6a687..1a5a7636076 100644
--- a/usr.sbin/dhcrelay6/dhcrelay6.c
+++ b/usr.sbin/dhcrelay6/dhcrelay6.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: dhcrelay6.c,v 1.2 2017/03/17 16:45:27 jmc Exp $ */
+/* $OpenBSD: dhcrelay6.c,v 1.3 2019/08/06 11:07:37 krw Exp $ */
/*
* Copyright (c) 2017 Rafael Zalamena <rzalamena@openbsd.org>
@@ -253,7 +253,7 @@ main(int argc, char *argv[])
if ((pw = getpwnam(DHCRELAY6_USER)) == NULL)
fatalx("user \"%s\" not found", DHCRELAY6_USER);
- if (chroot(_PATH_VAREMPTY) == -1)
+ if (chroot(pw->pw_dir) == -1)
fatal("chroot");
if (chdir("/") == -1)
fatal("chdir(\"/\")");