diff options
Diffstat (limited to '41.patch')
-rw-r--r-- | 41.patch | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/41.patch b/41.patch new file mode 100644 index 000000000000..d1a2ca3e433f --- /dev/null +++ b/41.patch @@ -0,0 +1,36 @@ +From 8529255c22858c784aca6649f80acf43cba78725 Mon Sep 17 00:00:00 2001 +From: Jonathan Ravat <jonathan.ravat@gmail.com> +Date: Tue, 6 Apr 2021 19:16:24 +0200 +Subject: [PATCH] Fix an error when remote IPv6 address is used + +--- + src/otp.c | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/src/otp.c b/src/otp.c +index 5fed65e..5bab2fc 100644 +--- a/src/otp.c ++++ b/src/otp.c +@@ -714,6 +714,7 @@ openvpn_plugin_func_v1 (openvpn_plugin_handle_t handle, const int type, const ch + const char *username = get_env ("username", envp); + const char *password = get_env ("password", envp); + const char *ip = get_env ("untrusted_ip", envp); ++ const char *ip6 = get_env ("untrusted_ip6", envp); + const char *port = get_env ("untrusted_port", envp); + + if (username == NULL) { +@@ -724,10 +725,13 @@ openvpn_plugin_func_v1 (openvpn_plugin_handle_t handle, const int type, const ch + LOG("OTP_AUTH: Password is missing\n"); + return OPENVPN_PLUGIN_FUNC_ERROR; + } +- if (ip == NULL || port == NULL) { ++ if ((ip == NULL && ip6 == NULL) || port == NULL) { + LOG("OTP_AUTH: IP or Port number is missing\n"); + return OPENVPN_PLUGIN_FUNC_ERROR; + } ++ if (ip == NULL) { ++ ip = ip6; ++ } + + const int ulen = strlen(username); + const int pwlen = strlen(password); |