Fix stateful filtering of loopback IPv6 traffic to an address not configured
on lo0. While here fix a comment. PR: kern/102647 Reported by: Frank Steinborn Submitted by: suz (earlier version) MFC after: 3 days
This commit is contained in:
parent
f044a1949b
commit
9e3a82aacc
@ -3438,11 +3438,17 @@ pf_check6_in(void *arg, struct mbuf **m, struct ifnet *ifp, int dir,
|
||||
struct inpcb *inp)
|
||||
{
|
||||
/*
|
||||
* IPv6 does not affected ip_len/ip_off byte order changes.
|
||||
* IPv6 is not affected by ip_len/ip_off byte order changes.
|
||||
*/
|
||||
int chk;
|
||||
|
||||
chk = pf_test6(PF_IN, ifp, m, NULL, inp);
|
||||
/*
|
||||
* In case of loopback traffic IPv6 uses the real interface in
|
||||
* order to support scoped addresses. In order to support stateful
|
||||
* filtering we have change this to lo0 as it is the case in IPv4.
|
||||
*/
|
||||
chk = pf_test6(PF_IN, (*m)->m_flags & M_LOOP ? &loif[0] : ifp, m,
|
||||
NULL, inp);
|
||||
if (chk && *m) {
|
||||
m_freem(*m);
|
||||
*m = NULL;
|
||||
|
Loading…
Reference in New Issue
Block a user