This prepares for extending this function with the HMAC based session ID
check.
Replace the check for m->top.c2.tls_auth_standalone with an ASSERT as this
code path is only used in multi udp server and OpenVPN initialises the
tls_auth_standalone always for the TOP context (CF_INIT_TLS_AUTH_STANDALONE),
even for the tcp m2mp server that does not use it).
Patch v2: replace if with ASSERT
Signed-off-by: Arne Schwabe <arne@rfc2549.org>
Acked-by: Frank Lichtenheld <frank@lichtenheld.com>
Message-Id: <
20220425122709.
4148015-1-arne@rfc2549.org>
URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg24193.html
Signed-off-by: Gert Doering <gert@greenie.muc.de>
#include <sys/inotify.h>
#endif
+static bool
+do_pre_decrypt_check(struct multi_context *m)
+{
+ ASSERT(m->top.c2.tls_auth_standalone);
+ if (!tls_pre_decrypt_lite(m->top.c2.tls_auth_standalone, &m->top.c2.from, &m->top.c2.buf))
+ {
+ return false;
+ }
+ return true;
+}
+
/*
* Get a client instance based on real address. If
* the instance doesn't exist, create it while
}
if (!mi)
{
- if (!m->top.c2.tls_auth_standalone
- || tls_pre_decrypt_lite(m->top.c2.tls_auth_standalone, &m->top.c2.from, &m->top.c2.buf))
+ if (do_pre_decrypt_check(m))
{
if (frequency_limit_event_allowed(m->new_connection_limiter))
{