diff options
Diffstat (limited to 'epan/dissectors/packet-fcfcs.h')
-rw-r--r-- | epan/dissectors/packet-fcfcs.h | 242 |
1 files changed, 242 insertions, 0 deletions
diff --git a/epan/dissectors/packet-fcfcs.h b/epan/dissectors/packet-fcfcs.h new file mode 100644 index 00000000..e0b340af --- /dev/null +++ b/epan/dissectors/packet-fcfcs.h @@ -0,0 +1,242 @@ +/* packet-fcfcs.h + * + * Wireshark - Network traffic analyzer + * By Gerald Combs <gerald@wireshark.org> + * Copyright 1998 Gerald Combs + * + * SPDX-License-Identifier: GPL-2.0-or-later + */ + +#ifndef __PACKET_FCFCS_H_ +#define __PACKET_FCFCS_H_ + +#define FCFCS_GTIN 0x100 +#define FCFCS_GIEL 0x101 +#define FCFCS_GIET 0x111 +#define FCFCS_GDID 0x112 +#define FCFCS_GMID 0x113 +#define FCFCS_GFN 0x114 +#define FCFCS_GIELN 0x115 +#define FCFCS_GMAL 0x116 +#define FCFCS_GIEIL 0x117 +#define FCFCS_GPL 0x118 +#define FCFCS_GPT 0x121 +#define FCFCS_GPPN 0x122 +#define FCFCS_GAPNL 0x124 +#define FCFCS_GPS 0x126 +#define FCFCS_GATIN 0x128 +#define FCFCS_GPLNL 0x191 +#define FCFCS_GPLT 0x192 +#define FCFCS_GPLML 0x193 +#define FCFCS_GNPL 0x1A1 +#define FCFCS_GPNL 0x1A2 +#define FCFCS_GNID 0x1B1 +#define FCFCS_RIELN 0x215 +#define FCFCS_RPL 0x280 +#define FCFCS_RPLN 0x291 +#define FCFCS_RPLT 0x292 +#define FCFCS_RPLM 0x293 +#define FCFCS_DPL 0x380 +#define FCFCS_DPLN 0x391 +#define FCFCS_DPLML 0x393 +#define FCFCS_GCAP 0xe020 + +/* Used in protocol detail window */ +static const value_string fc_fcs_opcode_val[] = { + {FCCT_MSG_ACC, "MSG_ACC"}, + {FCCT_MSG_RJT, "MSG_RJT"}, + {FCFCS_GTIN, "Get Topology Info"}, + {FCFCS_GIEL, "Get Interconnect Element List"}, + {FCFCS_GIET, "Get Interconnect Element Type"}, + {FCFCS_GDID, "Get Interconnect Element Domain ID"}, + {FCFCS_GMID, "Get Interconnect Element Mgmt ID"}, + {FCFCS_GFN, "Get Interconnect Element Fabric Name"}, + {FCFCS_GIELN, "Get Interconnect Element Logical Name"}, + {FCFCS_GMAL, "Get Interconnect Element Mgmt Addr List"}, + {FCFCS_GIEIL, "Get Interconnect Element Info List"}, + {FCFCS_GPL, "Get Port List"}, + {FCFCS_GPT, "Get Port Type"}, + {FCFCS_GPPN, "Get Physical Port Number"}, + {FCFCS_GAPNL, "Get Physical Port Name List"}, + {FCFCS_GPS, "Get Port State"}, + {FCFCS_GATIN, "Get Attached Topology Info"}, + {FCFCS_GPLNL, "Get Platform Node Name List"}, + {FCFCS_GPLT, "Get Platform Type"}, + {FCFCS_GPLML, "Get Platform Mgmt Addr List"}, + {FCFCS_GNPL, "Get Platform Node Name List"}, + {FCFCS_GPNL, "Get Platform Name List"}, + {FCFCS_GNID, "Get Node Identification Data"}, + {FCFCS_RIELN, "Register Interconnect Element Logical Name"}, + {FCFCS_RPL, "Register Platform"}, + {FCFCS_RPLN, "Register Platform Node Name"}, + {FCFCS_RPLT, "Register Platform Type"}, + {FCFCS_RPLM, "Register Platform Mgmt. Address"}, + {FCFCS_DPL, "Deregister Platform"}, + {FCFCS_DPLN, "Deregister Platform Node Name"}, + {FCFCS_DPLML, "Deregister Platform Mgmt. Address List"}, + {FCFCS_GCAP, "Get Capabilities"}, + {0, NULL}, +}; + +/* Used in protocol summary window */ +static const value_string fc_fcs_opcode_abbrev_val[] = { + {FCCT_MSG_ACC, "MSG_ACC"}, + {FCCT_MSG_RJT, "MSG_RJT"}, + {FCFCS_GTIN, "GTIN"}, + {FCFCS_GIEL, "GIEL"}, + {FCFCS_GIET, "GIET"}, + {FCFCS_GDID, "GDID"}, + {FCFCS_GMID, "GMID"}, + {FCFCS_GFN, "GFN"}, + {FCFCS_GIELN, "GIELN"}, + {FCFCS_GMAL, "GMAL"}, + {FCFCS_GIEIL, "GIEIL"}, + {FCFCS_GPL, "GPL"}, + {FCFCS_GPT, "GPT"}, + {FCFCS_GPPN, "GPPN"}, + {FCFCS_GAPNL, "GAPNL"}, + {FCFCS_GPS, "GPS"}, + {FCFCS_GATIN, "GATIN"}, + {FCFCS_GPLNL, "GPLNL"}, + {FCFCS_GPLT, "GPLT"}, + {FCFCS_GPLML, "GPLML"}, + {FCFCS_GNPL, "GNPL"}, + {FCFCS_GPNL, "GPNL"}, + {FCFCS_GNID, "GNID"}, + {FCFCS_RIELN, "RIELN"}, + {FCFCS_RPL, "RPL"}, + {FCFCS_RPLN, "RPLN"}, + {FCFCS_RPLT, "RPLT"}, + {FCFCS_RPLM, "RPLM"}, + {FCFCS_DPL, "DPL"}, + {FCFCS_DPLN, "DPLN"}, + {FCFCS_DPLML, "DPLML"}, + {FCFCS_GCAP, "GCAP"}, + {0, NULL}, +}; + +static const value_string fc_fcs_ietype_val[] = { + {0, "Unknown"}, + {1, "Switch"}, + {2, "Hub"}, + {3, "Bridge"}, + {0, NULL}, +}; + +/* Port type definitions, same as in dNS (fcdns.h) */ +#define FCFCS_PTYPE_UNDEF 0x00 +#define FCFCS_PTYPE_NPORT 0x01 +#define FCFCS_PTYPE_NLPORT 0x02 +#define FCFCS_PTYPE_FNLPORT 0x03 +#define FCFCS_PTYPE_NXPORT 0x7F +#define FCFCS_PTYPE_FPORT 0x81 +#define FCFCS_PTYPE_FLPORT 0x82 +#define FCFCS_PTYPE_EPORT 0x84 +#define FCFCS_PTYPE_BPORT 0x85 + +static const value_string fc_fcs_port_type_val[] = { + {FCFCS_PTYPE_UNDEF , "Undefined Port Type"}, + {FCFCS_PTYPE_NPORT , "N_Port"}, + {FCFCS_PTYPE_NLPORT , "NL_Port"}, + {FCFCS_PTYPE_FNLPORT , "F/NL_Port"}, + {FCFCS_PTYPE_NXPORT , "Nx_Port"}, + {FCFCS_PTYPE_FPORT , "F_Port"}, + {FCFCS_PTYPE_FLPORT , "FL_Port"}, + {FCFCS_PTYPE_EPORT , "E_Port"}, + {FCFCS_PTYPE_BPORT , "B_Port"}, + {0, NULL}, +}; + +static const value_string fc_fcs_port_txtype_val[] = { + {1, "Unknown"}, + {2, "Long Wave Laser"}, + {3, "Short Wave Laser"}, + {4, "Long Wave Laser Cost Reduced"}, + {5, "Electrical"}, + {0, NULL}, +}; + +static const value_string fc_fcs_port_modtype_val[] = { + {1, "Unknown"}, + {2, "Other"}, + {3, "GBIC"}, + {4, "Embedded"}, + {5, "GLM"}, + {6, "GBIC with Serial ID"}, + {7, "GBIC without Serial ID"}, + {8, "SFP with Serial ID"}, + {9, "SFP without Serial ID"}, + {0, NULL}, +}; + +static const value_string fc_fcs_port_state_val[] = { + {0, "Unknown"}, + {1, "Online"}, + {2, "Offline"}, + {3, "Testing"}, + {4, "Fault"}, + {0, NULL}, +}; + +static const value_string fc_fcs_plat_type_val[] = { + {1, "Unknown"}, + {2, "Other"}, + {5, "Gateway"}, + {6, "Converter"}, + {7, "HBA"}, + {8, "Software Proxy Agent"}, + {9, "Storage Device"}, + {10, "Host Computer"}, + {11, "Storage Subsystem"}, + {12, "Module"}, + {13, "Software Driver"}, + {14, "Storage Access Device"}, + {0, NULL}, +}; + +static const value_string fc_fcs_rjt_code_val[] = { + {0x00, "No Additional Explanation"}, + {0x01, "Invalid Name_Identifier for Interconnect Element or Port"}, + {0x10, "Interconnect Element List Not Available"}, + {0x11, "Interconnect Element Type Not Available"}, + {0x12, "Domain ID Not Available"}, + {0x13, "Mgmt. ID Not Available"}, + {0x14, "Fabric Name Not Available"}, + {0x15, "Interconnect Element Logical Name Not Available"}, + {0x16, "Mgmt. Address Not Available"}, + {0x17, "Interconnect Element Information List Not Available"}, + {0x30, "Port List Not Available"}, + {0x31, "Port Type Not Available"}, + {0x32, "Physical Port Number Not Available"}, + {0x34, "Attached Port Name List Not Available"}, + {0x36, "Port State Not Available"}, + {0x50, "Unable to Register Interconnect Element Logical Name"}, + {0x60, "Platform Name Does Not Exist"}, + {0x61, "Platform Name Already Exists"}, + {0x62, "Platform Node Name Does Not Exist"}, + {0x63, "Platform Node Name Already Exists"}, + {0, NULL}, +}; + +static const true_false_string fc_fcs_portflags_tfs = { + "RTIN ELS Supported", + "RTIN ELS Not Supported", +}; + +static const value_string fc_fcs_fcsmask_val[] = { + {1, "Basic Configuration Service"}, + {2, "Platform Configuration Service"}, + {3, "Basic+Platform Configuration Service"}, + {4, "Topology Discovery Configuration Service"}, + {5, "Basic+Topology Discovery Configuration Service"}, + {6, "Platform+Topology Discovery Configuration Service"}, + {7, "Basic+Platform+Topology Discovery Configuration Service"}, + {0, NULL}, +}; + +static const value_string fc_fcs_unsmask_val[] = { + {1, "Basic Unzoned Name Service"}, + {0, NULL}, +}; + +#endif |