From f3a2cd255a3bc73a546a5e2d09fa30a16cce0d7d Mon Sep 17 00:00:00 2001 From: Arne Schwabe Date: Fri, 31 May 2013 14:59:35 +0200 Subject: [PATCH] Add reporting of UI version to basic push-peer-info set. If a GUIs sets IV_OPENVPN_GUI_VERSION the version will be pushed to the server. Usage convention for IV_OPENVPN_GUI_VERSION is "", for example "de.blinkt.openvpn 0.5.47" for the ICS Android version. Signed-off-by: Arne Schwabe Acked-by: Gert Doering Acked-by: James Yonan Message-Id: <1370005175-14871-1-git-send-email-arne@rfc2549.org> URL: http://article.gmane.org/gmane.network.openvpn.devel/7646 Signed-off-by: Gert Doering --- src/openvpn/ssl.c | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/src/openvpn/ssl.c b/src/openvpn/ssl.c index 69f77f3bb..58ba23847 100644 --- a/src/openvpn/ssl.c +++ b/src/openvpn/ssl.c @@ -1834,15 +1834,17 @@ push_peer_info(struct buffer *buf, struct tls_session *session) get_default_gateway (&rgi); if (rgi.flags & RGI_HWADDR_DEFINED) buf_printf (&out, "IV_HWADDR=%s\n", format_hex_ex (rgi.hwaddr, 6, 0, 1, ":", &gc)); + } - /* push env vars that begin with UV_ */ - for (e=es->list; e != NULL; e=e->next) + /* push env vars that begin with UV_ and IV_OPENVPN_GUI_VERSION */ + for (e=es->list; e != NULL; e=e->next) + { + if (e->string) { - if (e->string) - { - if (!strncmp(e->string, "UV_", 3) && buf_safe(&out, strlen(e->string)+1)) - buf_printf (&out, "%s\n", e->string); - } + if (((strncmp(e->string, "UV_", 3)==0 && session->opt->push_peer_info_detail >= 2) + || (strncmp(e->string,"IV_OPENVPN_GUI_VERSION=",sizeof("IV_OPENVPN_GUI_VERSION=")-1)==0)) + && buf_safe(&out, strlen(e->string)+1)) + buf_printf (&out, "%s\n", e->string); } } -- 2.47.2