Browse Source

openconnect: allow specifying a custom CSD wrapper script

Some VPN servers might be configured in a way that a CSD wrapper script
is mandatory to complete the authentication process, allow that to be
specified for openconnect.

Signed-off-by: Florian Fainelli <florian@openwrt.org>
Florian Fainelli 10 years ago
parent
commit
b1f228f4cf
1 changed files with 3 additions and 1 deletions
  1. 3
    1
      net/openconnect/files/openconnect.sh

+ 3
- 1
net/openconnect/files/openconnect.sh View File

14
 	proto_config_add_string "token_secret"
14
 	proto_config_add_string "token_secret"
15
 	proto_config_add_string "interface"
15
 	proto_config_add_string "interface"
16
 	proto_config_add_string "os"
16
 	proto_config_add_string "os"
17
+	proto_config_add_string "csd_wrapper"
17
 	no_device=1
18
 	no_device=1
18
 	available=1
19
 	available=1
19
 }
20
 }
21
 proto_openconnect_setup() {
22
 proto_openconnect_setup() {
22
 	local config="$1"
23
 	local config="$1"
23
 
24
 
24
-	json_get_vars server port username serverhash authgroup password interface token_mode token_secret os
25
+	json_get_vars server port username serverhash authgroup password interface token_mode token_secret os csd_wrapper
25
 
26
 
26
 	grep -q tun /proc/modules || insmod tun
27
 	grep -q tun /proc/modules || insmod tun
27
 
28
 
70
 	[ -n "$token_mode" ] && append cmdline "--token-mode=$token_mode"
71
 	[ -n "$token_mode" ] && append cmdline "--token-mode=$token_mode"
71
 	[ -n "$token_secret" ] && append cmdline "--token-secret=$token_secret"
72
 	[ -n "$token_secret" ] && append cmdline "--token-secret=$token_secret"
72
 	[ -n "$os" ] && append cmdline "--os=$os"
73
 	[ -n "$os" ] && append cmdline "--os=$os"
74
+	[ -n "$csd_wrapper" ] && [ -x "$csd_wrapper" ] && append cmdline "--csd-wrapper=$csd_wrapper"
73
 
75
 
74
 	proto_export INTERFACE="$config"
76
 	proto_export INTERFACE="$config"
75
 	logger -t openconnect "executing 'openconnect $cmdline'"
77
 	logger -t openconnect "executing 'openconnect $cmdline'"