summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkrw <krw@openbsd.org>2020-12-21 16:52:49 +0000
committerkrw <krw@openbsd.org>2020-12-21 16:52:49 +0000
commitbae23f9be87dd18246a34ce7232742765e900a37 (patch)
tree68a7a197c0954b4909fadda582ee519ceaa120f9
parentRename syntax test of the \O escape sequence (suppress output groff (diff)
downloadwireguard-openbsd-bae23f9be87dd18246a34ce7232742765e900a37.tar.xz
wireguard-openbsd-bae23f9be87dd18246a34ce7232742765e900a37.zip
Avoid issuing pointless 'ifconfig <if> up' when processing 'dhcp' in
hostname.if files. dhclient(8) does that itself. Part of the "further script optimizations" promised in r1.200 of netstart. Tested & ok gnezdo@
-rw-r--r--distrib/miniroot/install.sub7
-rw-r--r--etc/netstart7
2 files changed, 8 insertions, 6 deletions
diff --git a/distrib/miniroot/install.sub b/distrib/miniroot/install.sub
index 98d5313bcc8..c213a397191 100644
--- a/distrib/miniroot/install.sub
+++ b/distrib/miniroot/install.sub
@@ -1,5 +1,5 @@
#!/bin/ksh
-# $OpenBSD: install.sub,v 1.1158 2020/12/11 12:34:11 bluhm Exp $
+# $OpenBSD: install.sub,v 1.1159 2020/12/21 16:52:49 krw Exp $
#
# Copyright (c) 1997-2015 Todd Miller, Theo de Raadt, Ken Westerback
# Copyright (c) 2015, Robert Peichaer <rpe@openbsd.org>
@@ -2378,8 +2378,9 @@ parse_hn_line() {
_cmds[$_prev]="${_c[@]}"
;;
dhcp) ! $_has_dhclient && return
- _c[0]=
- _cmds[${#_cmds[*]}]="ifconfig $_if ${_c[@]} up;dhclient $_if"
+ _c[0]="ifconfig $_if"
+ ((${#_c[*]} > 1)) && _cmds[${#_cmds[*]}]="${_c[@]}"
+ _cmds[${#_cmds[*]}]="dhclient $_if"
V4_DHCPCONF=true
;;
'!'*|bridge)
diff --git a/etc/netstart b/etc/netstart
index a7ab625df40..c5743c530ef 100644
--- a/etc/netstart
+++ b/etc/netstart
@@ -1,6 +1,6 @@
#!/bin/sh -
#
-# $OpenBSD: netstart,v 1.209 2020/11/29 20:54:33 tb Exp $
+# $OpenBSD: netstart,v 1.210 2020/12/21 16:52:49 krw Exp $
# Turn off Strict Bourne shell mode.
set +o sh
@@ -63,8 +63,9 @@ parse_hn_line() {
_c[_name]="${_c[_name]} $_daddr"
_cmds[$_prev]="${_c[@]}"
;;
- dhcp) _c[0]=
- _cmds[${#_cmds[*]}]="ifconfig $_if ${_c[@]} up;dhclient $_if"
+ dhcp) _c[0]="ifconfig $_if"
+ ((${#_c[*]} > 1)) && _cmds[${#_cmds[*]}]="${_c[@]}"
+ _cmds[${#_cmds[*]}]="dhclient $_if"
V4_DHCPCONF=true
;;
'!'*) _cmd=$(print -- "${_c[@]}" | sed 's/\$if/'$_if'/g')