summaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-fcfcs.h
diff options
context:
space:
mode:
Diffstat (limited to 'epan/dissectors/packet-fcfcs.h')
-rw-r--r--epan/dissectors/packet-fcfcs.h242
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