summaryrefslogtreecommitdiffstats
path: root/dhcpcd.c
diff options
context:
space:
mode:
authorRoy Marples <roy@marples.name>2015-07-13 17:40:54 +0000
committerRoy Marples <roy@marples.name>2015-07-13 17:40:54 +0000
commit2862d340c7168d6a65552638a7fe627b2c094d98 (patch)
treeaf4bf91ebe8e18b383ef04abc35bd4f66654569c /dhcpcd.c
parentc20dab452aabaf13f25991911c18d7f817eda534 (diff)
downloaddhcpcd-2862d340c7168d6a65552638a7fe627b2c094d98.tar.xz
Add a noup directive to stop master mode bringing an interface up.
Fixes [96c6bf4e5f].
Diffstat (limited to 'dhcpcd.c')
-rw-r--r--dhcpcd.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/dhcpcd.c b/dhcpcd.c
index a692465f..da5a1709 100644
--- a/dhcpcd.c
+++ b/dhcpcd.c
@@ -904,7 +904,9 @@ dhcpcd_prestartinterface(void *arg)
struct interface *ifp = arg;
pre_start(ifp);
- if (if_up(ifp) == -1)
+ if ((!(ifp->ctx->options & DHCPCD_MASTER) ||
+ ifp->options->options & DHCPCD_IF_UP) &&
+ if_up(ifp) == -1)
logger(ifp->ctx, LOG_ERR, "%s: if_up: %m", ifp->name);
if (ifp->options->options & DHCPCD_LINK &&