if_fddi.h
001:
002:
003:
004:
005:
006:
007:
008:
009:
010: <stefani@lkg.dec.com>
011:
012:
013: <waltje@uWalt.NL.Mugnet.ORG>
014: <becker@super.org>
015: <alan@lxorguk.ukuu.org.uk>
016: <gw7rrm@eeshack3.swan.ac.uk>
017: <stud11@cc4.kuleuven.ac.be>
018:
019:
020:
021:
022:
023:
024: #ifndef _LINUX_IF_FDDI_H
025: #define _LINUX_IF_FDDI_H
026:
027: #include <linux/types.h>
028:
029:
030:
031:
032:
033: #define FDDI_K_ALEN 6
034: #define FDDI_K_8022_HLEN 16
035: #define FDDI_K_SNAP_HLEN 21
036: #define FDDI_K_8022_ZLEN 16
037: #define FDDI_K_SNAP_ZLEN 21
038: #define FDDI_K_8022_DLEN 4475
039: #define FDDI_K_SNAP_DLEN 4470
040: #define FDDI_K_LLC_ZLEN 13
041: #define FDDI_K_LLC_LEN 4491
042:
043:
044: #define FDDI_FC_K_VOID 0x00
045: #define FDDI_FC_K_NON_RESTRICTED_TOKEN 0x80
046: #define FDDI_FC_K_RESTRICTED_TOKEN 0xC0
047: #define FDDI_FC_K_SMT_MIN 0x41
048: #define FDDI_FC_K_SMT_MAX 0x4F
049: #define FDDI_FC_K_MAC_MIN 0xC1
050: #define FDDI_FC_K_MAC_MAX 0xCF
051: #define FDDI_FC_K_ASYNC_LLC_MIN 0x50
052: #define FDDI_FC_K_ASYNC_LLC_DEF 0x54
053: #define FDDI_FC_K_ASYNC_LLC_MAX 0x5F
054: #define FDDI_FC_K_SYNC_LLC_MIN 0xD0
055: #define FDDI_FC_K_SYNC_LLC_MAX 0xD7
056: #define FDDI_FC_K_IMPLEMENTOR_MIN 0x60
057: #define FDDI_FC_K_IMPLEMENTOR_MAX 0x6F
058: #define FDDI_FC_K_RESERVED_MIN 0x70
059: #define FDDI_FC_K_RESERVED_MAX 0x7F
060:
061:
062: #define FDDI_EXTENDED_SAP 0xAA
063: #define FDDI_UI_CMD 0x03
064:
065:
066: struct fddi_8022_1_hdr {
067: __u8 dsap;
068: __u8 ssap;
069: __u8 ctrl;
070: } __attribute__((packed));
071:
072:
073: struct fddi_8022_2_hdr {
074: __u8 dsap;
075: __u8 ssap;
076: __u8 ctrl_1;
077: __u8 ctrl_2;
078: } __attribute__((packed));
079:
080:
081: #define FDDI_K_OUI_LEN 3
082: struct fddi_snap_hdr {
083: __u8 dsap;
084: __u8 ssap;
085: __u8 ctrl;
086: __u8 oui[FDDI_K_OUI_LEN];
087: __be16 ethertype;
088: } __attribute__((packed));
089:
090:
091: struct fddihdr {
092: __u8 fc;
093: __u8 daddr[FDDI_K_ALEN];
094: __u8 saddr[FDDI_K_ALEN];
095: union
096: {
097: struct fddi_8022_1_hdr llc_8022_1;
098: struct fddi_8022_2_hdr llc_8022_2;
099: struct fddi_snap_hdr llc_snap;
100: } hdr;
101: } __attribute__((packed));
102:
103:
104: #endif
105:
© Andrew Scott 2006 -
2025,
All Rights Reserved