From: Josh Cepek Date: Thu, 2 May 2013 21:17:37 +0000 (-0500) Subject: Fix proto tcp6 for server & non-P2MP modes X-Git-Tag: v2.4_alpha1~571 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d0ccb982e1714c8dfefd6eacf0c6f899eb71b582;p=thirdparty%2Fopenvpn.git Fix proto tcp6 for server & non-P2MP modes This fix adds support for using tcp6 as a proto in server or non-P2MP modes, resolving a failed ASSERT in such cases. Fixes the crash in trac#288. Signed-off-by: Josh Cepek Acked-by: Gert Doering Message-Id: URL: http://article.gmane.org/gmane.network.openvpn.devel/7578 Signed-off-by: Gert Doering --- diff --git a/src/openvpn/options.c b/src/openvpn/options.c index a8712c81c..c5ed0d6e3 100644 --- a/src/openvpn/options.c +++ b/src/openvpn/options.c @@ -1835,6 +1835,8 @@ options_postprocess_verify_ce (const struct options *options, const struct conne */ if (ce->proto == PROTO_TCPv4) msg (M_USAGE, "--proto tcp is ambiguous in this context. Please specify --proto tcp-server or --proto tcp-client"); + if (ce->proto == PROTO_TCPv6) + msg (M_USAGE, "--proto tcp6 is ambiguous in this context. Please specify --proto tcp6-server or --proto tcp6-client"); /* * Sanity check on daemon/inetd modes @@ -2357,6 +2359,8 @@ options_postprocess_mutate_ce (struct options *o, struct connection_entry *ce) { if (ce->proto == PROTO_TCPv4) ce->proto = PROTO_TCPv4_SERVER; + else if (ce->proto == PROTO_TCPv6) + ce->proto = PROTO_TCPv6_SERVER; } #endif #if P2MP