summaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorAdi Masputra <adi.masputra@sun.com>1999-09-08 01:11:16 +0000
committerAdi Masputra <adi.masputra@sun.com>1999-09-08 01:11:16 +0000
commitcbc5d9b19c0a4e6546e5d9e32240249d41b03098 (patch)
treed6b485d50f12b374bf3d0193f8a2154bffddb221 /modules
parenteaca954c2d4a4336c955f4a973ae85dd68d99862 (diff)
downloadppp-cbc5d9b19c0a4e6546e5d9e32240249d41b03098.tar.gz
Add IF_UNITSEL ioctl to set ppa since driver is DLPI style 2. Solaris 8 is
very picky about this.
Diffstat (limited to 'modules')
-rw-r--r--modules/ppp.c14
1 files changed, 13 insertions, 1 deletions
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.
+ * <adi.masputra@sun.com>
+ */
+ if (sap == 0)
+ sap = ETHERTYPE_IP;
+#endif /* SOL2 */
+
if (sap == ETHERTYPE_IP)
sap = PPP_IP;
if (sap < 0x21 || sap > 0x3fff || (sap & 0x101) != 1) {