- m->m_data += 3;
- m->m_len -= 3;
- if (m->m_flags & M_PKTHDR)
- m->m_pkthdr.len -= 3;
- DEBUGF(undebug & 0x2, printf("clnp packet\n");)
- schednetisr(NETISR_CLNP);
+ m->m_data += 3; /* XXX */
+ m->m_len -= 3; /* XXX */
+ m->m_pkthdr.len -= 3; /* XXX */
+ M_PREPEND(m, sizeof *eh, M_DONTWAIT);
+ if (m == 0)
+ return;
+ *mtod(m, struct ether_header *) = *eh;
+ IFDEBUG(D_ETHER)
+ printf("clnp packet");
+ ENDDEBUG
+ schednetisr(NETISR_ISO);