socsvn commit: r269359 - soc2014/dpl/netmap-ipfw/sys/netpfil/ipfw
dpl at FreeBSD.org
dpl at FreeBSD.org
Tue Jun 10 15:12:31 UTC 2014
Author: dpl
Date: Tue Jun 10 15:12:30 2014
New Revision: 269359
URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=269359
Log:
Add code for O_VERREVPATH.
Modified:
soc2014/dpl/netmap-ipfw/sys/netpfil/ipfw/ip_fw2.c
soc2014/dpl/netmap-ipfw/sys/netpfil/ipfw/ip_rules.h
Modified: soc2014/dpl/netmap-ipfw/sys/netpfil/ipfw/ip_fw2.c
==============================================================================
--- soc2014/dpl/netmap-ipfw/sys/netpfil/ipfw/ip_fw2.c Tue Jun 10 14:34:22 2014 (r269358)
+++ soc2014/dpl/netmap-ipfw/sys/netpfil/ipfw/ip_fw2.c Tue Jun 10 15:12:30 2014 (r269359)
@@ -1583,17 +1583,7 @@
break;
case O_VERREVPATH:
- /* Outgoing packets automatically pass/match */
- match = ((oif != NULL) ||
- (m->m_pkthdr.rcvif == NULL) ||
- (
-#ifdef INET6
- is_ipv6 ?
- verify_path6(&(args->f_id.src_ip6),
- m->m_pkthdr.rcvif, args->f_id.fib) :
-#endif
- verify_path(src_ip, m->m_pkthdr.rcvif,
- args->f_id.fib)));
+ rule_verrevpath(&match, oif, m, is_ipv6, args, scr_ip);
break;
case O_VERSRCREACH:
Modified: soc2014/dpl/netmap-ipfw/sys/netpfil/ipfw/ip_rules.h
==============================================================================
--- soc2014/dpl/netmap-ipfw/sys/netpfil/ipfw/ip_rules.h Tue Jun 10 14:34:22 2014 (r269358)
+++ soc2014/dpl/netmap-ipfw/sys/netpfil/ipfw/ip_rules.h Tue Jun 10 15:12:30 2014 (r269359)
@@ -546,8 +546,19 @@
}
inline void
-rule_verrevpath(int *match, struct ifnet *oif, struct mbuf *m, int is_ipv6 struct ip_fw_args *args, struct in_addr *src_ip)
+rule_verrevpath(int *match, struct ifnet *oif, struct mbuf *m, int is_ipv6, struct ip_fw_args *args, struct in_addr *src_ip)
{
+ /* Outgoing packets automatically pass/match */
+ *match = ((oif != NULL) ||
+ (m->m_pkthdr.rcvif == NULL) ||
+ (
+#ifdef INET6
+ is_ipv6 ?
+ verify_path6(&(args->f_id.src_ip6),
+ m->m_pkthdr.rcvif, args->f_id.fib) :
+#endif
+ verify_path(src_ip, m->m_pkthdr.rcvif,
+ args->f_id.fib)));
}
inline void
More information about the svn-soc-all
mailing list