summaryrefslogtreecommitdiffstats
path: root/sys/net/if_spppsubr.c
diff options
context:
space:
mode:
authorpeter <peter@FreeBSD.org>1995-11-28 01:59:19 +0000
committerpeter <peter@FreeBSD.org>1995-11-28 01:59:19 +0000
commit477bcaeab8e2d3b466043268da6163ec4ff9f970 (patch)
tree1b32413a33eecee054fec6b182aac727d985d5d8 /sys/net/if_spppsubr.c
parent016bb775145bda65b589a74f690267dca8404c39 (diff)
downloadFreeBSD-src-477bcaeab8e2d3b466043268da6163ec4ff9f970.zip
FreeBSD-src-477bcaeab8e2d3b466043268da6163ec4ff9f970.tar.gz
Implement some rudimentry IPX support...
Diffstat (limited to 'sys/net/if_spppsubr.c')
-rw-r--r--sys/net/if_spppsubr.c20
1 files changed, 18 insertions, 2 deletions
diff --git a/sys/net/if_spppsubr.c b/sys/net/if_spppsubr.c
index a26a4f0..de87679 100644
--- a/sys/net/if_spppsubr.c
+++ b/sys/net/if_spppsubr.c
@@ -68,6 +68,7 @@
#define PPP_IP 0x0021 /* Internet Protocol */
#define PPP_ISO 0x0023 /* ISO OSI Protocol */
#define PPP_XNS 0x0025 /* Xerox NS Protocol */
+#define PPP_IPX 0x002b /* Novell IPX Protocol */
#define PPP_LCP 0xc021 /* Link Control Protocol */
#define PPP_IPCP 0x8021 /* Internet Protocol Control Protocol */
@@ -263,6 +264,15 @@ invalid: if (ifp->if_flags & IFF_DEBUG)
}
break;
#endif
+#ifdef IPX
+ case PPP_IPX:
+ /* IPX IPXCP not implemented yet */
+ if (sp->lcp.state == LCP_STATE_OPENED) {
+ schednetisr (NETISR_IPX);
+ inq = &ipxintrq;
+ }
+ break;
+#endif
#ifdef NS
case PPP_XNS:
/* XNS IDPCP not implemented yet */
@@ -307,6 +317,12 @@ invalid: if (ifp->if_flags & IFF_DEBUG)
inq = &ipintrq;
break;
#endif
+#ifdef IPX
+ case ETHERTYPE_IPX:
+ schednetisr (NETISR_IPX);
+ inq = &ipxintrq;
+ break;
+#endif
#ifdef NS
case ETHERTYPE_NS:
schednetisr (NETISR_NS);
@@ -412,9 +428,9 @@ int sppp_output (struct ifnet *ifp, struct mbuf *m, struct sockaddr *dst, struct
break;
#endif
#ifdef IPX
- case AF_IPX: /* Xerox NS Protocol */
+ case AF_IPX: /* Novell IPX Protocol */
h->protocol = htons ((sp->pp_flags & PP_CISCO) ?
- ETHERTYPE_IPX : PPP_XNS);
+ ETHERTYPE_IPX : PPP_IPX);
break;
#endif
#ifdef ISO
OpenPOWER on IntegriCloud