/src/wireshark/epan/dissectors/packet-ipmi-bridge.c
Line | Count | Source |
1 | | /* packet-ipmi-bridge.c |
2 | | * Sub-dissectors for IPMI messages (netFn=Bridge) |
3 | | * Copyright 2007-2008, Alexey Neyman, Pigeon Point Systems <avn@pigeonpoint.com> |
4 | | * |
5 | | * Wireshark - Network traffic analyzer |
6 | | * By Gerald Combs <gerald@wireshark.org> |
7 | | * Copyright 1998 Gerald Combs |
8 | | * |
9 | | * SPDX-License-Identifier: GPL-2.0-or-later |
10 | | */ |
11 | | |
12 | | #include "config.h" |
13 | | |
14 | | #include <epan/packet.h> |
15 | | |
16 | | #include "packet-ipmi.h" |
17 | | |
18 | | void proto_register_ipmi_bridge(void); |
19 | | |
20 | | /* Bridge commands are not implemented (yet) */ |
21 | | |
22 | | |
23 | | static const ipmi_cmd_t cmd_bridge[] = { |
24 | | /* Bridge management commands (ICMB) */ |
25 | | { 0x00, IPMI_TBD, NULL, NULL, "[ICMB] Get Bridge State", 0 }, |
26 | | { 0x01, IPMI_TBD, NULL, NULL, "[ICMB] Set Bridge State", 0 }, |
27 | | { 0x02, IPMI_TBD, NULL, NULL, "[ICMB] Get ICMB Address", 0 }, |
28 | | { 0x03, IPMI_TBD, NULL, NULL, "[ICMB] Set ICMB Address", 0 }, |
29 | | { 0x04, IPMI_TBD, NULL, NULL, "[ICMB] Set Bridge Proxy Address", 0 }, |
30 | | { 0x05, IPMI_TBD, NULL, NULL, "[ICMB] Get Bridge Statistics", 0 }, |
31 | | { 0x06, IPMI_TBD, NULL, NULL, "[ICMB] Get ICMB Capabilities", 0 }, |
32 | | { 0x08, IPMI_TBD, NULL, NULL, "[ICMB] Clear Bridge Statistics", 0 }, |
33 | | { 0x09, IPMI_TBD, NULL, NULL, "[ICMB] Get Bridge Proxy Address", 0 }, |
34 | | { 0x0a, IPMI_TBD, NULL, NULL, "[ICMB] Get ICMB Connector Info", 0 }, |
35 | | { 0x0b, IPMI_TBD, NULL, NULL, "[ICMB] Get ICMB Connection ID", 0 }, |
36 | | { 0x0c, IPMI_TBD, NULL, NULL, "[ICMB] Send ICMB Connection ID", 0 }, |
37 | | |
38 | | /* Discovery Commands (ICMB) */ |
39 | | { 0x10, IPMI_TBD, NULL, NULL, "[ICMB] Prepare For Discovery", 0 }, |
40 | | { 0x11, IPMI_TBD, NULL, NULL, "[ICMB] Get Addresses", 0 }, |
41 | | { 0x12, IPMI_TBD, NULL, NULL, "[ICMB] Set Discovered", 0 }, |
42 | | { 0x13, IPMI_TBD, NULL, NULL, "[ICMB] Get Chassis Device ID", 0 }, |
43 | | { 0x14, IPMI_TBD, NULL, NULL, "[ICMB] Set Chassis Device ID", 0 }, |
44 | | |
45 | | /* Bridging Commands (ICMB) */ |
46 | | { 0x20, IPMI_TBD, NULL, NULL, "[ICMB] Bridge Request", 0 }, |
47 | | { 0x21, IPMI_TBD, NULL, NULL, "[ICMB] Bridge Message", 0 }, |
48 | | |
49 | | /* Event Commands (ICMB) */ |
50 | | { 0x30, IPMI_TBD, NULL, NULL, "[ICMB] Get Event Count", 0 }, |
51 | | { 0x31, IPMI_TBD, NULL, NULL, "[ICMB] Set Event Destination", 0 }, |
52 | | { 0x32, IPMI_TBD, NULL, NULL, "[ICMB] Set Event Reception State", 0 }, |
53 | | { 0x33, IPMI_TBD, NULL, NULL, "[ICMB] Send ICMB Event Message", 0 }, |
54 | | { 0x34, IPMI_TBD, NULL, NULL, "[ICMB] Get Event Destination", 0 }, |
55 | | { 0x35, IPMI_TBD, NULL, NULL, "[ICMB] Get Event Reception State", 0 }, |
56 | | |
57 | | /* OEM Commands for Bridge NetFn */ |
58 | | { 0xc0, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
59 | | { 0xc1, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
60 | | { 0xc2, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
61 | | { 0xc3, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
62 | | { 0xc4, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
63 | | { 0xc5, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
64 | | { 0xc6, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
65 | | { 0xc7, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
66 | | { 0xc8, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
67 | | { 0xc9, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
68 | | { 0xca, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
69 | | { 0xcb, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
70 | | { 0xcc, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
71 | | { 0xcd, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
72 | | { 0xce, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
73 | | { 0xcf, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
74 | | { 0xd0, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
75 | | { 0xd1, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
76 | | { 0xd2, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
77 | | { 0xd3, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
78 | | { 0xd4, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
79 | | { 0xd5, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
80 | | { 0xd6, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
81 | | { 0xd7, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
82 | | { 0xd8, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
83 | | { 0xd9, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
84 | | { 0xda, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
85 | | { 0xdb, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
86 | | { 0xdc, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
87 | | { 0xdd, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
88 | | { 0xde, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
89 | | { 0xdf, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
90 | | { 0xe0, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
91 | | { 0xe1, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
92 | | { 0xe2, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
93 | | { 0xe3, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
94 | | { 0xe4, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
95 | | { 0xe5, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
96 | | { 0xe6, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
97 | | { 0xe7, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
98 | | { 0xe8, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
99 | | { 0xe9, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
100 | | { 0xea, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
101 | | { 0xeb, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
102 | | { 0xec, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
103 | | { 0xed, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
104 | | { 0xee, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
105 | | { 0xef, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
106 | | { 0xf0, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
107 | | { 0xf1, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
108 | | { 0xf2, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
109 | | { 0xf3, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
110 | | { 0xf4, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
111 | | { 0xf5, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
112 | | { 0xf6, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
113 | | { 0xf7, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
114 | | { 0xf8, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
115 | | { 0xf9, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
116 | | { 0xfa, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
117 | | { 0xfb, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
118 | | { 0xfc, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
119 | | { 0xfd, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
120 | | { 0xfe, IPMI_TBD, NULL, NULL, "[ICMB] OEM Command", 0 }, |
121 | | |
122 | | /* Other Bridge Commands */ |
123 | | { 0xff, IPMI_TBD, NULL, NULL, "[ICMB] Error Report", 0 }, |
124 | | }; |
125 | | |
126 | | void |
127 | | proto_register_ipmi_bridge(void) |
128 | 14 | { |
129 | 14 | ipmi_register_netfn_cmdtab(IPMI_BRIDGE_REQ, IPMI_OEM_NONE, NULL, 0, NULL, |
130 | 14 | cmd_bridge, array_length(cmd_bridge)); |
131 | 14 | } |
132 | | |
133 | | /* |
134 | | * Editor modelines - https://www.wireshark.org/tools/modelines.html |
135 | | * |
136 | | * Local Variables: |
137 | | * c-basic-offset: 2 |
138 | | * tab-width: 8 |
139 | | * indent-tabs-mode: nil |
140 | | * End: |
141 | | * |
142 | | * ex: set shiftwidth=2 tabstop=8 expandtab: |
143 | | * :indentSize=2:tabSize=8:noTabs=true: |
144 | | */ |