svn commit: r200141 - stable/8/sys/netipsec
Bjoern A. Zeeb
bz at FreeBSD.org
Sat Dec 5 19:03:20 UTC 2009
Author: bz
Date: Sat Dec 5 19:03:20 2009
New Revision: 200141
URL: http://svn.freebsd.org/changeset/base/200141
Log:
MFC r199896:
Directly send data uncompressed if the packet payload size is lower than
the compression algorithm threshold.
Modified:
stable/8/sys/netipsec/xform_ipcomp.c
Directory Properties:
stable/8/sys/ (props changed)
stable/8/sys/amd64/include/xen/ (props changed)
stable/8/sys/cddl/contrib/opensolaris/ (props changed)
stable/8/sys/contrib/dev/acpica/ (props changed)
stable/8/sys/contrib/pf/ (props changed)
stable/8/sys/dev/xen/xenpci/ (props changed)
Modified: stable/8/sys/netipsec/xform_ipcomp.c
==============================================================================
--- stable/8/sys/netipsec/xform_ipcomp.c Sat Dec 5 19:01:50 2009 (r200140)
+++ stable/8/sys/netipsec/xform_ipcomp.c Sat Dec 5 19:03:20 2009 (r200141)
@@ -343,6 +343,17 @@ ipcomp_output(
ipcompx = sav->tdb_compalgxform;
IPSEC_ASSERT(ipcompx != NULL, ("null compression xform"));
+ /*
+ * Do not touch the packet in case our payload to compress
+ * is lower than the minimal threshold of the compression
+ * alogrithm. We will just send out the data uncompressed.
+ * See RFC 3173, 2.2. Non-Expansion Policy.
+ */
+ if (m->m_pkthdr.len <= ipcompx->minlen) {
+ /* XXX-BZ V_ipcompstat.threshold++; */
+ return ipsec_process_done(m, isr);
+ }
+
ralen = m->m_pkthdr.len - skip; /* Raw payload length before comp. */
hlen = IPCOMP_HLENGTH;
More information about the svn-src-stable-8
mailing list