diff options
author | Kimmo Vuorinen <kimmo.vuorinen@gmail.com> | 2020-02-12 20:00:19 +0200 |
---|---|---|
committer | Nuno Goncalves <nunojpg@gmail.com> | 2020-02-20 09:04:33 +0100 |
commit | e7088fe82ca72c47863398103408e64761308481 (patch) | |
tree | cae4d8a0e9c69d6695dec4f1827a7a2b22536c41 /net/sshtunnel/files/sshtunnel.init | |
parent | fe71eacbc64c45e1212119aff63c101e4f0abdf9 (diff) |
sshtunnel: init script improvements
* Fix for OpenSSH pickiness about argument order to be able to use
tap devices.
* Allow tun/tap devices to be used from index 0 as demonstrated in
example config.
* Change arithmetic expressions.
Signed-off-by: Kimmo Vuorinen <kimmo.vuorinen@gmail.com>
Diffstat (limited to 'net/sshtunnel/files/sshtunnel.init')
-rw-r--r-- | net/sshtunnel/files/sshtunnel.init | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/net/sshtunnel/files/sshtunnel.init b/net/sshtunnel/files/sshtunnel.init index fa5509e02..3db8dbb11 100644 --- a/net/sshtunnel/files/sshtunnel.init +++ b/net/sshtunnel/files/sshtunnel.init @@ -20,7 +20,7 @@ _err() { append_params() { local p v args - for p in $*; do + for p in "$@"; do eval "v=\$$p" [ -n "$v" ] && args="$args -o $p=$v" done @@ -80,8 +80,8 @@ validate_tunnelD_section() { validate_tunnelW_section() { uci_load_validate sshtunnel tunnelW "$1" "$2" \ 'vpntype:or("ethernet", "point-to-point"):point-to-point' \ - 'localdev:or("any", min(1))' \ - 'remotedev:or("any", min(1))' + 'localdev:or("any", min(0))' \ + 'remotedev:or("any", min(0))' } load_tunnelR() { @@ -96,7 +96,7 @@ load_tunnelR() { [ -n "$remoteport" -a -n "$localport" -a -n "$remoteaddress" ] || { _err "tunnelR $1: missing required options"; return 1; } # count nr of valid sections to make sure there are at least one - let count++ + count=$((count+=1)) _log "tunnelR at $server: -R $remoteaddress:$remoteport:$localaddress:$localport" append_string "ARGS_tunnels" "-R $remoteaddress:$remoteport:$localaddress:$localport" @@ -114,7 +114,7 @@ load_tunnelL() { [ -n "$remoteport" -a -n "$localport" -a -n "$remoteaddress" ] || { _err "tunnelL $1: missing required options"; return 1; } # count nr of valid sections to make sure there are at least one - let count++ + count=$((count+=1)) _log "tunnelL at $server: -L $localaddress:$localport:$remoteaddress:$remoteport" append_string "ARGS_tunnels" "-L $localaddress:$localport:$remoteaddress:$remoteport" @@ -132,7 +132,7 @@ load_tunnelD() { [ -n "$localport" ] || { _err "tunnelD $1: missing localport"; return 1; } # count nr of valid sections to make sure there are at least one - let count++ + count=$((count+=1)) _log "proxy via $server: -D $localaddress:$localport" append_string "ARGS_tunnels" "-D $localaddress:$localport" @@ -152,10 +152,10 @@ load_tunnelW() { [ "$user" = "root" ] || { _err "tunnelW $1: root is required for tun"; return 1; } # count nr of valid sections to make sure there are at least one - let count++ + count=$((count+=1)) - _log "tunnelW to $server: -w $localdev:$remotedev -o Tunnel=$vpntype" - append_string "ARGS_tunnels" "-w $localdev:$remotedev -o Tunnel=$vpntype" + _log "tunnelW to $server: -o Tunnel=$vpntype -w $localdev:$remotedev" + append_string "ARGS_tunnels" "-o Tunnel=$vpntype -w $localdev:$remotedev" } load_server() { |