Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 8 Jul 2009 11:09:01 GMT
From:      Ana Kukec <anchie@FreeBSD.org>
To:        Perforce Change Reviews <perforce@FreeBSD.org>
Subject:   PERFORCE change 165816 for review
Message-ID:  <200907081109.n68B9145024633@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=165816

Change 165816 by anchie@anchie_malimis on 2009/07/08 11:08:26

	Reversed names for the input and output hook. Now, the input hook
	is used in the path that receives a packet from the wire and
	passes it up the stack to the user space. The output hook is
	used in the path where packets traverse from the user space to
	ND in kernel.	

Affected files ...

.. //depot/projects/soc2009/anchie_send/src/sys/netinet6/icmp6.c#16 edit
.. //depot/projects/soc2009/anchie_send/src/sys/netinet6/nd6.c#14 edit
.. //depot/projects/soc2009/anchie_send/src/sys/netinet6/nd6_nbr.c#5 edit
.. //depot/projects/soc2009/anchie_send/src/sys/netinet6/send.c#15 edit
.. //depot/projects/soc2009/anchie_send/src/sys/netinet6/send.h#14 edit

Differences ...

==== //depot/projects/soc2009/anchie_send/src/sys/netinet6/icmp6.c#16 (text+ko) ====

@@ -765,8 +765,8 @@
 			/* give up local */
 
 			/* Send incoming SeND-protected/ND packet to user space. */
-			if (send_output_hook != NULL)
-				send_output_hook(m, ifp, SND_IN, ip6len);
+			if (send_input_hook != NULL)
+				send_input_hook(m, ifp, SND_IN, ip6len);
 			else {
 				/* give up local */
 				nd6_rs_input(m, off, icmp6len);
@@ -774,8 +774,8 @@
 			m = NULL;
 			goto freeit;
 		}
-		if (send_output_hook != NULL)
-			send_output_hook(n, ifp, SND_IN, ip6len);
+		if (send_input_hook != NULL)
+			send_input_hook(n, ifp, SND_IN, ip6len);
 		else
 			nd6_rs_input(n, off, icmp6len);
 		/* m stays. */
@@ -790,15 +790,15 @@
 		if ((n = m_copym(m, 0, M_COPYALL, M_DONTWAIT)) == NULL) {
 
 			/* Send incoming SeND-protected/ND packet to user space. */
-			if (send_output_hook != NULL)
-				send_output_hook(m, ifp, SND_IN, ip6len);
+			if (send_input_hook != NULL)
+				send_input_hook(m, ifp, SND_IN, ip6len);
 			else
 				nd6_ra_input(m, off, icmp6len);
 			m = NULL;
 			goto freeit;
 		}
-		if (send_output_hook != NULL)
-			send_output_hoo(n, ifp, SND_IN, ip6len);
+		if (send_input_hook != NULL)
+			send_input_hook(n, ifp, SND_IN, ip6len);
 		else
 			nd6_ra_input(n, off, icmp6len);
 		/* m stays. */
