summaryrefslogtreecommitdiffstats
path: root/src/usr/local/sbin/ovpn_auth_verify
diff options
context:
space:
mode:
Diffstat (limited to 'src/usr/local/sbin/ovpn_auth_verify')
-rwxr-xr-xsrc/usr/local/sbin/ovpn_auth_verify16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/usr/local/sbin/ovpn_auth_verify b/src/usr/local/sbin/ovpn_auth_verify
new file mode 100755
index 0000000..b38fcb9
--- /dev/null
+++ b/src/usr/local/sbin/ovpn_auth_verify
@@ -0,0 +1,16 @@
+#!/bin/sh
+
+if [ "$1" = "tls" ]; then
+ RESULT=$(/usr/local/sbin/fcgicli -f /etc/inc/openvpn.tls-verify.php -d "servercn=$2&depth=$3&certdepth=$4&certsubject=$5")
+else
+ # Single quoting $password breaks getting the value from the variable.
+ password=$(echo -n "${password}" | openssl enc -base64 | sed -e 's/=/%3D/g')
+ username=$(echo -n "${username}" | openssl enc -base64 | sed -e 's/=/%3D/g')
+ RESULT=$(/usr/local/sbin/fcgicli -f /etc/inc/openvpn.auth-user.php -d "username=$username&password=$password&cn=$common_name&strictcn=$3&authcfg=$2&modeid=$4")
+fi
+
+if [ "${RESULT}" = "OK" ]; then
+ exit 0
+fi
+
+exit 1
OpenPOWER on IntegriCloud