On Sun, May 25, 2003 at 08:00:06PM -0700, David S. Miller wrote: > > Please produce your patches consistently, so that I can apply > them with "patch -p1 <diff" if I am at the toplevel of the kernel > sources. Here is the updated patch. -- Debian GNU/Linux 3.0 is out! ( http://www.debian.org/ ) Email: Herbert Xu ~{PmV>HI~} <herbert@gondor.apana.org.au> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
Index: kernel-source-2.5/net/xfrm/xfrm_user.c =================================================================== RCS file: /home/gondolin/herbert/src/CVS/debian/kernel-source-2.5/net/xfrm/xfrm_user.c,v retrieving revision 1.1.1.1 diff -u -r1.1.1.1 xfrm_user.c --- kernel-source-2.5/net/xfrm/xfrm_user.c 7 Apr 2003 17:31:45 -0000 1.1.1.1 +++ kernel-source-2.5/net/xfrm/xfrm_user.c 24 May 2003 10:52:43 -0000 @@ -629,6 +629,7 @@ struct xfrm_userpolicy_info *p = NLMSG_DATA(nlh); struct xfrm_policy *xp; int err; + int excl; err = verify_newpolicy_info(p); if (err) @@ -638,7 +639,8 @@ if (!xp) return err; - err = xfrm_policy_insert(p->dir, xp, 1); + excl = nlh->nlmsg_type == XFRM_MSG_NEWPOLICY; + err = xfrm_policy_insert(p->dir, xp, excl); if (err) { kfree(xp); return err; @@ -798,6 +800,7 @@ NLMSG_LENGTH(sizeof(struct xfrm_userspi_info)), /* ALLOC SPI */ NLMSG_LENGTH(sizeof(struct xfrm_user_acquire)), /* ACQUIRE */ NLMSG_LENGTH(sizeof(struct xfrm_user_expire)), /* EXPIRE */ + NLMSG_LENGTH(sizeof(struct xfrm_userpolicy_info)),/* UPD POLICY */ }; static struct xfrm_link { @@ -817,6 +820,9 @@ .dump = xfrm_dump_policy, }, { .doit = xfrm_alloc_userspi }, + {}, + {}, + { .doit = xfrm_add_policy }, }; static int xfrm_done(struct netlink_callback *cb) Index: kernel-source-2.5/include/linux/xfrm.h =================================================================== RCS file: /home/gondolin/herbert/src/CVS/debian/kernel-source-2.5/include/linux/xfrm.h,v retrieving revision 1.1.1.4 diff -u -r1.1.1.4 xfrm.h --- kernel-source-2.5/include/linux/xfrm.h 7 Apr 2003 17:30:56 -0000 1.1.1.4 +++ kernel-source-2.5/include/linux/xfrm.h 24 May 2003 07:36:07 -0000 @@ -116,7 +116,9 @@ #define XFRM_MSG_ACQUIRE (RTM_BASE + 7) #define XFRM_MSG_EXPIRE (RTM_BASE + 8) -#define XFRM_MSG_MAX (XFRM_MSG_EXPIRE+1) +#define XFRM_MSG_UPDPOLICY (RTM_BASE + 9) + +#define XFRM_MSG_MAX (XFRM_MSG_UPDPOLICY+1) struct xfrm_user_tmpl { struct xfrm_id id;