@@ -813,8 +813,8 @@
 		if ((n = m_copym(m, 0, M_COPYALL, M_DONTWAIT)) == NULL) {
 
 			/* Send incoming SeND-protected/ND packet to user space. */
-			if (send_output_hook != NULL)
-				send_output_hook(m, ifp, SND_IN, ip6len);
+			if (send_input_hook != NULL)
+				send_input_hook(m, ifp, SND_IN, ip6len);
 			else {
 				/* give up local */
 				nd6_ns_input(m, off, icmp6len);
@@ -822,8 +822,8 @@
 			m = NULL;
 			goto freeit;
 		}
-		if (send_output_hook != NULL)
-			send_output_hook(n, ifp, SND_IN, ip6len);
+		if (send_input_hook != NULL)
+			send_input_hook(n, ifp, SND_IN, ip6len);
 		else
 			nd6_ns_input(n, off, icmp6len);
 		/* m stays. */
@@ -838,8 +838,8 @@
 		if ((n = m_copym(m, 0, M_COPYALL, M_DONTWAIT)) == NULL) {
 
 			/* Send incoming SeND-protected/ND packet to user space. */
-			if (send_output_hook != NULL)
-				send_output_hook(m, ifp, SND_IN, ip6len);
+			if (send_input_hook != NULL)
+				send_input_hook(m, ifp, SND_IN, ip6len);
 			else {
 				/* give up local */
 				nd6_na_input(m, off, icmp6len);
@@ -847,8 +847,8 @@
 			m = NULL;
 			goto freeit;
 		}
-		if (send_output_hook != NULL)
-			send_output_hook(n, ifp, SND_IN, ip6len);
+		if (send_input_hook != NULL)
+			send_input_hook(n, ifp, SND_IN, ip6len);
 		else
 			nd6_na_input(n, off, icmp6len);
 		/* m stays. */
@@ -863,8 +863,8 @@
 		if ((n = m_copym(m, 0, M_COPYALL, M_DONTWAIT)) == NULL) {
 
 			/* Send incoming SeND-protected/ND packet to user space. */
-			if (send_output_hook != NULL)
-				send_output_hook(m, ifp, SND_IN, ip6len);
+			if (send_input_hook != NULL)
+				send_input_hook(m, ifp, SND_IN, ip6len);
 			else {
 				/* give up local */
 				icmp6_redirect_input(m, off);
@@ -872,8 +872,8 @@
 			m = NULL;
 			goto freeit;
 		}
-		if (send_output_hook != NULL)
-			send_output_hook(n, ifp, SND_IN, ip6len);
+		if (send_input_hook != NULL)
+			send_input_hook(n, ifp, SND_IN, ip6len);
 		else
 			icmp6_redirect_input(n, off);
 		/* m stays. */
@@ -2780,7 +2780,7 @@
 	nd_rd->nd_rd_cksum = in6_cksum(m, IPPROTO_ICMPV6,
 	    sizeof(*ip6), ntohs(ip6->ip6_plen));
 
-        if (send_output_hook != NULL) {
+        if (send_input_hook != NULL) {
 		mtag = m_tag_get(PACKET_TAG_ND_OUTGOING, sizeof(unsigned short), 
 			M_NOWAIT);
 		if (mtag == NULL)

==== //depot/projects/soc2009/anchie_send/src/sys/netinet6/nd6.c#14 (text+ko) ====

@@ -113,8 +113,8 @@
 
 static struct sockaddr_in6 all1_sa;
 
-int	(*send_output_hook)(struct mbuf*, struct ifnet *, int, int);
-int	(*send_input_hook)(void);
+int	(*send_input_hook)(struct mbuf*, struct ifnet *, int, int);
+int	(*send_output_hook)(void);
 
 static int nd6_is_new_addr_neighbor __P((struct sockaddr_in6 *,
 	struct ifnet *));
@@ -1911,12 +1911,12 @@
 #endif
 
 	/* send outgoing NS/NA/REDIRECT packet to sendd. */
-	if (send_output_hook != NULL) {
+	if (send_input_hook != NULL) {
 		mtag = m_tag_find(m, PACKET_TAG_ND_OUTGOING, NULL);
 		if (mtag != NULL) {
 			printf("%s: ND_OUTGOING tag found.\n", __FUNCTION__);
 			nd_type = (unsigned short *)(mtag + 1);
-			send_output_hook(m, ifp, 0, ip6len);
+			send_input_hook(m, ifp, 0, ip6len);
 		} else
 			error = EOPNOTSUPP;
 

==== //depot/projects/soc2009/anchie_send/src/sys/netinet6/nd6_nbr.c#5 (text+ko) ====

@@ -564,7 +564,7 @@
 	nd_ns->nd_ns_cksum =
 	    in6_cksum(m, IPPROTO_ICMPV6, sizeof(*ip6), icmp6len);
 
-	if (send_output_hook != NULL) {
+	if (send_input_hook != NULL) {
 		mtag = m_tag_get(PACKET_TAG_ND_OUTGOING, sizeof(unsigned short), 
 			M_NOWAIT);
 		if (mtag == NULL)
@@ -1080,7 +1080,7 @@
 	nd_na->nd_na_cksum =
 	    in6_cksum(m, IPPROTO_ICMPV6, sizeof(struct ip6_hdr), icmp6len);
 
-	if (send_output_hook != NULL) {
+	if (send_input_hook != NULL) {
 		mtag = m_tag_get(PACKET_TAG_ND_OUTGOING, sizeof(unsigned short), 
 			M_NOWAIT);
 		if (mtag == NULL)

==== //depot/projects/soc2009/anchie_send/src/sys/netinet6/send.c#15 (text+ko) ====

@@ -12,7 +12,7 @@
 #include <netinet6/send.h>
 
 static int
-send_input(void)
+send_output-ok(void)
 {
 
 	/* 
@@ -25,7 +25,7 @@
 }
 
 static int
-send_output(struct mbuf *m, struct ifnet *ifp, int in, int msglen)
+send_input(struct mbuf *m, struct ifnet *ifp, int in, int msglen)
 {
 	struct ip6_hdr *ip6;
 

==== //depot/projects/soc2009/anchie_send/src/sys/netinet6/send.h#14 (text+ko) ====

@@ -1,6 +1,6 @@
 /* send.c */
-extern int	(*send_output_hook)(struct mbuf *, struct ifnet *, int, int);
-extern int	(*send_input_hook)(void);
+extern int	(*send_input_hook)(struct mbuf *, struct ifnet *, int, int);
+extern int	(*send_output_hook)(void);
 
 /* Message formats for messages from ND to applications (i.e. sendd) via the 
  * routing socket. These messages are appended to an if_announcemsghdr 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200907081109.n68B9145024633>