Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | /****************************************************************************** |
| 2 | * |
| 3 | * (C)Copyright 1998,1999 SysKonnect, |
| 4 | * a business unit of Schneider & Koch & Co. Datensysteme GmbH. |
| 5 | * |
| 6 | * This program is free software; you can redistribute it and/or modify |
| 7 | * it under the terms of the GNU General Public License as published by |
| 8 | * the Free Software Foundation; either version 2 of the License, or |
| 9 | * (at your option) any later version. |
| 10 | * |
| 11 | * The information in this file is provided "AS IS" without warranty. |
| 12 | * |
| 13 | ******************************************************************************/ |
| 14 | |
| 15 | #ifndef _FDDI_ |
| 16 | #define _FDDI_ |
| 17 | |
| 18 | struct fddi_addr { |
| 19 | u_char a[6] ; |
| 20 | } ; |
| 21 | |
| 22 | #define GROUP_ADDR 0x80 /* MSB in a[0] */ |
| 23 | |
| 24 | struct fddi_mac { |
| 25 | struct fddi_addr mac_dest ; |
| 26 | struct fddi_addr mac_source ; |
| 27 | u_char mac_info[4478] ; |
| 28 | } ; |
| 29 | |
| 30 | #define FDDI_MAC_SIZE (12) |
| 31 | #define FDDI_RAW_MTU (4500-5) /* exl. Pr,SD, ED/FS */ |
| 32 | #define FDDI_RAW (4500) |
| 33 | |
| 34 | /* |
| 35 | * FC values |
| 36 | */ |
| 37 | #define FC_VOID 0x40 /* void frame */ |
| 38 | #define FC_TOKEN 0x80 /* token */ |
| 39 | #define FC_RES_TOKEN 0xc0 /* restricted token */ |
| 40 | #define FC_SMT_INFO 0x41 /* SMT Info frame */ |
| 41 | /* |
| 42 | * FC_SMT_LAN_LOC && FC_SMT_LOC are SK specific ! |
| 43 | */ |
| 44 | #define FC_SMT_LAN_LOC 0x42 /* local SMT Info frame */ |
| 45 | #define FC_SMT_LOC 0x43 /* local SMT Info frame */ |
| 46 | #define FC_SMT_NSA 0x4f /* SMT NSA frame */ |
| 47 | #define FC_MAC 0xc0 /* MAC frame */ |
| 48 | #define FC_BEACON 0xc2 /* MAC beacon frame */ |
| 49 | #define FC_CLAIM 0xc3 /* MAC claim frame */ |
| 50 | #define FC_SYNC_LLC 0xd0 /* sync. LLC frame */ |
| 51 | #define FC_ASYNC_LLC 0x50 /* async. LLC frame */ |
| 52 | #define FC_SYNC_BIT 0x80 /* sync. bit in FC */ |
| 53 | |
| 54 | #define FC_LLC_PRIOR 0x07 /* priority bits */ |
| 55 | |
| 56 | #define BEACON_INFO 0 /* beacon type */ |
| 57 | #define DBEACON_INFO 1 /* beacon type DIRECTED */ |
| 58 | |
| 59 | |
| 60 | /* |
| 61 | * indicator bits |
| 62 | */ |
| 63 | #define C_INDICATOR (1<<0) |
| 64 | #define A_INDICATOR (1<<1) |
| 65 | #define E_INDICATOR (1<<2) |
| 66 | #define I_INDICATOR (1<<6) /* SK specific */ |
| 67 | #define L_INDICATOR (1<<7) /* SK specific */ |
| 68 | |
| 69 | #endif /* _FDDI_ */ |