1 /* @(#) $Header: /tcpdump/master/tcpdump/l2tp.h,v 1.5 2001/11/05 10:03:27 guy Exp $ (LBL) */
3 * Copyright (c) 1991, 1993, 1994, 1995, 1996, 1997
4 * The Regents of the University of California. All rights reserved.
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that: (1) source code distributions
8 * retain the above copyright notice and this paragraph in its entirety, (2)
9 * distributions including binary code include the above copyright notice and
10 * this paragraph in its entirety in the documentation or other materials
11 * provided with the distribution, and (3) all advertising materials mentioning
12 * features or use of this software display the following acknowledgement:
13 * ``This product includes software developed by the University of California,
14 * Lawrence Berkeley Laboratory and its contributors.'' Neither the name of
15 * the University nor the names of its contributors may be used to endorse
16 * or promote products derived from this software without specific prior
18 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
19 * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
20 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
22 * L2TP support contributed by Motonori Shindo (mshindo@mshindo.net)
26 #define L2TP_FLAG_TYPE 0x8000 /* Type (0=Data, 1=Control) */
27 #define L2TP_FLAG_LENGTH 0x4000 /* Length */
28 #define L2TP_FLAG_SEQUENCE 0x0800 /* Sequence */
29 #define L2TP_FLAG_OFFSET 0x0200 /* Offset */
30 #define L2TP_FLAG_PRIORITY 0x0100 /* Priority */
32 #define L2TP_VERSION_MASK 0x000f /* Version Mask */
33 #define L2TP_VERSION_L2F 0x0001 /* L2F */
34 #define L2TP_VERSION_L2TP 0x0002 /* L2TP */
36 #define L2TP_AVP_HDR_FLAG_MANDATORY 0x8000 /* Mandatory Flag */
37 #define L2TP_AVP_HDR_FLAG_HIDDEN 0x4000 /* Hidden Flag */
38 #define L2TP_AVP_HDR_LEN_MASK 0x03ff /* Length Mask */
40 #define L2TP_FRAMING_CAP_SYNC_MASK 0x00000001 /* Synchronous */
41 #define L2TP_FRAMING_CAP_ASYNC_MASK 0x00000002 /* Asynchronous */
43 #define L2TP_FRAMING_TYPE_SYNC_MASK 0x00000001 /* Synchronous */
44 #define L2TP_FRAMING_TYPE_ASYNC_MASK 0x00000002 /* Asynchronous */
46 #define L2TP_BEARER_CAP_DIGITAL_MASK 0x00000001 /* Digital */
47 #define L2TP_BEARER_CAP_ANALOG_MASK 0x00000002 /* Analog */
49 #define L2TP_BEARER_TYPE_DIGITAL_MASK 0x00000001 /* Digital */
50 #define L2TP_BEARER_TYPE_ANALOG_MASK 0x00000002 /* Analog */
53 #define L2TP_AUTHEN_TYPE_RESERVED 0x0000 /* Reserved */
54 #define L2TP_AUTHEN_TYPE_TEXTUAL 0x0001 /* Textual username/password exchange */
55 #define L2TP_AUTHEN_TYPE_CHAP 0x0002 /* PPP CHAP */
56 #define L2TP_AUTHEN_TYPE_PAP 0x0003 /* PPP PAP */
57 #define L2TP_AUTHEN_TYPE_NO_AUTH 0x0004 /* No Authentication */
58 #define L2TP_AUTHEN_TYPE_MSCHAPv1 0x0005 /* MSCHAPv1 */
60 #define L2TP_PROXY_AUTH_ID_MASK 0x00ff