blob: 660466994f5559ae46011324ac57546e56764e2c [file] [log] [blame]
The Android Open Source Project2949f582009-03-03 19:30:46 -08001/*
2 * Copyright (c) 1993, 1994, 1997
3 * The Regents of the University of California. All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that: (1) source code distributions
7 * retain the above copyright notice and this paragraph in its entirety, (2)
8 * distributions including binary code include the above copyright notice and
9 * this paragraph in its entirety in the documentation or other materials
10 * provided with the distribution, and (3) all advertising materials mentioning
11 * features or use of this software display the following acknowledgement:
12 * ``This product includes software developed by the University of California,
13 * Lawrence Berkeley Laboratory and its contributors.'' Neither the name of
14 * the University nor the names of its contributors may be used to endorse
15 * or promote products derived from this software without specific prior
16 * written permission.
17 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
18 * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
19 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
20 *
JP Abgrall53f17a92014-02-12 14:02:41 -080021 * @(#) $Header: /tcpdump/master/tcpdump/llc.h,v 1.23 2007-04-13 09:43:11 hannes Exp $ (LBL)
The Android Open Source Project2949f582009-03-03 19:30:46 -080022 */
23
24/*
25 * Definitions for information in the LLC header.
26 */
27
28#define LLC_U_FMT 3
29#define LLC_GSAP 1
30#define LLC_IG 1 /* Individual / Group */
31#define LLC_S_FMT 1
32
33#define LLC_U_POLL 0x10
34#define LLC_IS_POLL 0x0100
35#define LLC_XID_FI 0x81
36
37#define LLC_U_CMD(u) ((u) & 0xef)
38#define LLC_UI 0x03
39#define LLC_UA 0x63
40#define LLC_DISC 0x43
41#define LLC_DM 0x0f
42#define LLC_SABME 0x6f
43#define LLC_TEST 0xe3
44#define LLC_XID 0xaf
45#define LLC_FRMR 0x87
46
47#define LLC_S_CMD(is) (((is) >> 2) & 0x03)
48#define LLC_RR 0x0001
49#define LLC_RNR 0x0005
50#define LLC_REJ 0x0009
51
52#define LLC_IS_NR(is) (((is) >> 9) & 0x7f)
53#define LLC_I_NS(is) (((is) >> 1) & 0x7f)
54
55#ifndef LLCSAP_NULL
56#define LLCSAP_NULL 0x00
57#endif
58#ifndef LLCSAP_GLOBAL
59#define LLCSAP_GLOBAL 0xff
60#endif
61#ifndef LLCSAP_8021B_I
62#define LLCSAP_8021B_I 0x02
63#endif
64#ifndef LLCSAP_8021B_G
65#define LLCSAP_8021B_G 0x03
66#endif
67#ifndef LLCSAP_SNA
68#define LLCSAP_SNA 0x04
69#endif
70#ifndef LLCSAP_IP
71#define LLCSAP_IP 0x06
72#endif
73#ifndef LLCSAP_PROWAYNM
74#define LLCSAP_PROWAYNM 0x0e
75#endif
76#ifndef LLCSAP_8021D
77#define LLCSAP_8021D 0x42
78#endif
79#ifndef LLCSAP_RS511
80#define LLCSAP_RS511 0x4e
81#endif
82#ifndef LLCSAP_ISO8208
83#define LLCSAP_ISO8208 0x7e
84#endif
85#ifndef LLCSAP_PROWAY
86#define LLCSAP_PROWAY 0x8e
87#endif
88#ifndef LLCSAP_SNAP
89#define LLCSAP_SNAP 0xaa
90#endif
91#ifndef LLCSAP_IPX
92#define LLCSAP_IPX 0xe0
93#endif
94#ifndef LLCSAP_NETBEUI
95#define LLCSAP_NETBEUI 0xf0
96#endif
97#ifndef LLCSAP_ISONS
98#define LLCSAP_ISONS 0xfe
99#endif
100
101/*
102 * PIDs for use with OUI_CISCO.
103 */
104#define PID_CISCO_CDP 0x2000 /* Cisco Discovery Protocol */
105#define PID_CISCO_VTP 0x2003 /* Cisco VLAN Trunk Protocol */
106#define PID_CISCO_DTP 0x2004 /* Cisco Dynamic Trunk Protocol */
JP Abgrall53f17a92014-02-12 14:02:41 -0800107#define PID_CISCO_UDLD 0x0111 /* Unidirectional Link Detection */
108#define PID_CISCO_PVST 0x010b /* Per VLAN Spanning Tree+ and RPVST+ */
109#define PID_CISCO_VLANBRIDGE 0x010c /* "VLAN Bridge", according to Wireshark */
The Android Open Source Project2949f582009-03-03 19:30:46 -0800110
111/*
112 * PIDs for use with OUI_RFC2684.
113 */
114#define PID_RFC2684_ETH_FCS 0x0001 /* Ethernet, with FCS */
115#define PID_RFC2684_ETH_NOFCS 0x0007 /* Ethernet, without FCS */
116#define PID_RFC2684_802_4_FCS 0x0002 /* 802.4, with FCS */
117#define PID_RFC2684_802_4_NOFCS 0x0008 /* 802.4, without FCS */
118#define PID_RFC2684_802_5_FCS 0x0003 /* 802.5, with FCS */
119#define PID_RFC2684_802_5_NOFCS 0x0009 /* 802.5, without FCS */
120#define PID_RFC2684_FDDI_FCS 0x0004 /* FDDI, with FCS */
121#define PID_RFC2684_FDDI_NOFCS 0x000a /* FDDI, without FCS */
122#define PID_RFC2684_802_6_FCS 0x0005 /* 802.6, with FCS */
123#define PID_RFC2684_802_6_NOFCS 0x000b /* 802.6, without FCS */
124#define PID_RFC2684_BPDU 0x000e /* BPDUs */