2 IPMI 2.0 definitions from the IPMI Specification Version 2.0, Revision 1.1.
4 This file contains all NetFn Transport commands, including:
5 IPM LAN Commands (Chapter 23)
6 IPMI Serial/Modem Commands (Chapter 25)
7 SOL Commands (Chapter 26)
8 Command Forwarding Commands (Chapter 35b)
10 See IPMI specification, Appendix G, Command Assignments
11 and Appendix H, Sub-function Assignments.
13 Copyright (c) 1999 - 2015, Intel Corporation. All rights reserved.<BR>
14 This program and the accompanying materials
15 are licensed and made available under the terms and conditions of the BSD License
16 which accompanies this distribution. The full text of the license may be found at
17 http://opensource.org/licenses/bsd-license.php
19 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
20 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
23 #ifndef _IPMI_NET_FN_TRANSPORT_H_
24 #define _IPMI_NET_FN_TRANSPORT_H_
28 // Net function definition for Transport command
30 #define IPMI_NETFN_TRANSPORT 0x0C
33 // Below is Definitions for IPM LAN Commands (Chapter 23)
37 // Definitions for Set Lan Configuration Parameters command
39 #define IPMI_TRANSPORT_SET_LAN_CONFIG_PARAMETERS 0x01
42 // Constants and Structure definitions for "Set Lan Configuration Parameters" command to follow here
46 // LAN Management Structure
53 IpmiLanIpAddressSource
,
56 IpmiLanIpv4HeaderParam
,
57 IpmiLanPrimaryRcmpPort
,
58 IpmiLanSecondaryRcmpPort
,
59 IpmiLanBmcGeneratedArpCtrl
,
61 IpmiLanDefaultGateway
,
62 IpmiLanDefaultGatewayMac
,
64 IpmiLanBackupGatewayMac
,
65 IpmiLanCommunityString
,
67 IpmiLanDestinationType
,
68 IpmiLanDestinationAddress
69 } IPMI_LAN_OPTION_TYPE
;
77 IpmiDynamicAddressBmcDhcp
,
78 IpmiDynamicAddressBiosDhcp
,
79 IpmiDynamicAddressBmcNonDhcp
80 } IPMI_IP_ADDRESS_SRC
;
86 IpmiPetTrapDestination
,
87 IpmiDirectedEventDestination
,
95 } IPMI_LAN_DEST_TYPE_DEST_TYPE
;
102 UINT8 StraightPswd
: 1;
105 } IPMI_LAN_AUTH_TYPE
;
109 } IPMI_LAN_IP_ADDRESS
;
112 UINT8 AddressSrc
: 4;
114 } IPMI_LAN_IP_ADDRESS_SRC
;
118 } IPMI_LAN_MAC_ADDRESS
;
122 } IPMI_LAN_SUBNET_MASK
;
128 UINT8 Precedence
: 3;
130 UINT8 ServiceType
: 4;
131 } IPMI_LAN_IPV4_HDR_PARAM
;
136 } IPMI_LAN_RCMP_PORT
;
139 UINT8 EnableBmcArpResponse
: 1;
140 UINT8 EnableBmcGratuitousArp
: 1;
142 } IPMI_LAN_BMC_GENERATED_ARP_CONTROL
;
146 } IPMI_LAN_ARP_INTERVAL
;
150 } IPMI_LAN_COMMUNITY_STRING
;
153 UINT8 DestinationSelector
: 4;
155 UINT8 DestinationType
: 3;
157 UINT8 AlertAcknowledged
: 1;
158 } IPMI_LAN_DEST_TYPE
;
161 UINT8 DestinationSelector
: 4;
163 UINT8 AlertingIpAddressSelector
: 4;
164 UINT8 AddressFormat
: 4;
165 UINT8 UseDefaultGateway
: 1;
167 IPMI_LAN_IP_ADDRESS AlertingIpAddress
;
168 IPMI_LAN_MAC_ADDRESS AlertingMacAddress
;
169 } IPMI_LAN_DEST_ADDRESS
;
172 IPMI_LAN_AUTH_TYPE IpmiLanAuthType
;
173 IPMI_LAN_IP_ADDRESS IpmiLanIpAddress
;
174 IPMI_LAN_IP_ADDRESS_SRC IpmiLanIpAddressSrc
;
175 IPMI_LAN_MAC_ADDRESS IpmiLanMacAddress
;
176 IPMI_LAN_SUBNET_MASK IpmiLanSubnetMask
;
177 IPMI_LAN_IPV4_HDR_PARAM IpmiLanIpv4HdrParam
;
178 IPMI_LAN_RCMP_PORT IpmiLanPrimaryRcmpPort
;
179 IPMI_LAN_BMC_GENERATED_ARP_CONTROL IpmiLanArpControl
;
180 IPMI_LAN_ARP_INTERVAL IpmiLanArpInterval
;
181 IPMI_LAN_COMMUNITY_STRING IpmiLanCommunityString
;
182 IPMI_LAN_DEST_TYPE IpmiLanDestType
;
183 IPMI_LAN_DEST_ADDRESS IpmiLanDestAddress
;
187 // Definitions for Get Lan Configuration Parameters command
189 #define IPMI_TRANSPORT_GET_LAN_CONFIG_PARAMETERS 0x02
192 // Constants and Structure definitions for "Get Lan Configuration Parameters" command to follow here
196 // Definitions for Suspend BMC ARPs command
198 #define IPMI_TRANSPORT_SUSPEND_BMC_ARPS 0x03
201 // Constants and Structure definitions for "Suspend BMC ARPs" command to follow here
205 // Definitions for Get IP-UDP-RMCP Statistics command
207 #define IPMI_TRANSPORT_GET_PACKET_STATISTICS 0x04
210 // Constants and Structure definitions for "Get IP-UDP-RMCP Statistics" command to follow here
214 // Below is Definitions for IPMI Serial/Modem Commands (Chapter 25)
218 // Definitions for Set Serial/Modem Configuration command
220 #define IPMI_TRANSPORT_SET_SERIAL_CONFIGURATION 0x10
223 // Constants and Structure definitions for "Set Serial/Modem Configuration" command to follow here
230 UINT8 NoAuthentication
: 1;
231 UINT8 MD2Authentication
: 1;
232 UINT8 MD5Authentication
: 1;
234 UINT8 StraightPassword
: 1;
235 UINT8 OemProprietary
: 1;
237 } IPMI_EMP_AUTH_TYPE
;
240 UINT8 EnableBasicMode
: 1;
241 UINT8 EnablePPPMode
: 1;
242 UINT8 EnableTerminalMode
: 1;
244 UINT8 SnoopOsPPPNegotiation
: 1;
246 UINT8 DirectConnect
: 1;
247 } IPMI_EMP_CONNECTION_TYPE
;
250 UINT8 InactivityTimeout
: 4;
252 } IPMI_EMP_INACTIVITY_TIMEOUT
;
255 UINT8 IpmiCallback
: 1;
256 UINT8 CBCPCallback
: 1;
258 UINT8 CbcpEnableNoCallback
: 1;
259 UINT8 CbcpEnablePreSpecifiedNumber
: 1;
260 UINT8 CbcpEnableUserSpecifiedNumber
: 1;
261 UINT8 CbcpEnableCallbackFromList
: 1;
263 UINT8 CallbackDestination1
;
264 UINT8 CallbackDestination2
;
265 UINT8 CallbackDestination3
;
266 } IPMI_EMP_CHANNEL_CALLBACK_CONTROL
;
269 UINT8 CloseSessionOnDCDLoss
: 1;
270 UINT8 EnableSessionInactivityTimeout
: 1;
272 } IPMI_EMP_SESSION_TERMINATION
;
276 UINT8 EnableDtrHangup
: 1;
277 UINT8 FlowControl
: 2;
280 UINT8 SaveSetting
: 1;
281 UINT8 SetComPort
: 1;
283 } IPMI_EMP_MESSAGING_COM_SETTING
;
286 UINT8 RingDurationInterval
: 6;
288 UINT8 RingDeadTime
: 4;
290 } IPMI_EMP_MODEM_RING_TIME
;
294 UINT8 InitString
[48];
295 } IPMI_EMP_MODEM_INIT_STRING
;
298 UINT8 EscapeSequence
[5];
299 } IPMI_EMP_MODEM_ESC_SEQUENCE
;
302 UINT8 HangupSequence
[8];
303 } IPMI_EMP_MODEM_HANGUP_SEQUENCE
;
306 UINT8 ModelDialCommend
[8];
307 } IPMI_MODEM_DIALUP_COMMAND
;
310 UINT8 PageBlackoutInterval
;
311 } IPMI_PAGE_BLACKOUT_INTERVAL
;
314 UINT8 CommunityString
[18];
315 } IPMI_EMP_COMMUNITY_STRING
;
319 UINT8 DialStringSelector
: 4;
320 } IPMI_DIAL_PAGE_DESTINATION
;
323 UINT8 TapAccountSelector
: 4;
325 } IPMI_TAP_PAGE_DESTINATION
;
328 UINT8 PPPAccountSetSelector
;
329 UINT8 DialStringSelector
;
330 } IPMI_PPP_ALERT_DESTINATION
;
333 IPMI_DIAL_PAGE_DESTINATION DialPageDestination
;
334 IPMI_TAP_PAGE_DESTINATION TapPageDestination
;
335 IPMI_PPP_ALERT_DESTINATION PppAlertDestination
;
336 } IPMI_DEST_TYPE_SPECIFIC
;
339 UINT8 DestinationSelector
: 4;
341 UINT8 DestinationType
: 4;
343 UINT8 AlertAckRequired
: 1;
344 UINT8 AlertAckTimeoutSeconds
;
345 UINT8 NumRetriesCall
: 3;
347 UINT8 NumRetryAlert
: 3;
349 IPMI_DEST_TYPE_SPECIFIC DestinationTypeSpecific
;
350 } IPMI_EMP_DESTINATION_INFO
;
353 UINT8 DestinationSelector
: 4;
356 UINT8 CharacterSize
: 1;
359 UINT8 FlowControl
: 2;
362 UINT8 SaveSetting
: 1;
363 UINT8 SetComPort
: 1;
365 } IPMI_EMP_DESTINATION_COM_SETTING
;
368 UINT8 DialStringSelector
: 4;
371 UINT8 DialString
[48];
372 } IPMI_DESTINATION_DIAL_STRING
;
375 UINT32 IpAddressLong
;
377 } IPMI_PPP_IP_ADDRESS
;
380 UINT8 IpAddressSelector
: 4;
382 IPMI_PPP_IP_ADDRESS PppIpAddress
;
383 } IPMI_DESTINATION_IP_ADDRESS
;
387 UINT8 TapServiceSelector
: 4;
388 UINT8 TapDialStringSelector
: 4;
389 } IPMI_DESTINATION_TAP_ACCOUNT
;
393 UINT8 PagerIdString
[16];
394 } IPMI_TAP_PAGER_ID_STRING
;
398 IPMI_EMP_AUTH_TYPE EmpAuthType
;
399 IPMI_EMP_CONNECTION_TYPE EmpConnectionType
;
400 IPMI_EMP_INACTIVITY_TIMEOUT EmpInactivityTimeout
;
401 IPMI_EMP_CHANNEL_CALLBACK_CONTROL EmpCallbackControl
;
402 IPMI_EMP_SESSION_TERMINATION EmpSessionTermination
;
403 IPMI_EMP_MESSAGING_COM_SETTING EmpMessagingComSetting
;
404 IPMI_EMP_MODEM_RING_TIME EmpModemRingTime
;
405 IPMI_EMP_MODEM_INIT_STRING EmpModemInitString
;
406 IPMI_EMP_MODEM_ESC_SEQUENCE EmpModemEscSequence
;
407 IPMI_EMP_MODEM_HANGUP_SEQUENCE EmpModemHangupSequence
;
408 IPMI_MODEM_DIALUP_COMMAND EmpModemDialupCommand
;
409 IPMI_PAGE_BLACKOUT_INTERVAL EmpPageBlackoutInterval
;
410 IPMI_EMP_COMMUNITY_STRING EmpCommunityString
;
411 IPMI_EMP_DESTINATION_INFO EmpDestinationInfo
;
412 IPMI_EMP_DESTINATION_COM_SETTING EmpDestinationComSetting
;
413 UINT8 CallRetryBusySignalInterval
;
414 IPMI_DESTINATION_DIAL_STRING DestinationDialString
;
415 IPMI_DESTINATION_IP_ADDRESS DestinationIpAddress
;
416 IPMI_DESTINATION_TAP_ACCOUNT DestinationTapAccount
;
417 IPMI_TAP_PAGER_ID_STRING TapPagerIdString
;
421 // Definitions for Get Serial/Modem Configuration command
423 #define IPMI_TRANSPORT_GET_SERIAL_CONFIGURATION 0x11
426 // Constants and Structure definitions for "Get Serial/Modem Configuration" command to follow here
430 // Definitions for Set Serial/Modem Mux command
432 #define IPMI_TRANSPORT_SET_SERIAL_MUX 0x12
435 // Constants and Structure definitions for "Set Serial/Modem Mux" command to follow here
440 UINT8 MuxSetting
: 4;
442 } IPMI_SET_MUX_COMMAND
;
445 UINT8 MuxSetToBmc
: 1;
446 UINT8 CommandStatus
: 1;
447 UINT8 MessagingSessionActive
: 1;
448 UINT8 AlertInProgress
: 1;
450 UINT8 MuxToBmcAllowed
: 1;
451 UINT8 MuxToSystemBlocked
: 1;
455 // Definitions for Get TAP Response Code command
457 #define IPMI_TRANSPORT_GET_TAP_RESPONSE_CODE 0x13
460 // Constants and Structure definitions for "Get TAP Response Code" command to follow here
464 // Definitions for Set PPP UDP Proxy Transmit Data command
466 #define IPMI_TRANSPORT_SET_PPP_UDP_PROXY_TXDATA 0x14
469 // Constants and Structure definitions for "Set PPP UDP Proxy Transmit Data" command to follow here
473 // Definitions for Get PPP UDP Proxy Transmit Data command
475 #define IPMI_TRANSPORT_GET_PPP_UDP_PROXY_TXDATA 0x15
478 // Constants and Structure definitions for "Get PPP UDP Proxy Transmit Data" command to follow here
482 // Definitions for Send PPP UDP Proxy Packet command
484 #define IPMI_TRANSPORT_SEND_PPP_UDP_PROXY_PACKET 0x16
487 // Constants and Structure definitions for "Send PPP UDP Proxy Packet" command to follow here
491 // Definitions for Get PPP UDP Proxy Receive Data command
493 #define IPMI_TRANSPORT_GET_PPP_UDP_PROXY_RX 0x17
496 // Constants and Structure definitions for "Get PPP UDP Proxy Receive Data" command to follow here
500 // Definitions for Serial/Modem connection active command
502 #define IPMI_TRANSPORT_SERIAL_CONNECTION_ACTIVE 0x18
505 // Constants and Structure definitions for "Serial/Modem connection active" command to follow here
509 // Definitions for Callback command
511 #define IPMI_TRANSPORT_CALLBACK 0x19
514 // Constants and Structure definitions for "Callback" command to follow here
518 // Definitions for Set user Callback Options command
520 #define IPMI_TRANSPORT_SET_USER_CALLBACK_OPTIONS 0x1A
523 // Constants and Structure definitions for "Set user Callback Options" command to follow here
527 // Definitions for Get user Callback Options command
529 #define IPMI_TRANSPORT_GET_USER_CALLBACK_OPTIONS 0x1B
532 // Constants and Structure definitions for "Get user Callback Options" command to follow here
536 // Below is Definitions for SOL Commands (Chapter 26)
540 // Definitions for SOL activating command
542 #define IPMI_TRANSPORT_SOL_ACTIVATING 0x20
545 // Constants and Structure definitions for "SOL activating" command to follow here
549 // Definitions for Set SOL Configuration Parameters command
551 #define IPMI_TRANSPORT_SET_SOL_CONFIG_PARAM 0x21
554 // Constants and Structure definitions for "Set SOL Configuration Parameters" command to follow here
558 // Definitions for Get SOL Configuration Parameters command
560 #define IPMI_TRANSPORT_GET_SOL_CONFIG_PARAM 0x22
563 // Constants and Structure definitions for "Get SOL Configuration Parameters" command to follow here