version 1.36, 1996/09/14 14:40:26 |
version 1.40, 1996/10/22 11:27:05 |
|
|
for (pfh = pfil_hook_get(PFIL_IN); pfh; pfh = pfh->pfil_link.le_next) |
for (pfh = pfil_hook_get(PFIL_IN); pfh; pfh = pfh->pfil_link.le_next) |
if (pfh->pfil_func) { |
if (pfh->pfil_func) { |
if (pfh->pfil_func(ip, hlen, m->m_pkthdr.rcvif, 0, &m0)) |
if (pfh->pfil_func(ip, hlen, m->m_pkthdr.rcvif, 0, &m0)) |
goto bad; |
goto next; |
ip = mtod(m = m0, struct ip *); |
else |
|
ip = mtod(m = m0, struct ip *); |
} |
} |
#endif /* PFIL_HOOKS */ |
#endif /* PFIL_HOOKS */ |
|
|
|
|
* if the packet was previously fragmented, |
* if the packet was previously fragmented, |
* but it's not worth the time; just let them time out.) |
* but it's not worth the time; just let them time out.) |
*/ |
*/ |
if (ip->ip_off &~ IP_DF) { |
if (ip->ip_off & ~(IP_DF|IP_RF)) { |
if (m->m_flags & M_EXT) { /* XXX */ |
if (m->m_flags & M_EXT) { /* XXX */ |
if ((m = m_pullup(m, sizeof (struct ip))) == 0) { |
if ((m = m_pullup(m, sizeof (struct ip))) == 0) { |
ipstat.ips_toosmall++; |
ipstat.ips_toosmall++; |