-{struct mbuf *mm; int mlen = 0;
-for (mm = m; m; m = m->m_next) /* XXX debugging code -- sklower */
- mlen += m->m_len;
-m = mm;
-if (mlen != m->m_pkthdr.len) {
- if (Loop_Sanity)
- m_freem(Loop_Sanity);
- Loop_Sanity = m_copy(m, 0, (int)M_COPYALL);
-}
-}
-
+ if (rt && rt->rt_flags & RTF_REJECT) {
+ m_freem(m);
+ return (rt->rt_flags & RTF_HOST ? EHOSTUNREACH : ENETUNREACH);
+ }