GnuTLS: fix $tls_X_ver generation
authorJeremy Harris <jgh146exb@wizmail.org>
Fri, 15 Nov 2019 11:18:07 +0000 (11:18 +0000)
committerJeremy Harris <jgh146exb@wizmail.org>
Fri, 15 Nov 2019 11:18:07 +0000 (11:18 +0000)
src/src/tls-gnu.c

index eaec862aad8a7ae217ad0dc7942555335731ce2e..7d7f61dd888e8e46937403d5499fb56170d8eae3 100644 (file)
@@ -1755,12 +1755,17 @@ old_pool = store_pool;
     /* debug_printf("peer_status: gnutls_session_get_desc %s\n", s); */
 
     for (s++; (c = *s) && c != ')'; s++) g = string_catn(g, s, 1);
+
     tlsp->ver = string_copyn(g->s, g->ptr);
+    for (uschar * p = US tlsp->ver; *p; p++)
+      if (*p == '-') { *p = '\0'; break; }     /* TLS1.0-PKIX -> TLS1.0 */
+
     g = string_catn(g, US":", 1);
     if (*s) s++;               /* now on _ between groups */
     while ((c = *s))
       {
-      for (*++s && ++s; (c = *s) && c != ')'; s++) g = string_catn(g, c == '-' ? US"_" : s, 1);
+      for (*++s && ++s; (c = *s) && c != ')'; s++)
+       g = string_catn(g, c == '-' ? US"_" : s, 1);
       /* now on ) closing group */
       if ((c = *s) && *++s == '-') g = string_catn(g, US"__", 2);
       /* now on _ between groups */