X-Git-Url: https://git.ozlabs.org/?p=ppp.git;a=blobdiff_plain;f=modules%2Fppp.c;h=b3a32a39d3b0a75c586f1e0f5d4a474e983cc296;hp=10a5aec2995c785f5db6f487f6d5cbe283129e28;hb=07de73a331240b97d915c1851431a743449dd0f4;hpb=f268159fb65fd530067226d60a97cbb131a73762 diff --git a/modules/ppp.c b/modules/ppp.c index 10a5aec..b3a32a3 100644 --- a/modules/ppp.c +++ b/modules/ppp.c @@ -24,7 +24,7 @@ * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, * OR MODIFICATIONS. * - * $Id: ppp.c,v 1.19 1999/05/13 00:32:42 paulus Exp $ + * $Id: ppp.c,v 1.20 1999/09/08 01:11:15 masputra Exp $ */ /* @@ -1129,6 +1129,18 @@ dlpi_request(q, mp, us) except that we accept ETHERTYPE_IP in place of PPP_IP. */ sap = d->bind_req.dl_sap; us->req_sap = sap; + +#ifdef SOL2 + /* + * ip will send a sap value of 0 (post-Solaris 7), or + * ETHERTYPE_IP (0x800) (pre-Solaris 8) due to how the + * ppp DLPI provider declares its characteristics. + * + */ + if (sap == 0) + sap = ETHERTYPE_IP; +#endif /* SOL2 */ + if (sap == ETHERTYPE_IP) sap = PPP_IP; if (sap < 0x21 || sap > 0x3fff || (sap & 0x101) != 1) {