]> git.ipfire.org Git - thirdparty/openvpn.git/commitdiff
Error out if both remap-usr1 SIGHUP and config stdin are used
authorArne Schwabe <arne@rfc2549.org>
Fri, 22 Jul 2022 13:02:24 +0000 (15:02 +0200)
committerGert Doering <gert@greenie.muc.de>
Fri, 22 Jul 2022 13:10:00 +0000 (15:10 +0200)
OpenVPN for Android uses config stdin to avoid writing the config
file containing private keys to 'disk'. However using stdin means
that config cannot be reread using SIGHUP. While there might be other
corner cases that trigger SIGHUP, this is an obvious one, so we
error out if we detect this misconfiguration.

Signed-off-by: Arne Schwabe <arne@rfc2549.org>
Acked-by: Gert Doering <gert@greenie.muc.de>
Message-Id: <20220722130224.2442759-1-arne@rfc2549.org>
URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg24720.html
Signed-off-by: Gert Doering <gert@greenie.muc.de>
src/openvpn/options.c

index b00acf7e08d51e15aa818565bcf67dcb4b7a260d..d2ffab51e0f00474fdfb7a25e72f4af5865375cd 100644 (file)
@@ -3662,6 +3662,12 @@ options_postprocess_mutate(struct options *o, struct env_set *es)
         o->verify_hash_no_ca = true;
     }
 
+    if (streq(o->config, "stdin") && o->remap_sigusr1 == SIGHUP)
+    {
+        msg(M_USAGE, "Options 'config stdin' and 'remap-usr1 SIGHUP' are "
+            "incompatible with each other.");
+    }
+
     /* check if any option should force disabling DCO */
 #if defined(TARGET_LINUX)
     o->tuntap_options.disable_dco = !dco_check_option_conflict(D_DCO, o);