aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSelva Nair2016-11-29 20:53:14 -0500
committerGert Doering2016-11-30 09:37:36 +0100
commit290cc3f8d50435a6ed5f2cb1ecd9056dadcc4783 (patch)
treee86eb9268ce27483c815991771fb9d0e8b31527e
parent64dc639616df7787964e72759ef8aed875aadbf7 (diff)
downloadopenvpn-290cc3f8d50435a6ed5f2cb1ecd9056dadcc4783.zip
openvpn-290cc3f8d50435a6ed5f2cb1ecd9056dadcc4783.tar.gz
When parsing '--setenv opt xx ..' make sure a third parameter is present
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> (cherry picked from commit 997795353916ffcb413a2da02dc7f210fd621954)
-rw-r--r--src/openvpn/options.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/openvpn/options.c b/src/openvpn/options.c
index c402b53..a9419d4 100644
--- a/src/openvpn/options.c
+++ b/src/openvpn/options.c
@@ -4215,6 +4215,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;
}