xref: /freebsd/contrib/tcpdump/ppp.h (revision 587392a5a04955b85c3beac4cff26ca568359f54)
1 /* @(#) $Header: /tcpdump/master/tcpdump/ppp.h,v 1.16 2004-10-20 16:14:16 hannes Exp $ (LBL) */
2 /*
3  * Point to Point Protocol (PPP) RFC1331
4  *
5  * Copyright 1989 by Carnegie Mellon.
6  *
7  * Permission to use, copy, modify, and distribute this program for any
8  * purpose and without fee is hereby granted, provided that this copyright
9  * and permission notice appear on all copies and supporting documentation,
10  * the name of Carnegie Mellon not be used in advertising or publicity
11  * pertaining to distribution of the program without specific prior
12  * permission, and notice be given in supporting documentation that copying
13  * and distribution is by permission of Carnegie Mellon and Stanford
14  * University.  Carnegie Mellon makes no representations about the
15  * suitability of this software for any purpose.  It is provided "as is"
16  * without express or implied warranty.
17  *
18  * $FreeBSD$
19  */
20 #define PPP_HDRLEN	4	/* length of PPP header */
21 
22 #define PPP_ADDRESS	0xff	/* The address byte value */
23 #define PPP_CONTROL	0x03	/* The control byte value */
24 
25 #define PPP_WITHDIRECTION_IN  0x00 /* non-standard for DLT_PPP_WITHDIRECTION */
26 #define PPP_WITHDIRECTION_OUT 0x01 /* non-standard for DLT_PPP_WITHDIRECTION */
27 
28 /* Protocol numbers */
29 #define PPP_IP		0x0021	/* Raw IP */
30 #define PPP_OSI		0x0023	/* OSI Network Layer */
31 #define PPP_NS		0x0025	/* Xerox NS IDP */
32 #define PPP_DECNET	0x0027	/* DECnet Phase IV */
33 #define PPP_APPLE	0x0029	/* Appletalk */
34 #define PPP_IPX		0x002b	/* Novell IPX */
35 #define PPP_VJC		0x002d	/* Van Jacobson Compressed TCP/IP */
36 #define PPP_VJNC	0x002f	/* Van Jacobson Uncompressed TCP/IP */
37 #define PPP_BRPDU	0x0031	/* Bridging PDU */
38 #define PPP_STII	0x0033	/* Stream Protocol (ST-II) */
39 #define PPP_VINES	0x0035	/* Banyan Vines */
40 #define PPP_ML          0x003d  /* Multi-Link PPP */
41 #define PPP_IPV6	0x0057	/* IPv6 */
42 #define	PPP_COMP	0x00fd	/* Compressed Datagram */
43 
44 #define PPP_HELLO	0x0201	/* 802.1d Hello Packets */
45 #define PPP_LUXCOM	0x0231	/* Luxcom */
46 #define PPP_SNS		0x0233	/* Sigma Network Systems */
47 #define PPP_MPLS_UCAST  0x0281  /* rfc 3032 */
48 #define PPP_MPLS_MCAST  0x0283  /* rfc 3022 */
49 
50 #define PPP_IPCP	0x8021	/* IP Control Protocol */
51 #define PPP_OSICP	0x8023	/* OSI Network Layer Control Protocol */
52 #define PPP_NSCP	0x8025	/* Xerox NS IDP Control Protocol */
53 #define PPP_DECNETCP	0x8027	/* DECnet Control Protocol */
54 #define PPP_APPLECP	0x8029	/* Appletalk Control Protocol */
55 #define PPP_IPXCP	0x802b	/* Novell IPX Control Protocol */
56 #define PPP_STIICP	0x8033	/* Strean Protocol Control Protocol */
57 #define PPP_VINESCP	0x8035	/* Banyan Vines Control Protocol */
58 #define PPP_IPV6CP	0x8057	/* IPv6 Control Protocol */
59 #define PPP_CCP		0x80fd	/* Compress Control Protocol */
60 #define PPP_MPLSCP      0x8281  /* rfc 3022 */
61 
62 #define PPP_LCP		0xc021	/* Link Control Protocol */
63 #define PPP_PAP		0xc023	/* Password Authentication Protocol */
64 #define PPP_LQM		0xc025	/* Link Quality Monitoring */
65 #define PPP_SPAP        0xc027
66 #define PPP_CHAP	0xc223	/* Challenge Handshake Authentication Protocol */
67 #define PPP_BACP	0xc02b	/* Bandwidth Allocation Control Protocol */
68 #define PPP_BAP		0xc02d	/* BAP */
69 #define PPP_MPCP		0xc03d	/* Multi-Link */
70 #define PPP_SPAP_OLD    0xc123
71 #define PPP_EAP         0xc227
72 
73 extern struct tok ppptype2str[];
74