]> git.ipfire.org Git - thirdparty/openvpn.git/commitdiff
dns: create NRPT registry key if it doesn't exist
authorHeiko Hund <heiko@ist.eigentlich.net>
Fri, 27 Jun 2025 08:24:53 +0000 (10:24 +0200)
committerGert Doering <gert@greenie.muc.de>
Sat, 28 Jun 2025 16:24:27 +0000 (18:24 +0200)
Windows 2019 Server by default does not have the key where local system
NRPT rules are stored. Tests have determined that NRPT is actually
working when rules are created under the key. So, instead of failing if
the key doesn't exist, we create it, and things will start working.

Github: OpenVPN/openvpn#768
Change-Id: I46132ebaf3bf3b16798b6f2416f7bf7272f5646b
Signed-off-by: Heiko Hund <heiko@ist.eigentlich.net>
Acked-by: Lev Stipakov <lstipakov@gmail.com>
Message-Id: <20250627082500.17075-1-gert@greenie.muc.de>
URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg32001.html
Signed-off-by: Gert Doering <gert@greenie.muc.de>
src/openvpnserv/interactive.c

index 3bd2722e64d65324550eedb313a94694cf4c40fc..628a96bc6e3f5da1673bf62893545f25a0cce20f 100644 (file)
@@ -2662,7 +2662,7 @@ OpenNrptBaseKey(PHKEY key, PBOOL gpol)
     if (err == ERROR_FILE_NOT_FOUND)
     {
         *gpol = FALSE;
-        err = RegOpenKeyExA(HKEY_LOCAL_MACHINE, sys_key, 0, KEY_ALL_ACCESS, &nrpt);
+        err = RegCreateKeyExA(HKEY_LOCAL_MACHINE, sys_key, 0, NULL, 0, KEY_ALL_ACCESS, NULL, &nrpt, NULL);
         if (err)
         {
             nrpt = INVALID_HANDLE_VALUE;