]> git.ozlabs.org Git - ppp.git/blobdiff - include/net/ppp_defs.h
chatchat stuff from gpk@onramp.net
[ppp.git] / include / net / ppp_defs.h
index 20399baffca1edeebe13f86bd028a68ccccf8950..ae9bbc34cd53884d94882d2ac266d9a9a5db1fd4 100644 (file)
@@ -1,4 +1,4 @@
-/*     $Id: ppp_defs.h,v 1.8 1996/09/26 06:30:22 paulus Exp $  */
+/*     $Id: ppp_defs.h,v 1.13 1998/03/25 04:03:14 paulus Exp $ */
 
 /*
  * ppp_defs.h - PPP definitions.
  */
 #define PPP_HDRLEN     4       /* octets for standard ppp header */
 #define PPP_FCSLEN     2       /* octets for FCS */
+
+/*
+ * Packet sizes
+ *
+ * Note - lcp shouldn't be allowed to negotiate stuff outside these
+ *       limits.  See lcp.h in the pppd directory.
+ * (XXX - these constants should simply be shared by lcp.c instead
+ *       of living in lcp.h)
+ */
+#define        PPP_MTU         1500    /* Default MTU (size of Info field) */
+#define PPP_MAXMTU     65535 - (PPP_HDRLEN + PPP_FCSLEN)
+#define PPP_MINMTU     64
 #define PPP_MRU                1500    /* default MRU = max length of info field */
+#define PPP_MAXMRU     65000   /* Largest MRU we allow */
+#define PPP_MINMRU     128
 
 #define PPP_ADDRESS(p) (((u_char *)(p))[0])
 #define PPP_CONTROL(p) (((u_char *)(p))[1])
  * Protocol field values.
  */
 #define PPP_IP         0x21    /* Internet Protocol */
+#define PPP_AT         0x29    /* AppleTalk Protocol */
+#define PPP_IPX                0x2b    /* IPX protocol */
 #define        PPP_VJC_COMP    0x2d    /* VJ compressed TCP */
 #define        PPP_VJC_UNCOMP  0x2f    /* VJ uncompressed TCP */
+#define PPP_IPV6       0x57    /* Internet Protocol Version 6 */
 #define PPP_COMP       0xfd    /* compressed packet */
 #define PPP_IPCP       0x8021  /* IP Control Protocol */
+#define PPP_ATCP       0x8029  /* AppleTalk Control Protocol */
+#define PPP_IPXCP      0x802b  /* IPX Control Protocol */
 #define PPP_CCP                0x80fd  /* Compression Control Protocol */
 #define PPP_LCP                0xc021  /* Link Control Protocol */
 #define PPP_PAP                0xc023  /* Password Authentication Protocol */
 #define PPP_LQR                0xc025  /* Link Quality Report protocol */
 #define PPP_CHAP       0xc223  /* Cryptographic Handshake Auth. Protocol */
+#define PPP_CBCP       0xc029  /* Callback Control Protocol */
 
 /*
  * Values for FCS calculations.
 /*
  * A 32-bit unsigned integral type.
  */
-#if !defined(__BIT_TYPES_DEFINED__) && !defined(_BITYPES)
+
+#if !defined(__BIT_TYPES_DEFINED__) && !defined(_BITYPES) \
+ && !defined(__FreeBSD__) && (NS_TARGET < 40)
 #ifdef UINT32_T
 typedef UINT32_T       u_int32_t;
 #else
 typedef unsigned int   u_int32_t;
+typedef unsigned short  u_int16_t;
 #endif
 #endif