[Openvpn-devel,1/2] Single patch:

Message ID 20220606103144.1988077-1-wardragon78@gmail.com
State Changes Requested
Headers show
Series [Openvpn-devel,1/2] Single patch: | expand

Commit Message

Paolo Cerrito June 6, 2022, 10:31 a.m. UTC
1) changed lenght of remote to 46

2) refactored call to get_env
---
 src/plugins/auth-pam/auth-pam.c | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

Comments

Gert Doering June 6, 2022, 4:26 p.m. UTC | #1
Hi,

On Mon, Jun 06, 2022 at 12:31:43PM +0200, Paolo Cerrito wrote:
> 1) changed lenght of remote to 46
> 
> 2) refactored call to get_env
> ---
>  src/plugins/auth-pam/auth-pam.c | 10 +++++++---
>  1 file changed, 7 insertions(+), 3 deletions(-)
> 
> diff --git a/src/plugins/auth-pam/auth-pam.c b/src/plugins/auth-pam/auth-pam.c
> index 9d8dfb95..c03e178b 100644
> --- a/src/plugins/auth-pam/auth-pam.c
> +++ b/src/plugins/auth-pam/auth-pam.c
> @@ -48,7 +48,7 @@
>  #include <signal.h>
>  #include <syslog.h>
>  #include "utils.h"
> -
> +#include <arpa/inet.h>
>  #include <openvpn-plugin.h>
>  
>  #define DEBUG(verb) ((verb) >= 4)
> @@ -115,7 +115,7 @@ struct user_pass {
>      char password[128];
>      char common_name[128];
>      char response[128];
> -    char remote[128];
> +    char remote[INET6_ADDRSTRLEN];

This seems to be the second patch only (the changes according to the
comments received).

Please combine all changes into a single patch, and do also include
a commit message that describes the overall change.

(To combine multiple patches into one, look at "git rebase --interactive"
and "squash")

Part of the reason we do this review dance is that we want patches that
are all "good in itself", not "need a second patch to fix the first one".

thanks,

gert

Patch

diff --git a/src/plugins/auth-pam/auth-pam.c b/src/plugins/auth-pam/auth-pam.c
index 9d8dfb95..c03e178b 100644
--- a/src/plugins/auth-pam/auth-pam.c
+++ b/src/plugins/auth-pam/auth-pam.c
@@ -48,7 +48,7 @@ 
 #include <signal.h>
 #include <syslog.h>
 #include "utils.h"
-
+#include <arpa/inet.h>
 #include <openvpn-plugin.h>
 
 #define DEBUG(verb) ((verb) >= 4)
@@ -115,7 +115,7 @@  struct user_pass {
     char password[128];
     char common_name[128];
     char response[128];
-    char remote[128];
+    char remote[INET6_ADDRSTRLEN];
 
     const struct name_value_list *name_value_list;
 };
@@ -518,7 +518,11 @@  openvpn_plugin_func_v1(openvpn_plugin_handle_t handle, const int type, const cha
         const char *username = get_env("username", envp);
         const char *password = get_env("password", envp);
         const char *common_name = get_env("common_name", envp) ? get_env("common_name", envp) : "";
-        const char *remote = get_env("untrusted_ip", envp) ? get_env("untrusted_ip", envp) : get_env("untrusted_ip6", envp);
+        const char *remote = get_env("untrusted_ip6", envp);
+        
+        if (remote == NULL){ 
+                remote = get_env("untrusted_ip", envp); //if Null, try to take ipv4 if not set ipv6
+        }
 
         if (username && strlen(username) > 0 && password)
         {