[Openvpn-devel,v2] Fix IV_PLAT_VER and UV_ variables sent without push-peer-info

Message ID 20220817135348.844178-1-arne@rfc2549.org
State Accepted
Headers show
Series [Openvpn-devel,v2] Fix IV_PLAT_VER and UV_ variables sent without push-peer-info | expand

Commit Message

Arne Schwabe Aug. 17, 2022, 3:53 a.m. UTC
Commit 8c72d7981 changed the push_peer_info_detail to have an
additional level for P2P NCP and shifting most of the other levels
with 1. The check for UV_ and IV_PLAT_VER was not changed accordingly.

Fixes: 8c72d7981 ("Support NCP in pure P2P VPN setups")
Signed-off-by: Arne Schwabe <arne@rfc2549.org>
---
 src/openvpn/ssl.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Antonio Quartulli Aug. 17, 2022, 4:35 a.m. UTC | #1
Hi,

On 17/08/2022 15:53, Arne Schwabe wrote:
> Commit 8c72d7981 changed the push_peer_info_detail to have an
> additional level for P2P NCP and shifting most of the other levels
> with 1. The check for UV_ and IV_PLAT_VER was not changed accordingly.
> 
> Fixes: 8c72d7981 ("Support NCP in pure P2P VPN setups")
> Signed-off-by: Arne Schwabe <arne@rfc2549.org>

Same as v1, just rebased and with an extended commit message.

Tested by setting some UV_VAR and seeing it being sent only with 
--push-peer-info.

Acked-by: Antonio Quartulli <a@unstable.cc>

> ---
>   src/openvpn/ssl.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/src/openvpn/ssl.c b/src/openvpn/ssl.c
> index 77f572a40..33e145b3f 100644
> --- a/src/openvpn/ssl.c
> +++ b/src/openvpn/ssl.c
> @@ -2036,7 +2036,7 @@ push_peer_info(struct buffer *buf, struct tls_session *session)
>                   {
>                       if ((((strncmp(e->string, "UV_", 3) == 0
>                              || strncmp(e->string, "IV_PLAT_VER=", sizeof("IV_PLAT_VER=") - 1) == 0)
> -                          && session->opt->push_peer_info_detail >= 2)
> +                          && session->opt->push_peer_info_detail > 2)
>                            || (strncmp(e->string, "IV_GUI_VER=", sizeof("IV_GUI_VER=") - 1) == 0)
>                            || (strncmp(e->string, "IV_SSO=", sizeof("IV_SSO=") - 1) == 0)
>                            )
Gert Doering Aug. 17, 2022, 4:39 a.m. UTC | #2
I have not tested this, but it's obvious enough from the changes in
said commit.

Your patch has been applied to the master branch.

commit e0dbe5c4e290c0c24a26a9e5c19957ebaca09543
Author: Arne Schwabe
Date:   Wed Aug 17 15:53:48 2022 +0200

     Fix IV_PLAT_VER and UV_ variables sent without push-peer-info

     Signed-off-by: Arne Schwabe <arne@rfc2549.org>
     Acked-by: Antonio Quartulli <a@unstable.cc>
     Message-Id: <20220817135348.844178-1-arne@rfc2549.org>
     URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg24956.html
     Signed-off-by: Gert Doering <gert@greenie.muc.de>


--
kind regards,

Gert Doering

Patch

diff --git a/src/openvpn/ssl.c b/src/openvpn/ssl.c
index 77f572a40..33e145b3f 100644
--- a/src/openvpn/ssl.c
+++ b/src/openvpn/ssl.c
@@ -2036,7 +2036,7 @@  push_peer_info(struct buffer *buf, struct tls_session *session)
                 {
                     if ((((strncmp(e->string, "UV_", 3) == 0
                            || strncmp(e->string, "IV_PLAT_VER=", sizeof("IV_PLAT_VER=") - 1) == 0)
-                          && session->opt->push_peer_info_detail >= 2)
+                          && session->opt->push_peer_info_detail > 2)
                          || (strncmp(e->string, "IV_GUI_VER=", sizeof("IV_GUI_VER=") - 1) == 0)
                          || (strncmp(e->string, "IV_SSO=", sizeof("IV_SSO=") - 1) == 0)
                          )