summaryrefslogtreecommitdiffstats
path: root/src/openvpn/multi.c
diff options
context:
space:
mode:
authorGert Doering <gert@greenie.muc.de>2012-12-02 22:11:12 +0100
committerDavid Sommerseth <davids@redhat.com>2012-12-13 16:46:01 +0100
commit729c8464021ff7c41a7fbb03501465eca55909a3 (patch)
tree03c0625e2c2ddf94f8f4dd2dbb5873ac5ff783d9 /src/openvpn/multi.c
parent34bc52d611deec62e7fe56622771b58921d52176 (diff)
downloadopenvpn-729c8464021ff7c41a7fbb03501465eca55909a3.tar.gz
openvpn-729c8464021ff7c41a7fbb03501465eca55909a3.tar.xz
openvpn-729c8464021ff7c41a7fbb03501465eca55909a3.zip
Implement --mssfix handling for IPv6 packets.
Rename process_ipv4_header() to process_ip_header() and PIPV4_MSSFIX flag to PIP_MSSFIX, to make visible that it's no longer IPv4-only. Inside process_ip_header(), call out to mss_fixup_ipv6() if --mssfix is active and IPv6 packet seen. Rename mss_fixup() to mss_fixup_ipv4(), implement mss_fixup_ipv6(). Signed-off-by: Gert Doering <gert@greenie.muc.de> Acked-by: Arne Schwabe <arne@rfc2549.org> Message-Id: 1354482672-16136-2-git-send-email-gert@greenie.muc.de URL: http://article.gmane.org/gmane.network.openvpn.devel/7173 Signed-off-by: David Sommerseth <davids@redhat.com> (cherry picked from commit f0e8997a874a89b3fe1f82109c443232e8967b01)
Diffstat (limited to 'src/openvpn/multi.c')
-rw-r--r--src/openvpn/multi.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/openvpn/multi.c b/src/openvpn/multi.c
index 9876b80..ab3f10c 100644
--- a/src/openvpn/multi.c
+++ b/src/openvpn/multi.c
@@ -2411,13 +2411,13 @@ multi_get_queue (struct mbuf_set *ms)
if (mbuf_extract_item (ms, &item)) /* cleartext IP packet */
{
- unsigned int pipv4_flags = PIPV4_PASSTOS;
+ unsigned int pip_flags = PIPV4_PASSTOS;
set_prefix (item.instance);
item.instance->context.c2.buf = item.buffer->buf;
if (item.buffer->flags & MF_UNICAST) /* --mssfix doesn't make sense for broadcast or multicast */
- pipv4_flags |= PIPV4_MSSFIX;
- process_ipv4_header (&item.instance->context, pipv4_flags, &item.instance->context.c2.buf);
+ pip_flags |= PIP_MSSFIX;
+ process_ip_header (&item.instance->context, pip_flags, &item.instance->context.c2.buf);
encrypt_sign (&item.instance->context, true);
mbuf_free_buf (item.buffer);