diff options
author | Jouke Witteveen <j.witteveen@gmail.com> | 2014-04-26 13:39:23 +0200 |
---|---|---|
committer | Jouke Witteveen <j.witteveen@gmail.com> | 2014-05-06 12:00:46 +0200 |
commit | b4f7bf8ca067542b48ed4099c9feaf9f62f89a62 (patch) | |
tree | 810a73465e95922d1109daf0d179ed60c723464b | |
parent | e9c36cc1ef0e17d80d279a06f15833e8da13ffb2 (diff) | |
download | netctl-b4f7bf8ca067542b48ed4099c9feaf9f62f89a62.tar.gz netctl-b4f7bf8ca067542b48ed4099c9feaf9f62f89a62.tar.xz |
Fix default interface bindings (fourth time)
The following changes introduced in Bash 4.3 necessitate this commit:
- Setting the array attribute no longer initializes an array.
- Empty-but-set arrays no longer pass [[ -v ]].
Previous attempts:
feb669f4b2a15e6ea1d84be336f12be4650f9d2d
711c46457ae9fef52c7c529d89c67d0d526f73ef
e8210827fd59e4539a70af55cb452b211633fedd
-rw-r--r-- | src/lib/connections/bond | 3 | ||||
-rw-r--r-- | src/lib/connections/bridge | 3 | ||||
-rw-r--r-- | src/lib/connections/dummy | 3 | ||||
-rw-r--r-- | src/lib/connections/tunnel | 3 | ||||
-rw-r--r-- | src/lib/connections/tuntap | 3 | ||||
-rw-r--r-- | src/netctl.in | 2 |
6 files changed, 11 insertions, 6 deletions
diff --git a/src/lib/connections/bond b/src/lib/connections/bond index 2909b90..7e4112f 100644 --- a/src/lib/connections/bond +++ b/src/lib/connections/bond @@ -2,7 +2,8 @@ . "$SUBR_DIR/ip" -declare -ag BindsToInterfaces +# Make sure BindsToInterfaces is set +BindsToInterfaces=("${BindsToInterfaces[@]}") bond_up() { if is_interface "$Interface"; then diff --git a/src/lib/connections/bridge b/src/lib/connections/bridge index 1b25f2b..7d05576 100644 --- a/src/lib/connections/bridge +++ b/src/lib/connections/bridge @@ -2,7 +2,8 @@ . "$SUBR_DIR/ip" -declare -ag BindsToInterfaces +# Make sure BindsToInterfaces is set +BindsToInterfaces=("${BindsToInterfaces[@]}") bridge_up() { if is_interface "$Interface"; then diff --git a/src/lib/connections/dummy b/src/lib/connections/dummy index 5a12d1e..8726d86 100644 --- a/src/lib/connections/dummy +++ b/src/lib/connections/dummy @@ -2,7 +2,8 @@ . "$SUBR_DIR/ip" -declare -ag BindsToInterfaces +# Make sure BindsToInterfaces is set +BindsToInterfaces=("${BindsToInterfaces[@]}") dummy_up() { if is_interface "$Interface"; then diff --git a/src/lib/connections/tunnel b/src/lib/connections/tunnel index ab62cc7..9ed2383 100644 --- a/src/lib/connections/tunnel +++ b/src/lib/connections/tunnel @@ -2,7 +2,8 @@ . "$SUBR_DIR/ip" -declare -ag BindsToInterfaces +# Make sure BindsToInterfaces is set +BindsToInterfaces=("${BindsToInterfaces[@]}") tunnel_up() { if is_interface "$Interface"; then diff --git a/src/lib/connections/tuntap b/src/lib/connections/tuntap index 2c00839..0191ae0 100644 --- a/src/lib/connections/tuntap +++ b/src/lib/connections/tuntap @@ -2,7 +2,8 @@ . "$SUBR_DIR/ip" -declare -ag BindsToInterfaces +# Make sure BindsToInterfaces is set +BindsToInterfaces=("${BindsToInterfaces[@]}") tuntap_up() { if is_interface "$Interface"; then diff --git a/src/netctl.in b/src/netctl.in index 6babecf..dc19ab0 100644 --- a/src/netctl.in +++ b/src/netctl.in @@ -111,7 +111,7 @@ unit_enable() { echo ".include @systemdsystemunitdir@/netctl@.service" > "$unit" echo -e "\n[Unit]" >> "$unit" [[ -n $Description ]] && echo "Description=$Description" >> "$unit" - [[ -v BindsToInterfaces ]] || BindsToInterfaces=$Interface + declare -p BindsToInterfaces &> /dev/null || BindsToInterfaces=$Interface if (( ${#BindsToInterfaces[@]} )); then : ${InterfaceRoot=sys/subsystem/net/devices/} printf "BindsTo=$(sd_escape "$InterfaceRoot")%s.device\n" \ |