]> git.ipfire.org Git - thirdparty/openvpn.git/commitdiff
When parsing '--setenv opt xx ..' make sure a third parameter is present
authorSelva Nair <selva.nair@gmail.com>
Wed, 30 Nov 2016 01:53:14 +0000 (20:53 -0500)
committerGert Doering <gert@greenie.muc.de>
Wed, 30 Nov 2016 08:37:05 +0000 (09:37 +0100)
When no parameters are present, set it to "setenv opt" to trigger a
descriptive error message. And, thus get rid of the pesky NULL pointer
dereferencing.

Trac: #779

Signed-off-by: Selva Nair <selva.nair@gmail.com>
Acked-by: Gert Doering <gert@greenie.muc.de>
Message-Id: <1480470794-6349-1-git-send-email-selva.nair@gmail.com>
URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg13311.html
Signed-off-by: Gert Doering <gert@greenie.muc.de>
src/openvpn/options.c

index a7a1f9a4c865c2414cfc2ad4cadb7e59f4e2a8b4..eac802327071eec825fa8de85b356e9afdc3f476 100644 (file)
@@ -4407,6 +4407,8 @@ add_option (struct options *options,
    */
   if (streq (p[0], "setenv") && p[1] && streq (p[1], "opt") && !(permission_mask & OPT_P_PULL_MODE))
     {
+      if (!p[2])
+        p[2] = "setenv opt"; /* will trigger an error that includes setenv opt */
       p += 2;
       msglevel_fc = M_WARN;
     }