+ switch (en->en_type) {
+
+#ifdef INET
+ case ENPUP_IPTYPE:
+ schednetisr(NETISR_IP);
+ inq = &ipintrq;
+ break;
+#endif
+ case ENPUP_PUPTYPE: {
+ struct pup_header *pup = mtod(m, struct pup_header *);
+
+ pupproto.sp_protocol = pup->pup_type;
+ pupdst.spup_addr = pup->pup_dport;
+ pupsrc.spup_addr = pup->pup_sport;
+ raw_input(m, &pupproto, (struct sockaddr *)&pupdst,
+ (struct sockaddr *)&pupsrc);
+ goto setup;
+ }
+ }
+ if (IF_QFULL(inq)) {
+ IF_DROP(inq);
+ (void) m_freem(m);
+ } else
+ IF_ENQUEUE(inq, m);