]> git.ipfire.org Git - thirdparty/openvpn.git/commitdiff
iservice: return correct size when domains are truncated
authorHeiko Hund <heiko@ist.eigentlich.net>
Wed, 26 Nov 2025 10:43:07 +0000 (11:43 +0100)
committerGert Doering <gert@greenie.muc.de>
Wed, 26 Nov 2025 11:02:42 +0000 (12:02 +0100)
In case not all domains can be converted in the available buffer, return
the size of the already converted domains size plus the second terminating
zero for the MULTI_SZ.

Reported-by: Marc Heuse <marc@srlabs.de>
Reported-by: stephan@srlabs.de
Change-Id: Iabad046c930dd0f38ec50d1c43d8b3288816df7d
Signed-off-by: Heiko Hund <heiko@ist.eigentlich.net>
Acked-by: Gert Doering <gert@greenie.muc.de>
Gerrit URL: https://gerrit.openvpn.net/c/openvpn/+/1391
Message-Id: <20251126104315.4776-1-gert@greenie.muc.de>
URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg34680.html
Signed-off-by: Gert Doering <gert@greenie.muc.de>
src/openvpnserv/interactive.c

index ed3c92891abaf91afc18af346ba64897b066d372..4a3e689b437b255f97d42b6f51f7a0266b79d12a 100644 (file)
@@ -2214,7 +2214,7 @@ GetItfDnsDomains(HKEY itf, PCWSTR search_domains, PWSTR domains, PDWORD size)
                 {
                     /* Domain doesn't fit, bad luck if it's the first one */
                     *pos = '\0';
-                    *size = converted_size == 0 ? 0 : *size + 1;
+                    *size = converted_size == 0 ? 0 : converted_size + one_glyph;
                     return ERROR_MORE_DATA;
                 }