Module Name: src
Committed By: snj
Date: Sun Dec 10 09:41:32 UTC 2017
Modified Files:
src/sys/net [netbsd-8]: if_stf.c if_stf.h
src/sys/netinet [netbsd-8]: in_gif.c in_gif.h in_l2tp.c ip_encap.c
ip_encap.h ip_mroute.c
src/sys/netinet6 [netbsd-8]: in6_gif.c in6_gif.h in6_l2tp.c
src/sys/netipsec [netbsd-8]: xform.h xform_ipip.c
Log Message:
Pull up following revision(s) (requested by knakahara in ticket #419):
sys/net/if_stf.c: revision 1.103
sys/net/if_stf.h: revision 1.8
sys/netinet/in_gif.c: revision 1.89
sys/netinet/in_gif.h: revision 1.17
sys/netinet/in_l2tp.c: revision 1.4
sys/netinet/ip_encap.c: revision 1.66
sys/netinet/ip_encap.h: revision 1.23
sys/netinet/ip_mroute.c: revision 1.148
sys/netinet6/in6_gif.c: revision 1.87
sys/netinet6/in6_gif.h: revision 1.16
sys/netinet6/in6_l2tp.c: revision 1.7
sys/netipsec/xform.h: revision 1.13
sys/netipsec/xform_ipip.c: revision 1.55
Add argument to encapsw->pr_input() instead of m_tag.
To generate a diff of this commit:
cvs rdiff -u -r1.101 -r1.101.8.1 src/sys/net/if_stf.c
cvs rdiff -u -r1.7 -r1.7.8.1 src/sys/net/if_stf.h
cvs rdiff -u -r1.87.8.1 -r1.87.8.2 src/sys/netinet/in_gif.c
cvs rdiff -u -r1.16 -r1.16.10.1 src/sys/netinet/in_gif.h
cvs rdiff -u -r1.2.8.1 -r1.2.8.2 src/sys/netinet/in_l2tp.c
cvs rdiff -u -r1.65 -r1.65.2.1 src/sys/netinet/ip_encap.c
cvs rdiff -u -r1.22 -r1.22.10.1 src/sys/netinet/ip_encap.h
cvs rdiff -u -r1.146 -r1.146.6.1 src/sys/netinet/ip_mroute.c
cvs rdiff -u -r1.85.6.1 -r1.85.6.2 src/sys/netinet6/in6_gif.c
cvs rdiff -u -r1.15 -r1.15.10.1 src/sys/netinet6/in6_gif.h
cvs rdiff -u -r1.5.8.1 -r1.5.8.2 src/sys/netinet6/in6_l2tp.c
cvs rdiff -u -r1.8.10.1 -r1.8.10.2 src/sys/netipsec/xform.h
cvs rdiff -u -r1.49.2.1 -r1.49.2.2 src/sys/netipsec/xform_ipip.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/net/if_stf.c
diff -u src/sys/net/if_stf.c:1.101 src/sys/net/if_stf.c:1.101.8.1
--- src/sys/net/if_stf.c:1.101 Mon Dec 12 03:55:57 2016
+++ src/sys/net/if_stf.c Sun Dec 10 09:41:31 2017
@@ -1,4 +1,4 @@
-/* $NetBSD: if_stf.c,v 1.101 2016/12/12 03:55:57 ozaki-r Exp $ */
+/* $NetBSD: if_stf.c,v 1.101.8.1 2017/12/10 09:41:31 snj Exp $ */
/* $KAME: if_stf.c,v 1.62 2001/06/07 22:32:16 itojun Exp $ */
/*
@@ -75,7 +75,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_stf.c,v 1.101 2016/12/12 03:55:57 ozaki-r Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_stf.c,v 1.101.8.1 2017/12/10 09:41:31 snj Exp $");
#ifdef _KERNEL_OPT
#include "opt_inet.h"
@@ -582,16 +582,18 @@ stf_checkaddr6(struct stf_softc *sc, con
}
void
-in_stf_input(struct mbuf *m, int off, int proto)
+in_stf_input(struct mbuf *m, int off, int proto, void *eparg)
{
int s;
- struct stf_softc *sc;
+ struct stf_softc *sc = eparg;
struct ip *ip;
struct ip6_hdr *ip6;
uint8_t otos, itos;
struct ifnet *ifp;
size_t pktlen;
+ KASSERT(sc != NULL);
+
if (proto != IPPROTO_IPV6) {
m_freem(m);
return;
@@ -599,9 +601,7 @@ in_stf_input(struct mbuf *m, int off, in
ip = mtod(m, struct ip *);
- sc = (struct stf_softc *)encap_getarg(m);
-
- if (sc == NULL || (sc->sc_if.if_flags & IFF_UP) == 0) {
+ if ((sc->sc_if.if_flags & IFF_UP) == 0) {
m_freem(m);
return;
}
Index: src/sys/net/if_stf.h
diff -u src/sys/net/if_stf.h:1.7 src/sys/net/if_stf.h:1.7.8.1
--- src/sys/net/if_stf.h:1.7 Thu Aug 18 11:38:58 2016
+++ src/sys/net/if_stf.h Sun Dec 10 09:41:31 2017
@@ -1,4 +1,4 @@
-/* $NetBSD: if_stf.h,v 1.7 2016/08/18 11:38:58 knakahara Exp $ */
+/* $NetBSD: if_stf.h,v 1.7.8.1 2017/12/10 09:41:31 snj Exp $ */
/* $KAME: if_stf.h,v 1.3 2000/03/25 07:23:33 sumikawa Exp $ */
/*
@@ -39,6 +39,6 @@
#define STF_MTU_MIN (1280) /* Minimum MTU */
#define STF_MTU_MAX (8192) /* Maximum MTU */
-void in_stf_input(struct mbuf *, int, int);
+void in_stf_input(struct mbuf *, int, int, void *);
#endif /* !_NET_IF_STF_H_ */
Index: src/sys/netinet/in_gif.c
diff -u src/sys/netinet/in_gif.c:1.87.8.1 src/sys/netinet/in_gif.c:1.87.8.2
--- src/sys/netinet/in_gif.c:1.87.8.1 Tue Oct 24 08:47:24 2017
+++ src/sys/netinet/in_gif.c Sun Dec 10 09:41:31 2017
@@ -1,4 +1,4 @@
-/* $NetBSD: in_gif.c,v 1.87.8.1 2017/10/24 08:47:24 snj Exp $ */
+/* $NetBSD: in_gif.c,v 1.87.8.2 2017/12/10 09:41:31 snj Exp $ */
/* $KAME: in_gif.c,v 1.66 2001/07/29 04:46:09 itojun Exp $ */
/*
@@ -31,7 +31,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: in_gif.c,v 1.87.8.1 2017/10/24 08:47:24 snj Exp $");
+__KERNEL_RCSID(0, "$NetBSD: in_gif.c,v 1.87.8.2 2017/12/10 09:41:31 snj Exp $");
#ifdef _KERNEL_OPT
#include "opt_inet.h"
@@ -195,19 +195,18 @@ in_gif_output(struct ifnet *ifp, int fam
}
void
-in_gif_input(struct mbuf *m, int off, int proto)
+in_gif_input(struct mbuf *m, int off, int proto, void *eparg)
{
- struct ifnet *gifp = NULL;
+ struct ifnet *gifp = eparg;
const struct ip *ip;
int af;
u_int8_t otos;
- ip = mtod(m, const struct ip *);
+ KASSERT(gifp != NULL);
- gifp = (struct ifnet *)encap_getarg(m);
+ ip = mtod(m, const struct ip *);
- if (gifp == NULL || (gifp->if_flags & (IFF_UP|IFF_RUNNING))
- != (IFF_UP|IFF_RUNNING)) {
+ if ((gifp->if_flags & (IFF_UP|IFF_RUNNING)) != (IFF_UP|IFF_RUNNING)) {
m_freem(m);
ip_statinc(IP_STAT_NOGIF);
return;
Index: src/sys/netinet/in_gif.h
diff -u src/sys/netinet/in_gif.h:1.16 src/sys/netinet/in_gif.h:1.16.10.1
--- src/sys/netinet/in_gif.h:1.16 Mon Jul 4 04:22:47 2016
+++ src/sys/netinet/in_gif.h Sun Dec 10 09:41:31 2017
@@ -1,4 +1,4 @@
-/* $NetBSD: in_gif.h,v 1.16 2016/07/04 04:22:47 knakahara Exp $ */
+/* $NetBSD: in_gif.h,v 1.16.10.1 2017/12/10 09:41:31 snj Exp $ */
/* $KAME: in_gif.h,v 1.6 2001/07/25 00:55:48 itojun Exp $ */
/*
@@ -38,7 +38,7 @@
extern int ip_gif_ttl;
struct gif_softc;
-void in_gif_input(struct mbuf *, int, int);
+void in_gif_input(struct mbuf *, int, int, void *);
int in_gif_output(struct ifnet *, int, struct mbuf *);
#ifdef GIF_ENCAPCHECK
int gif_encapcheck4(struct mbuf *, int, int, void *);
Index: src/sys/netinet/in_l2tp.c
diff -u src/sys/netinet/in_l2tp.c:1.2.8.1 src/sys/netinet/in_l2tp.c:1.2.8.2
--- src/sys/netinet/in_l2tp.c:1.2.8.1 Wed Jul 12 13:42:11 2017
+++ src/sys/netinet/in_l2tp.c Sun Dec 10 09:41:31 2017
@@ -1,4 +1,4 @@
-/* $NetBSD: in_l2tp.c,v 1.2.8.1 2017/07/12 13:42:11 martin Exp $ */
+/* $NetBSD: in_l2tp.c,v 1.2.8.2 2017/12/10 09:41:31 snj Exp $ */
/*
* Copyright (c) 2017 Internet Initiative Japan Inc.
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: in_l2tp.c,v 1.2.8.1 2017/07/12 13:42:11 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: in_l2tp.c,v 1.2.8.2 2017/12/10 09:41:31 snj Exp $");
#ifdef _KERNEL_OPT
#include "opt_l2tp.h"
@@ -72,7 +72,7 @@ __KERNEL_RCSID(0, "$NetBSD: in_l2tp.c,v
int ip_l2tp_ttl = L2TP_TTL;
-static void in_l2tp_input(struct mbuf *, int, int);
+static void in_l2tp_input(struct mbuf *, int, int, void *);
static const struct encapsw in_l2tp_encapsw = {
.encapsw4 = {
@@ -250,7 +250,7 @@ out:
}
static void
-in_l2tp_input(struct mbuf *m, int off, int proto)
+in_l2tp_input(struct mbuf *m, int off, int proto, void *eparg __unused)
{
struct ifnet *l2tpp = NULL;
struct l2tp_softc *sc;
Index: src/sys/netinet/ip_encap.c
diff -u src/sys/netinet/ip_encap.c:1.65 src/sys/netinet/ip_encap.c:1.65.2.1
--- src/sys/netinet/ip_encap.c:1.65 Thu Jun 1 02:45:14 2017
+++ src/sys/netinet/ip_encap.c Sun Dec 10 09:41:31 2017
@@ -1,4 +1,4 @@
-/* $NetBSD: ip_encap.c,v 1.65 2017/06/01 02:45:14 chs Exp $ */
+/* $NetBSD: ip_encap.c,v 1.65.2.1 2017/12/10 09:41:31 snj Exp $ */
/* $KAME: ip_encap.c,v 1.73 2001/10/02 08:30:58 itojun Exp $ */
/*
@@ -68,7 +68,7 @@
#define USE_RADIX
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ip_encap.c,v 1.65 2017/06/01 02:45:14 chs Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ip_encap.c,v 1.65.2.1 2017/12/10 09:41:31 snj Exp $");
#ifdef _KERNEL_OPT
#include "opt_mrouting.h"
@@ -135,7 +135,6 @@ static int mask_matchlen(const struct so
static int mask_match(const struct encaptab *, const struct sockaddr *,
const struct sockaddr *);
#endif
-static void encap_fillarg(struct mbuf *, const struct encaptab *);
/*
* In encap[46]_lookup(), ep->func can sleep(e.g. rtalloc1) while walking
@@ -363,8 +362,7 @@ encap4_input(struct mbuf *m, ...)
/* found a match, "match" has the best one */
esw = match->esw;
if (esw && esw->encapsw4.pr_input) {
- encap_fillarg(m, match);
- (*esw->encapsw4.pr_input)(m, off, proto);
+ (*esw->encapsw4.pr_input)(m, off, proto, match->arg);
psref_release(&match_psref, &match->psref,
encaptab.elem_class);
} else {
@@ -506,8 +504,8 @@ encap6_input(struct mbuf **mp, int *offp
esw = match->esw;
if (esw && esw->encapsw6.pr_input) {
int ret;
- encap_fillarg(m, match);
- ret = (*esw->encapsw6.pr_input)(mp, offp, proto);
+ ret = (*esw->encapsw6.pr_input)(mp, offp, proto,
+ match->arg);
psref_release(&match_psref, &match->psref,
encaptab.elem_class);
return ret;
@@ -1064,33 +1062,6 @@ mask_match(const struct encaptab *ep,
}
#endif
-static void
-encap_fillarg(struct mbuf *m, const struct encaptab *ep)
-{
- struct m_tag *mtag;
-
- mtag = m_tag_get(PACKET_TAG_ENCAP, sizeof(void *), M_NOWAIT);
- if (mtag) {
- *(void **)(mtag + 1) = ep->arg;
- m_tag_prepend(m, mtag);
- }
-}
-
-void *
-encap_getarg(struct mbuf *m)
-{
- void *p;
- struct m_tag *mtag;
-
- p = NULL;
- mtag = m_tag_find(m, PACKET_TAG_ENCAP, NULL);
- if (mtag != NULL) {
- p = *(void **)(mtag + 1);
- m_tag_delete(m, mtag);
- }
- return p;
-}
-
int
encap_lock_enter(void)
{
Index: src/sys/netinet/ip_encap.h
diff -u src/sys/netinet/ip_encap.h:1.22 src/sys/netinet/ip_encap.h:1.22.10.1
--- src/sys/netinet/ip_encap.h:1.22 Mon Jul 4 04:35:09 2016
+++ src/sys/netinet/ip_encap.h Sun Dec 10 09:41:31 2017
@@ -1,4 +1,4 @@
-/* $NetBSD: ip_encap.h,v 1.22 2016/07/04 04:35:09 knakahara Exp $ */
+/* $NetBSD: ip_encap.h,v 1.22.10.1 2017/12/10 09:41:31 snj Exp $ */
/* $KAME: ip_encap.h,v 1.7 2000/03/25 07:23:37 sumikawa Exp $ */
/*
@@ -46,13 +46,13 @@ struct encapsw {
union {
struct encapsw4 {
void (*pr_input) /* input to protocol (from below) */
- (struct mbuf *, int, int);
+ (struct mbuf *, int, int, void *);
void *(*pr_ctlinput) /* control input (from below) */
(int, const struct sockaddr *, void *, void *);
} _encapsw4;
struct encapsw6 {
int (*pr_input) /* input to protocol (from below) */
- (struct mbuf **, int *, int);
+ (struct mbuf **, int *, int, void *);
void *(*pr_ctlinput) /* control input (from below) */
(int, const struct sockaddr *, void *, void *);
} _encapsw6;
@@ -110,7 +110,6 @@ const struct encaptab *encap_attach_func
const struct encapsw *, void *);
void *encap6_ctlinput(int, const struct sockaddr *, void *);
int encap_detach(const struct encaptab *);
-void *encap_getarg(struct mbuf *);
int encap_lock_enter(void);
void encap_lock_exit(void);
Index: src/sys/netinet/ip_mroute.c
diff -u src/sys/netinet/ip_mroute.c:1.146 src/sys/netinet/ip_mroute.c:1.146.6.1
--- src/sys/netinet/ip_mroute.c:1.146 Tue Jan 24 07:09:24 2017
+++ src/sys/netinet/ip_mroute.c Sun Dec 10 09:41:31 2017
@@ -1,4 +1,4 @@
-/* $NetBSD: ip_mroute.c,v 1.146 2017/01/24 07:09:24 ozaki-r Exp $ */
+/* $NetBSD: ip_mroute.c,v 1.146.6.1 2017/12/10 09:41:31 snj Exp $ */
/*
* Copyright (c) 1992, 1993
@@ -93,7 +93,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ip_mroute.c,v 1.146 2017/01/24 07:09:24 ozaki-r Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ip_mroute.c,v 1.146.6.1 2017/12/10 09:41:31 snj Exp $");
#ifdef _KERNEL_OPT
#include "opt_inet.h"
@@ -188,7 +188,7 @@ extern int rsvp_on;
#endif /* RSVP_ISI */
/* vif attachment using sys/netinet/ip_encap.c */
-static void vif_input(struct mbuf *, int, int);
+static void vif_input(struct mbuf *, int, int, void *);
static int vif_encapcheck(struct mbuf *, int, int, void *);
static const struct encapsw vif_encapsw = {
@@ -1883,12 +1883,13 @@ encap_send(struct ip *ip, struct vif *vi
* De-encapsulate a packet and feed it back through ip input.
*/
static void
-vif_input(struct mbuf *m, int off, int proto)
+vif_input(struct mbuf *m, int off, int proto, void *eparg)
{
- struct vif *vifp;
+ struct vif *vifp = eparg;
+
+ KASSERT(vifp != NULL);
- vifp = (struct vif *)encap_getarg(m);
- if (!vifp || proto != ENCAP_PROTO) {
+ if (proto != ENCAP_PROTO) {
m_freem(m);
mrtstat.mrts_bad_tunnel++;
return;
Index: src/sys/netinet6/in6_gif.c
diff -u src/sys/netinet6/in6_gif.c:1.85.6.1 src/sys/netinet6/in6_gif.c:1.85.6.2
--- src/sys/netinet6/in6_gif.c:1.85.6.1 Tue Oct 24 08:47:24 2017
+++ src/sys/netinet6/in6_gif.c Sun Dec 10 09:41:32 2017
@@ -1,4 +1,4 @@
-/* $NetBSD: in6_gif.c,v 1.85.6.1 2017/10/24 08:47:24 snj Exp $ */
+/* $NetBSD: in6_gif.c,v 1.85.6.2 2017/12/10 09:41:32 snj Exp $ */
/* $KAME: in6_gif.c,v 1.62 2001/07/29 04:27:25 itojun Exp $ */
/*
@@ -31,7 +31,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: in6_gif.c,v 1.85.6.1 2017/10/24 08:47:24 snj Exp $");
+__KERNEL_RCSID(0, "$NetBSD: in6_gif.c,v 1.85.6.2 2017/12/10 09:41:32 snj Exp $");
#ifdef _KERNEL_OPT
#include "opt_inet.h"
@@ -211,20 +211,19 @@ in6_gif_output(struct ifnet *ifp, int fa
}
int
-in6_gif_input(struct mbuf **mp, int *offp, int proto)
+in6_gif_input(struct mbuf **mp, int *offp, int proto, void *eparg)
{
struct mbuf *m = *mp;
- struct ifnet *gifp = NULL;
+ struct ifnet *gifp = eparg;
struct ip6_hdr *ip6;
int af = 0;
u_int32_t otos;
- ip6 = mtod(m, struct ip6_hdr *);
+ KASSERT(gifp != NULL);
- gifp = (struct ifnet *)encap_getarg(m);
+ ip6 = mtod(m, struct ip6_hdr *);
- if (gifp == NULL || (gifp->if_flags & (IFF_UP|IFF_RUNNING))
- != (IFF_UP|IFF_RUNNING)) {
+ if ((gifp->if_flags & (IFF_UP|IFF_RUNNING)) != (IFF_UP|IFF_RUNNING)) {
m_freem(m);
IP6_STATINC(IP6_STAT_NOGIF);
return IPPROTO_DONE;
Index: src/sys/netinet6/in6_gif.h
diff -u src/sys/netinet6/in6_gif.h:1.15 src/sys/netinet6/in6_gif.h:1.15.10.1
--- src/sys/netinet6/in6_gif.h:1.15 Mon Jul 4 04:22:47 2016
+++ src/sys/netinet6/in6_gif.h Sun Dec 10 09:41:32 2017
@@ -1,4 +1,4 @@
-/* $NetBSD: in6_gif.h,v 1.15 2016/07/04 04:22:47 knakahara Exp $ */
+/* $NetBSD: in6_gif.h,v 1.15.10.1 2017/12/10 09:41:32 snj Exp $ */
/* $KAME: in6_gif.h,v 1.7 2001/07/26 06:53:16 jinmei Exp $ */
/*
@@ -38,7 +38,7 @@ extern int ip6_gif_hlim; /* Hop limit f
struct gif_softc;
struct sockaddr;
-int in6_gif_input(struct mbuf **, int *, int);
+int in6_gif_input(struct mbuf **, int *, int, void *);
int in6_gif_output(struct ifnet *, int, struct mbuf *);
#ifdef GIF_ENCAPCHECK
int gif_encapcheck6(struct mbuf *, int, int, void *);
Index: src/sys/netinet6/in6_l2tp.c
diff -u src/sys/netinet6/in6_l2tp.c:1.5.8.1 src/sys/netinet6/in6_l2tp.c:1.5.8.2
--- src/sys/netinet6/in6_l2tp.c:1.5.8.1 Wed Jul 12 13:42:11 2017
+++ src/sys/netinet6/in6_l2tp.c Sun Dec 10 09:41:32 2017
@@ -1,4 +1,4 @@
-/* $NetBSD: in6_l2tp.c,v 1.5.8.1 2017/07/12 13:42:11 martin Exp $ */
+/* $NetBSD: in6_l2tp.c,v 1.5.8.2 2017/12/10 09:41:32 snj Exp $ */
/*
* Copyright (c) 2017 Internet Initiative Japan Inc.
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: in6_l2tp.c,v 1.5.8.1 2017/07/12 13:42:11 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: in6_l2tp.c,v 1.5.8.2 2017/12/10 09:41:32 snj Exp $");
#ifdef _KERNEL_OPT
#include "opt_l2tp.h"
@@ -75,7 +75,7 @@ __KERNEL_RCSID(0, "$NetBSD: in6_l2tp.c,v
#define L2TP_HLIM6 64
int ip6_l2tp_hlim = L2TP_HLIM6;
-static int in6_l2tp_input(struct mbuf **, int *, int);
+static int in6_l2tp_input(struct mbuf **, int *, int, void *);
static const struct encapsw in6_l2tp_encapsw = {
.encapsw6 = {
@@ -241,7 +241,7 @@ looped:
}
static int
-in6_l2tp_input(struct mbuf **mp, int *offp, int proto)
+in6_l2tp_input(struct mbuf **mp, int *offp, int proto, void *eparg __unused)
{
struct mbuf *m = *mp;
int off = *offp;
Index: src/sys/netipsec/xform.h
diff -u src/sys/netipsec/xform.h:1.8.10.1 src/sys/netipsec/xform.h:1.8.10.2
--- src/sys/netipsec/xform.h:1.8.10.1 Sat Oct 21 19:43:54 2017
+++ src/sys/netipsec/xform.h Sun Dec 10 09:41:32 2017
@@ -1,4 +1,4 @@
-/* $NetBSD: xform.h,v 1.8.10.1 2017/10/21 19:43:54 snj Exp $ */
+/* $NetBSD: xform.h,v 1.8.10.2 2017/12/10 09:41:32 snj Exp $ */
/* $FreeBSD: src/sys/netipsec/xform.h,v 1.1.4.1 2003/01/24 05:11:36 sam Exp $ */
/* $OpenBSD: ip_ipsp.h,v 1.119 2002/03/14 01:27:11 millert Exp $ */
/*
@@ -105,8 +105,8 @@ extern int xform_init(struct secasvar *s
struct cryptoini;
/* XF_IP4 */
-extern int ip4_input6(struct mbuf **m, int *offp, int proto);
-extern void ip4_input(struct mbuf *m, int, int);
+extern int ip4_input6(struct mbuf **m, int *offp, int proto, void *);
+extern void ip4_input(struct mbuf *m, int, int, void *);
extern int ipip_output(struct mbuf *, const struct ipsecrequest *,
struct secasvar *, struct mbuf **, int, int);
Index: src/sys/netipsec/xform_ipip.c
diff -u src/sys/netipsec/xform_ipip.c:1.49.2.1 src/sys/netipsec/xform_ipip.c:1.49.2.2
--- src/sys/netipsec/xform_ipip.c:1.49.2.1 Sat Oct 21 19:43:54 2017
+++ src/sys/netipsec/xform_ipip.c Sun Dec 10 09:41:32 2017
@@ -1,4 +1,4 @@
-/* $NetBSD: xform_ipip.c,v 1.49.2.1 2017/10/21 19:43:54 snj Exp $ */
+/* $NetBSD: xform_ipip.c,v 1.49.2.2 2017/12/10 09:41:32 snj Exp $ */
/* $FreeBSD: src/sys/netipsec/xform_ipip.c,v 1.3.2.1 2003/01/24 05:11:36 sam Exp $ */
/* $OpenBSD: ip_ipip.c,v 1.25 2002/06/10 18:04:55 itojun Exp $ */
@@ -39,7 +39,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: xform_ipip.c,v 1.49.2.1 2017/10/21 19:43:54 snj Exp $");
+__KERNEL_RCSID(0, "$NetBSD: xform_ipip.c,v 1.49.2.2 2017/12/10 09:41:32 snj Exp $");
/*
* IP-inside-IP processing
@@ -121,7 +121,7 @@ static void _ipip_input(struct mbuf *m,
* Really only a wrapper for ipip_input(), for use with IPv6.
*/
int
-ip4_input6(struct mbuf **m, int *offp, int proto)
+ip4_input6(struct mbuf **m, int *offp, int proto, void *eparg __unused)
{
#if 0
/* If we do not accept IP-in-IP explicitly, drop. */
@@ -142,7 +142,7 @@ ip4_input6(struct mbuf **m, int *offp, i
* Really only a wrapper for ipip_input(), for use with IPv4.
*/
void
-ip4_input(struct mbuf *m, int off, int proto)
+ip4_input(struct mbuf *m, int off, int proto, void *eparg __unused)
{
#if 0