diff options
author | Alexander Bluhm <bluhm@cvs.openbsd.org> | 2013-06-01 16:22:06 +0000 |
---|---|---|
committer | Alexander Bluhm <bluhm@cvs.openbsd.org> | 2013-06-01 16:22:06 +0000 |
commit | 51a166362649e2fe7de4dd395ebd8018574499c0 (patch) | |
tree | b596ebb8beefa61975729bb0996eb8005877b0bb | |
parent | 6c767d473d124564aa10591e9b7250fa0f9b7ee7 (diff) |
Pass the routing domain to IPv6 pr_ctlinput() like in IPv4.
OK claudio@
-rw-r--r-- | sys/netinet/tcp_subr.c | 7 | ||||
-rw-r--r-- | sys/netinet/tcp_var.h | 4 | ||||
-rw-r--r-- | sys/netinet/udp_usrreq.c | 4 | ||||
-rw-r--r-- | sys/netinet/udp_var.h | 4 | ||||
-rw-r--r-- | sys/netinet6/icmp6.c | 10 | ||||
-rw-r--r-- | sys/netinet6/ip6_var.h | 4 | ||||
-rw-r--r-- | sys/netinet6/ip6protosw.h | 4 | ||||
-rw-r--r-- | sys/netinet6/raw_ip6.c | 4 |
8 files changed, 19 insertions, 22 deletions
diff --git a/sys/netinet/tcp_subr.c b/sys/netinet/tcp_subr.c index 508a57ee1b3..ff9249bb62e 100644 --- a/sys/netinet/tcp_subr.c +++ b/sys/netinet/tcp_subr.c @@ -1,4 +1,4 @@ -/* $OpenBSD: tcp_subr.c,v 1.119 2013/05/31 13:15:53 bluhm Exp $ */ +/* $OpenBSD: tcp_subr.c,v 1.120 2013/06/01 16:22:05 bluhm Exp $ */ /* $NetBSD: tcp_subr.c,v 1.22 1996/02/13 23:44:00 christos Exp $ */ /* @@ -653,10 +653,7 @@ tcp_notify(inp, error) #ifdef INET6 void -tcp6_ctlinput(cmd, sa, d) - int cmd; - struct sockaddr *sa; - void *d; +tcp6_ctlinput(int cmd, struct sockaddr *sa, u_int rdomain, void *d) { struct tcphdr th; struct tcpcb *tp; diff --git a/sys/netinet/tcp_var.h b/sys/netinet/tcp_var.h index f25ef5d8129..f3053598a58 100644 --- a/sys/netinet/tcp_var.h +++ b/sys/netinet/tcp_var.h @@ -1,4 +1,4 @@ -/* $OpenBSD: tcp_var.h,v 1.100 2013/04/10 08:50:59 mpi Exp $ */ +/* $OpenBSD: tcp_var.h,v 1.101 2013/06/01 16:22:05 bluhm Exp $ */ /* $NetBSD: tcp_var.h,v 1.17 1996/02/13 23:44:24 christos Exp $ */ /* @@ -567,7 +567,7 @@ struct tcpcb * void tcp_reaper(void *); int tcp_freeq(struct tcpcb *); #ifdef INET6 -void tcp6_ctlinput(int, struct sockaddr *, void *); +void tcp6_ctlinput(int, struct sockaddr *, u_int, void *); #endif void *tcp_ctlinput(int, struct sockaddr *, u_int, void *); int tcp_ctloutput(int, struct socket *, int, int, struct mbuf **); diff --git a/sys/netinet/udp_usrreq.c b/sys/netinet/udp_usrreq.c index a4863ebea6b..2d2f68a468b 100644 --- a/sys/netinet/udp_usrreq.c +++ b/sys/netinet/udp_usrreq.c @@ -1,4 +1,4 @@ -/* $OpenBSD: udp_usrreq.c,v 1.162 2013/05/31 13:15:53 bluhm Exp $ */ +/* $OpenBSD: udp_usrreq.c,v 1.163 2013/06/01 16:22:05 bluhm Exp $ */ /* $NetBSD: udp_usrreq.c,v 1.28 1996/03/16 23:54:03 christos Exp $ */ /* @@ -737,7 +737,7 @@ udp_notify(struct inpcb *inp, int errno) #ifdef INET6 void -udp6_ctlinput(int cmd, struct sockaddr *sa, void *d) +udp6_ctlinput(int cmd, struct sockaddr *sa, u_int rdomain, void *d) { struct udphdr uh; struct sockaddr_in6 sa6; diff --git a/sys/netinet/udp_var.h b/sys/netinet/udp_var.h index e6f88d8a826..363ebd12f3c 100644 --- a/sys/netinet/udp_var.h +++ b/sys/netinet/udp_var.h @@ -1,4 +1,4 @@ -/* $OpenBSD: udp_var.h,v 1.21 2010/10/21 11:38:27 bluhm Exp $ */ +/* $OpenBSD: udp_var.h,v 1.22 2013/06/01 16:22:05 bluhm Exp $ */ /* $NetBSD: udp_var.h,v 1.12 1996/02/13 23:44:41 christos Exp $ */ /* @@ -103,7 +103,7 @@ extern struct inpcbtable udbtable; extern struct udpstat udpstat; #ifdef INET6 -void udp6_ctlinput(int, struct sockaddr *, void *); +void udp6_ctlinput(int, struct sockaddr *, u_int, void *); int udp6_input(struct mbuf **, int *, int); #endif /* INET6 */ void *udp_ctlinput(int, struct sockaddr *, u_int, void *); diff --git a/sys/netinet6/icmp6.c b/sys/netinet6/icmp6.c index 99d76239011..d0911355365 100644 --- a/sys/netinet6/icmp6.c +++ b/sys/netinet6/icmp6.c @@ -1,4 +1,4 @@ -/* $OpenBSD: icmp6.c,v 1.127 2013/05/31 15:04:23 bluhm Exp $ */ +/* $OpenBSD: icmp6.c,v 1.128 2013/06/01 16:22:05 bluhm Exp $ */ /* $KAME: icmp6.c,v 1.217 2001/06/20 15:03:29 jinmei Exp $ */ /* @@ -892,7 +892,7 @@ icmp6_notify_error(struct mbuf *m, int off, int icmp6len, int code) /* Detect the upper level protocol */ { - void (*ctlfunc)(int, struct sockaddr *, void *); + void (*ctlfunc)(int, struct sockaddr *, u_int, void *); u_int8_t nxt = eip6->ip6_nxt; int eoff = off + sizeof(struct icmp6_hdr) + sizeof(struct ip6_hdr); @@ -1062,10 +1062,10 @@ icmp6_notify_error(struct mbuf *m, int off, int icmp6len, int code) ip6cp.ip6c_cmdarg = (void *)¬ifymtu; } - ctlfunc = (void (*)(int, struct sockaddr *, void *)) - (inet6sw[ip6_protox[nxt]].pr_ctlinput); + ctlfunc = inet6sw[ip6_protox[nxt]].pr_ctlinput; if (ctlfunc) - (void) (*ctlfunc)(code, sin6tosa(&icmp6dst), &ip6cp); + (*ctlfunc)(code, sin6tosa(&icmp6dst), + m->m_pkthdr.rdomain, &ip6cp); } return (0); diff --git a/sys/netinet6/ip6_var.h b/sys/netinet6/ip6_var.h index 14012b5d78d..d464e29fc3e 100644 --- a/sys/netinet6/ip6_var.h +++ b/sys/netinet6/ip6_var.h @@ -1,4 +1,4 @@ -/* $OpenBSD: ip6_var.h,v 1.45 2013/03/14 11:18:37 mpi Exp $ */ +/* $OpenBSD: ip6_var.h,v 1.46 2013/06/01 16:22:05 bluhm Exp $ */ /* $KAME: ip6_var.h,v 1.33 2000/06/11 14:59:20 jinmei Exp $ */ /* @@ -295,7 +295,7 @@ void frag6_drain(void); void rip6_init(void); int rip6_input(struct mbuf **mp, int *offp, int proto); -void rip6_ctlinput(int, struct sockaddr *, void *); +void rip6_ctlinput(int, struct sockaddr *, u_int, void *); int rip6_ctloutput(int, struct socket *, int, int, struct mbuf **); int rip6_output(struct mbuf *, ...); int rip6_usrreq(struct socket *, diff --git a/sys/netinet6/ip6protosw.h b/sys/netinet6/ip6protosw.h index cd732740c2b..ef25a18478f 100644 --- a/sys/netinet6/ip6protosw.h +++ b/sys/netinet6/ip6protosw.h @@ -1,4 +1,4 @@ -/* $OpenBSD: ip6protosw.h,v 1.8 2013/04/24 10:17:08 mpi Exp $ */ +/* $OpenBSD: ip6protosw.h,v 1.9 2013/06/01 16:22:05 bluhm Exp $ */ /* $KAME: ip6protosw.h,v 1.22 2001/02/08 18:02:08 itojun Exp $ */ /* @@ -123,7 +123,7 @@ struct ip6protosw { /* output to protocol (from above) */ int (*pr_output)(struct mbuf *, ...); /* control input (from below) */ - void (*pr_ctlinput)(int, struct sockaddr *, void *); + void (*pr_ctlinput)(int, struct sockaddr *, u_int, void *); /* control output (from above) */ int (*pr_ctloutput)(int, struct socket *, int, int, struct mbuf **); diff --git a/sys/netinet6/raw_ip6.c b/sys/netinet6/raw_ip6.c index 6866ebea562..063267915fb 100644 --- a/sys/netinet6/raw_ip6.c +++ b/sys/netinet6/raw_ip6.c @@ -1,4 +1,4 @@ -/* $OpenBSD: raw_ip6.c,v 1.56 2013/05/31 15:04:25 bluhm Exp $ */ +/* $OpenBSD: raw_ip6.c,v 1.57 2013/06/01 16:22:05 bluhm Exp $ */ /* $KAME: raw_ip6.c,v 1.69 2001/03/04 15:55:44 itojun Exp $ */ /* @@ -236,7 +236,7 @@ rip6_input(struct mbuf **mp, int *offp, int proto) } void -rip6_ctlinput(int cmd, struct sockaddr *sa, void *d) +rip6_ctlinput(int cmd, struct sockaddr *sa, u_int rdomain, void *d) { struct ip6_hdr *ip6; struct ip6ctlparam *ip6cp = NULL; |