summaryrefslogtreecommitdiffstats
path: root/net/ipv4/xfrm4_state.c
diff options
context:
space:
mode:
authorJeff Garzik2005-06-22 19:10:49 +0200
committerJeff Garzik2005-06-22 19:10:49 +0200
commit80bd6d7f5e0d872a0f5a151473d2a39d95d210a8 (patch)
treeb3a36048d6b7de88f7e906624ecb4b98816bb736 /net/ipv4/xfrm4_state.c
parentAutomatic merge of rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds... (diff)
parentMerge rsync://oss.sgi.com/git/xfs-2.6 (diff)
downloadkernel-qcow2-linux-80bd6d7f5e0d872a0f5a151473d2a39d95d210a8.tar.gz
kernel-qcow2-linux-80bd6d7f5e0d872a0f5a151473d2a39d95d210a8.tar.xz
kernel-qcow2-linux-80bd6d7f5e0d872a0f5a151473d2a39d95d210a8.zip
Merge /spare/repo/linux-2.6/
Diffstat (limited to 'net/ipv4/xfrm4_state.c')
-rw-r--r--net/ipv4/xfrm4_state.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/net/ipv4/xfrm4_state.c b/net/ipv4/xfrm4_state.c
index 223a2e83853f..050611d7a967 100644
--- a/net/ipv4/xfrm4_state.c
+++ b/net/ipv4/xfrm4_state.c
@@ -7,12 +7,20 @@
*
*/
+#include <net/ip.h>
#include <net/xfrm.h>
#include <linux/pfkeyv2.h>
#include <linux/ipsec.h>
static struct xfrm_state_afinfo xfrm4_state_afinfo;
+static int xfrm4_init_flags(struct xfrm_state *x)
+{
+ if (ipv4_config.no_pmtu_disc)
+ x->props.flags |= XFRM_STATE_NOPMTUDISC;
+ return 0;
+}
+
static void
__xfrm4_init_tempsel(struct xfrm_state *x, struct flowi *fl,
struct xfrm_tmpl *tmpl,
@@ -109,6 +117,7 @@ __xfrm4_find_acq(u8 mode, u32 reqid, u8 proto,
static struct xfrm_state_afinfo xfrm4_state_afinfo = {
.family = AF_INET,
.lock = RW_LOCK_UNLOCKED,
+ .init_flags = xfrm4_init_flags,
.init_tempsel = __xfrm4_init_tempsel,
.state_lookup = __xfrm4_state_lookup,
.find_acq = __xfrm4_find_acq,