svn commit: r275716 - in head/sys: netinet netinet6
Andrey V. Elsukov
ae at FreeBSD.org
Thu Dec 11 19:20:15 UTC 2014
Author: ae
Date: Thu Dec 11 19:20:13 2014
New Revision: 275716
URL: https://svnweb.freebsd.org/changeset/base/275716
Log:
Do not count security policy violation twice.
ipsec*_in_reject() do this by their own.
Obtained from: Yandex LLC
Sponsored by: Yandex LLC
Modified:
head/sys/netinet/sctp_input.c
head/sys/netinet/tcp_input.c
head/sys/netinet/udp_usrreq.c
head/sys/netinet6/raw_ip6.c
head/sys/netinet6/udp6_usrreq.c
Modified: head/sys/netinet/sctp_input.c
==============================================================================
--- head/sys/netinet/sctp_input.c Thu Dec 11 19:09:57 2014 (r275715)
+++ head/sys/netinet/sctp_input.c Thu Dec 11 19:20:13 2014 (r275716)
@@ -5698,7 +5698,6 @@ sctp_common_input_processing(struct mbuf
#ifdef INET
case AF_INET:
if (ipsec4_in_reject(m, &inp->ip_inp.inp)) {
- IPSECSTAT_INC(ips_in_polvio);
SCTP_STAT_INCR(sctps_hdrops);
goto out;
}
@@ -5707,7 +5706,6 @@ sctp_common_input_processing(struct mbuf
#ifdef INET6
case AF_INET6:
if (ipsec6_in_reject(m, &inp->ip_inp.inp)) {
- IPSEC6STAT_INC(ips_in_polvio);
SCTP_STAT_INCR(sctps_hdrops);
goto out;
}
Modified: head/sys/netinet/tcp_input.c
==============================================================================
--- head/sys/netinet/tcp_input.c Thu Dec 11 19:09:57 2014 (r275715)
+++ head/sys/netinet/tcp_input.c Thu Dec 11 19:20:13 2014 (r275716)
@@ -894,12 +894,10 @@ findpcb:
#ifdef IPSEC
#ifdef INET6
if (isipv6 && ipsec6_in_reject(m, inp)) {
- IPSEC6STAT_INC(ips_in_polvio);
goto dropunlock;
} else
#endif /* INET6 */
if (ipsec4_in_reject(m, inp) != 0) {
- IPSECSTAT_INC(ips_in_polvio);
goto dropunlock;
}
#endif /* IPSEC */
Modified: head/sys/netinet/udp_usrreq.c
==============================================================================
--- head/sys/netinet/udp_usrreq.c Thu Dec 11 19:09:57 2014 (r275715)
+++ head/sys/netinet/udp_usrreq.c Thu Dec 11 19:20:13 2014 (r275716)
@@ -323,7 +323,6 @@ udp_append(struct inpcb *inp, struct ip
/* Check AH/ESP integrity. */
if (ipsec4_in_reject(n, inp)) {
m_freem(n);
- IPSECSTAT_INC(ips_in_polvio);
return;
}
#ifdef IPSEC_NAT_T
Modified: head/sys/netinet6/raw_ip6.c
==============================================================================
--- head/sys/netinet6/raw_ip6.c Thu Dec 11 19:09:57 2014 (r275715)
+++ head/sys/netinet6/raw_ip6.c Thu Dec 11 19:20:13 2014 (r275716)
@@ -264,7 +264,6 @@ rip6_input(struct mbuf **mp, int *offp,
*/
if (n && ipsec6_in_reject(n, last)) {
m_freem(n);
- IPSEC6STAT_INC(ips_in_polvio);
/* Do not inject data into pcb. */
} else
#endif /* IPSEC */
@@ -296,7 +295,6 @@ rip6_input(struct mbuf **mp, int *offp,
*/
if ((last != NULL) && ipsec6_in_reject(m, last)) {
m_freem(m);
- IPSEC6STAT_INC(ips_in_polvio);
IP6STAT_DEC(ip6s_delivered);
/* Do not inject data into pcb. */
INP_RUNLOCK(last);
Modified: head/sys/netinet6/udp6_usrreq.c
==============================================================================
--- head/sys/netinet6/udp6_usrreq.c Thu Dec 11 19:09:57 2014 (r275715)
+++ head/sys/netinet6/udp6_usrreq.c Thu Dec 11 19:20:13 2014 (r275716)
@@ -158,7 +158,6 @@ udp6_append(struct inpcb *inp, struct mb
/* Check AH/ESP integrity. */
if (ipsec6_in_reject(n, inp)) {
m_freem(n);
- IPSEC6STAT_INC(ips_in_polvio);
return;
}
#endif /* IPSEC */
More information about the svn-src-head
mailing list