llc.h 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. /*
  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. */
  21. /*
  22. * Definitions for information in the LLC header.
  23. */
  24. #define LLC_U_FMT 3
  25. #define LLC_GSAP 1
  26. #define LLC_IG 1 /* Individual / Group */
  27. #define LLC_S_FMT 1
  28. #define LLC_U_POLL 0x10
  29. #define LLC_IS_POLL 0x0100
  30. #define LLC_XID_FI 0x81
  31. #define LLC_U_CMD(u) ((u) & 0xef)
  32. #define LLC_UI 0x03
  33. #define LLC_UA 0x63
  34. #define LLC_DISC 0x43
  35. #define LLC_DM 0x0f
  36. #define LLC_SABME 0x6f
  37. #define LLC_TEST 0xe3
  38. #define LLC_XID 0xaf
  39. #define LLC_FRMR 0x87
  40. #define LLC_S_CMD(is) (((is) >> 2) & 0x03)
  41. #define LLC_RR 0x0001
  42. #define LLC_RNR 0x0005
  43. #define LLC_REJ 0x0009
  44. #define LLC_IS_NR(is) (((is) >> 9) & 0x7f)
  45. #define LLC_I_NS(is) (((is) >> 1) & 0x7f)
  46. #ifndef LLCSAP_NULL
  47. #define LLCSAP_NULL 0x00
  48. #endif
  49. #ifndef LLCSAP_GLOBAL
  50. #define LLCSAP_GLOBAL 0xff
  51. #endif
  52. #ifndef LLCSAP_8021B_I
  53. #define LLCSAP_8021B_I 0x02
  54. #endif
  55. #ifndef LLCSAP_8021B_G
  56. #define LLCSAP_8021B_G 0x03
  57. #endif
  58. #ifndef LLCSAP_SNA
  59. #define LLCSAP_SNA 0x04
  60. #endif
  61. #ifndef LLCSAP_IP
  62. #define LLCSAP_IP 0x06
  63. #endif
  64. #ifndef LLCSAP_PROWAYNM
  65. #define LLCSAP_PROWAYNM 0x0e
  66. #endif
  67. #ifndef LLCSAP_8021D
  68. #define LLCSAP_8021D 0x42
  69. #endif
  70. #ifndef LLCSAP_RS511
  71. #define LLCSAP_RS511 0x4e
  72. #endif
  73. #ifndef LLCSAP_ISO8208
  74. #define LLCSAP_ISO8208 0x7e
  75. #endif
  76. #ifndef LLCSAP_PROWAY
  77. #define LLCSAP_PROWAY 0x8e
  78. #endif
  79. #ifndef LLCSAP_SNAP
  80. #define LLCSAP_SNAP 0xaa
  81. #endif
  82. #ifndef LLCSAP_IPX
  83. #define LLCSAP_IPX 0xe0
  84. #endif
  85. #ifndef LLCSAP_NETBEUI
  86. #define LLCSAP_NETBEUI 0xf0
  87. #endif
  88. #ifndef LLCSAP_ISONS
  89. #define LLCSAP_ISONS 0xfe
  90. #endif
  91. /*
  92. * PIDs for use with OUI_CISCO.
  93. */
  94. #define PID_CISCO_CDP 0x2000 /* Cisco Discovery Protocol */
  95. #define PID_CISCO_VTP 0x2003 /* Cisco VLAN Trunk Protocol */
  96. #define PID_CISCO_DTP 0x2004 /* Cisco Dynamic Trunk Protocol */
  97. #define PID_CISCO_UDLD 0x0111 /* Unidirectional Link Detection */
  98. #define PID_CISCO_PVST 0x010b /* Per VLAN Spanning Tree+ and RPVST+ */
  99. #define PID_CISCO_VLANBRIDGE 0x010c /* "VLAN Bridge", according to Wireshark */
  100. /*
  101. * PIDs for use with OUI_RFC2684.
  102. */
  103. #define PID_RFC2684_ETH_FCS 0x0001 /* Ethernet, with FCS */
  104. #define PID_RFC2684_ETH_NOFCS 0x0007 /* Ethernet, without FCS */
  105. #define PID_RFC2684_802_4_FCS 0x0002 /* 802.4, with FCS */
  106. #define PID_RFC2684_802_4_NOFCS 0x0008 /* 802.4, without FCS */
  107. #define PID_RFC2684_802_5_FCS 0x0003 /* 802.5, with FCS */
  108. #define PID_RFC2684_802_5_NOFCS 0x0009 /* 802.5, without FCS */
  109. #define PID_RFC2684_FDDI_FCS 0x0004 /* FDDI, with FCS */
  110. #define PID_RFC2684_FDDI_NOFCS 0x000a /* FDDI, without FCS */
  111. #define PID_RFC2684_802_6_FCS 0x0005 /* 802.6, with FCS */
  112. #define PID_RFC2684_802_6_NOFCS 0x000b /* 802.6, without FCS */
  113. #define PID_RFC2684_BPDU 0x000e /* BPDUs */