Update manuf to current IEEE entries.
[obnox/wireshark/wip.git] / packet-fcdns.h
1 /* packet-fcdns.h
2  *
3  * Ethereal - Network traffic analyzer
4  * By Gerald Combs <gerald@ethereal.com>
5  * Copyright 1998 Gerald Combs
6  * 
7  * This program is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU General Public License
9  * as published by the Free Software Foundation; either version 2
10  * of the License, or (at your option) any later version.
11  * 
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  * GNU General Public License for more details.
16  * 
17  * You should have received a copy of the GNU General Public License
18  * along with this program; if not, write to the Free Software
19  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
20  */
21
22 #ifndef __PACKET_FCDNS_H_
23 #define __PACKET_FCDNS_H_
24
25 /* Opcode definitions */
26 #define FCDNS_GA_NXT   0x0100
27 #define FCDNS_GID_A    0x0101
28 #define FCDNS_GPN_ID   0x0112
29 #define FCDNS_GNN_ID   0x0113
30 #define FCDNS_GCS_ID   0x0114
31 #define FCDNS_GFT_ID   0x0117
32 #define FCDNS_GSPN_ID  0x0118
33 #define FCDNS_GPT_ID   0x011A
34 #define FCDNS_GIPP_ID  0x011B
35 #define FCDNS_GFPN_ID  0x011C
36 #define FCDNS_GHA_ID   0x011D
37 #define FCDNS_GFD_ID   0x011E
38 #define FCDNS_GFF_ID   0x011F
39 #define FCDNS_GID_PN   0x0121
40 #define FCDNS_GIPP_PN  0x012B
41 #define FCDNS_GID_NN   0x0131
42 #define FCDNS_GPN_NN   0x0132
43 #define FCDNS_GIP_NN   0x0135
44 #define FCDNS_GIPA_NN  0x0136
45 #define FCDNS_GSNN_NN  0x0139
46 #define FCDNS_GNN_IP   0x0153
47 #define FCDNS_GIPA_IP  0x0156
48 #define FCDNS_GID_FT   0x0171
49 #define FCDNS_GPN_FT   0x0172
50 #define FCDNS_GNN_FT   0x0173
51 #define FCDNS_GID_PT   0x01A1
52 #define FCDNS_GID_IPP  0x01B1
53 #define FCDNS_GPN_IPP  0x01B2
54 #define FCDNS_GID_FF   0x01F1
55 #define FCDNS_RPN_ID   0x0212
56 #define FCDNS_RNN_ID   0x0213
57 #define FCDNS_RCS_ID   0x0214
58 #define FCDNS_RFT_ID   0x0217
59 #define FCDNS_RSPN_ID  0x0218
60 #define FCDNS_RPT_ID   0x021A
61 #define FCDNS_RIPP_ID  0x021B
62 #define FCDNS_RHA_ID   0x021D
63 #define FCDNS_RFD_ID   0x021E
64 #define FCDNS_RFF_ID   0x021F
65 #define FCDNS_RIP_NN   0x0235
66 #define FCDNS_RSNN_NN  0x0239
67 #define FCDNS_DA_ID    0x0300
68 /* dNS messages defined by FC-SW2 */
69 #define FCDNS_RA       0x0
70 #define FCDNS_GE_ID    0x0410
71 #define FCDNS_GE_PN    0x0420
72 #define FCDNS_GE_NN    0x0430
73 #define FCDNS_GE_IP    0x0450
74 #define FCDNS_GE_FT    0x0470
75 #define FCDNS_GE_PT    0x04A0
76 #define FCDNS_GE_ZM    0x04B0
77 #define FCDNS_GE_ZN    0x04C0
78 #define FCDNS_GE_IPP   0x04D0
79 #define FCDNS_GE_FF    0x04E0
80
81 static const value_string fc_dns_opcode_val[] = {
82     {FCDNS_GA_NXT, "GA_NXT"  },
83     {FCDNS_GID_A,  "GID_A"   },
84     {FCDNS_GPN_ID, "GPN_ID"  },
85     {FCDNS_GNN_ID, "GNN_ID"  },
86     {FCDNS_GCS_ID, "GCS_ID"  },
87     {FCDNS_GFT_ID, "GFT_ID"  },
88     {FCDNS_GSPN_ID, "GSPN_ID" },
89     {FCDNS_GPT_ID, "GPT_ID"  },
90     {FCDNS_GIPP_ID, "GIPP_ID" },
91     {FCDNS_GFPN_ID, "GFPN_ID" },
92     {FCDNS_GHA_ID, "GHA_ID"  },
93     {FCDNS_GFD_ID, "GFD_ID"  },
94     {FCDNS_GFF_ID, "GFF_ID"  },
95     {FCDNS_GID_PN, "GID_PN"  },
96     {FCDNS_GIPP_PN, "GIPP_PN" },
97     {FCDNS_GID_NN, "GID_NN"  },
98     {FCDNS_GPN_NN, "GPN_NN"  },
99     {FCDNS_GIP_NN, "GIP_NN"  },
100     {FCDNS_GIPA_NN, "GIPA_NN" },
101     {FCDNS_GSNN_NN, "GSNN_NN" },
102     {FCDNS_GNN_IP, "GNN_IP"  },
103     {FCDNS_GIPA_IP, "GIPA_IP" },
104     {FCDNS_GID_FT, "GID_FT"  },
105     {FCDNS_GPN_FT, "GPN_FT"  },
106     {FCDNS_GNN_FT, "GNN_FT"  },
107     {FCDNS_GID_PT, "GID_PT"  },
108     {FCDNS_GID_IPP, "GID_IPP" },
109     {FCDNS_GPN_IPP, "GPN_IPP" },
110     {FCDNS_GID_FF, "GID_FF"  },
111     {FCDNS_RPN_ID, "RPN_ID"  },
112     {FCDNS_RNN_ID, "RNN_ID"  },
113     {FCDNS_RCS_ID, "RCS_ID"  },
114     {FCDNS_RFT_ID, "RFT_ID"  },
115     {FCDNS_RSPN_ID, "RSPN_ID" },
116     {FCDNS_RPT_ID, "RPT_ID"  },
117     {FCDNS_RIPP_ID, "RIPP_ID" },
118     {FCDNS_RHA_ID, "RHA_ID"  },
119     {FCDNS_RFD_ID, "RFD_ID"  },
120     {FCDNS_RFF_ID, "RFF_ID"  },
121     {FCDNS_RIP_NN, "RIP_NN"  },
122     {FCDNS_RSNN_NN, "RSNN_NN"},
123     {FCDNS_DA_ID, "DA_ID"},
124     {FCDNS_GE_ID, "GE_ID"},
125     {FCDNS_GE_PN, "GE_PN"},
126     {FCDNS_GE_NN, "GE_NN"},
127     {FCDNS_GE_IP, "GE_IP"},
128     {FCDNS_GE_FT, "GE_FT"},
129     {FCDNS_GE_PT, "GE_PT"},
130     {FCDNS_GE_ZM, "GE_ZM"},
131     {FCDNS_GE_ZN, "GE_ZN"},
132     {FCDNS_GE_IPP, "GE_IPP"},
133     {FCDNS_GE_FF, "GE_FF"},
134     {FCCT_MSG_ACC, "MSG_ACC"},
135     {FCCT_MSG_RJT, "MSG_RJT"},
136     {0, NULL},
137 };
138
139 /* Port type definitions */
140 #define FCDNS_PTYPE_UNDEF    0x00
141 #define FCDNS_PTYPE_NPORT    0x01
142 #define FCDNS_PTYPE_NLPORT   0x02
143 #define FCDNS_PTYPE_FNLPORT  0x03
144 #define FCDNS_PTYPE_NXPORT   0x7F
145 #define FCDNS_PTYPE_FPORT    0x81
146 #define FCDNS_PTYPE_FLPORT   0x82
147 #define FCDNS_PTYPE_EPORT    0x84
148 #define FCDNS_PTYPE_BPORT    0x85
149
150 static const value_string fc_dns_port_type_val [] = {
151     {FCDNS_PTYPE_UNDEF   , "Undefined Port Type"},
152     {FCDNS_PTYPE_NPORT   , "N_Port"},
153     {FCDNS_PTYPE_NLPORT  , "NL_Port"},
154     {FCDNS_PTYPE_FNLPORT , "F/NL_Port"},
155     {FCDNS_PTYPE_NXPORT  , "Nx_Port"},
156     {FCDNS_PTYPE_FPORT   , "F_Port"},
157     {FCDNS_PTYPE_FLPORT  , "FL_Port"},
158     {FCDNS_PTYPE_EPORT   , "E_Port"},
159     {FCDNS_PTYPE_BPORT   , "B_Port"},
160     {0, NULL},
161 };
162
163 /* Reject Detailed Reason code definitions for dNS */
164 #define FCDNS_RJT_NOREASON          0x00
165 #define FCDNS_RJT_PIDNOTREG         0x01
166 #define FCDNS_RJT_PNAMENOTREG       0x02
167 #define FCDNS_RJT_NNAMENOTREG       0x03
168 #define FCDNS_RJT_CLASSNOTREG       0x04
169 #define FCDNS_RJT_IPNNOTREG         0x05
170 #define FCDNS_RJT_IPANOTREG         0x06
171 #define FCDNS_RJT_FC4NOTREG         0x07
172 #define FCDNS_RJT_SPNAMENOTREG      0x08
173 #define FCDNS_RJT_SNNAMENOTREG      0x09 
174 #define FCDNS_RJT_PTYPENOTREG       0x0A
175 #define FCDNS_RJT_IPPNOTREG         0x0B
176 #define FCDNS_RJT_FPNAMENOTREG      0x0C
177 #define FCDNS_RJT_HRDADDNOTREG      0x0D
178 #define FCDNS_RJT_FC4DESNOTREG      0x0E 
179 #define FCDNS_RJT_FC4FEANOTREG      0x0F
180 #define FCDNS_RJT_ACCRJT            0x10
181 #define FCDNS_RJT_PTYPEFMT          0x11
182 #define FCDNS_RJT_DBEMPTY           0x12
183 #define FCDNS_RJT_NOOBJSCOPE        0x13
184 #define FCDNS_RJT_AUTHRZN_EXCEPTION 0xF0
185 #define FCDNS_RJT_AUTH_EXCEPTION    0xF1
186 #define FCDNS_RJT_DB_FULL           0xF2
187 #define FCDNS_RJT_DB_EMPTY          0xF3
188
189 static const value_string fc_dns_rjt_det_code_val [] = {
190     {FCDNS_RJT_NOREASON    , "No Additional Info"},
191     {FCDNS_RJT_PIDNOTREG   , "PortID Not Regd."},
192     {FCDNS_RJT_PNAMENOTREG , "PortName Not Regd."},
193     {FCDNS_RJT_NNAMENOTREG , "NodeName Not Regd."},
194     {FCDNS_RJT_CLASSNOTREG , "Class Not Regd."},
195     {FCDNS_RJT_IPNNOTREG   , "IP Addr (Node) Not Regd."},
196     {FCDNS_RJT_IPANOTREG   , "IPA Not Regd."},
197     {FCDNS_RJT_FC4NOTREG   , "FC4 TYPEs Not Regd."},
198     {FCDNS_RJT_SPNAMENOTREG, "Symbolic PortName Not Regd."},
199     {FCDNS_RJT_SNNAMENOTREG, "Symbolic NodeName Not Regd."},
200     {FCDNS_RJT_PTYPENOTREG , "PortType Not Regd."},
201     {FCDNS_RJT_IPPNOTREG   , "IP Addr (Port) Not Regd."},
202     {FCDNS_RJT_FPNAMENOTREG, "Fabric Port Name Not Regd."},
203     {FCDNS_RJT_HRDADDNOTREG, "Hard Addr Not Regd."},
204     {FCDNS_RJT_FC4DESNOTREG, "FC4 Descriptors Not Regd."},
205     {FCDNS_RJT_FC4FEANOTREG, "FC4 Features Not Regd."},
206     {FCDNS_RJT_ACCRJT      , "Access Denied"},
207     {FCDNS_RJT_PTYPEFMT    , "Unacceptable PortId"},
208     {FCDNS_RJT_DBEMPTY     , "Database Empty"},
209     {FCDNS_RJT_NOOBJSCOPE  , "No Objects Regd. in Scope"},
210     {FCDNS_RJT_AUTHRZN_EXCEPTION, "Authorization Exception"},
211     {FCDNS_RJT_AUTH_EXCEPTION, "Authentication Exception"},
212     {FCDNS_RJT_DB_FULL, "Database Full"},
213     {FCDNS_RJT_DB_EMPTY, "Database Empty"},
214     {0, NULL},
215 };
216
217 /* Actual servers serving the directory service type identified by subtype */ 
218 #define FCDNS_GSSUBTYPE_DNS  0x02
219 #define FCDNS_GSSUBTYPE_IP   0x03
220
221 static const value_string fc_dns_subtype_val[] = {
222     {FCDNS_GSSUBTYPE_DNS, "dNS"},
223     {FCDNS_GSSUBTYPE_IP,  "IP"},
224     {0, NULL},
225 };
226
227 #endif