Send Message
更新时间: 2026/08/06
在Gitcode上查看源码Send Message
Change History
| openUBMC Version | Revision Date | Description |
|---|---|---|
| 25.06 | 2025/06/26 | Initial draft: add command details |
Basic Information
Function Description
Send a message.
Privilege
Command Information
Request Information
| Byte | Data Field |
|---|---|
| NetFn | App 06h |
| CMD | 34h |
| 1 | Channel Number [7:6] 00b=No tracking The BMC reformats the message for the selected channel but does not track the originating channel, sequence number, or address information. This option is typically used when software sends a message from the system interface to another media Software will typically use 'no tracking' when it delivers sends a message from the system interface to another channel, such as IPMB. In this case, software will format the encapsulated message so that when it appears on the other channel, it will appear to have been directly originated by BMC LUN 10b. See 6.12.1, BMC LUN 10b Routing 01b=Track Request The BMC records the originating channel, sequence number, and addressing information for the requester, and then reformats the message for the protocol of the destination channel. When a response is returned, the BMC looks up the requester's information and format the response message with the framing and destination address information and reformats the response for delivery back to the requester. This option is used for delivering IPMI Request messages from non-SMS (non-system interface) channels. See IPMI 2.0R1E3 6.12.3, Send Message Command with Response Tracking 10b=Send Raw. (optional) This option is primarily provided for test purposes. It may also be used for proprietary messaging purposes. The BMC simply delivers the encapsulated data to the selected channel in place of the IPMI Message data. Note that if the channel uses sessions, the first byte of the Message Data field must be a Session Handle. The BMC should return a non-zero completion code if an attempt is made to use this option for a given channel and the option is not supported. It is recommended that completion code CCh be returned for this condition 11b=reserved [5] 1b=Send message with encryption BMC will return an error completion code if this encryption is unavailable. 0b=Encryption not required The message will be sent unencrypted if that option is available under the given session. Otherwise, the message will be sent encrypted. [4] 1b=Send message with authentication BMC will return an error completion code if this authentication is unavailable. 0b=Authentication not required Note behavior is dependent on whether authentication is used is depending on whether the target channel is running an IPMI v1.5 or IPMI v2.0/RMCP+ session, as follows: IPMI v1.5 sessions will default to sending the message with authentication if that option is available for the sessionIPMI v2.0/RMCP+ sessions will send the message unauthenticated if that option is available under the session. Otherwise, the message will be sent with authentication [3:0] channel number to send message to |
Response Information
| Byte | Data Field |
|---|---|
| 1 | Completion Code generic, plus additional command-specific completion codes: 80h=Invalid Session Handle. The session handle does not match up with any currently active sessions for this channel. If channel medium=IPMB, SMBus, or PCI Management Bus: (This status is recommended for applications that need to access low-level I2C or SMBus devices.) 81h=Lost Arbitration 82h=Bus Error 83h=NAK on Write |
| (2:N)* | Response Data This data will only be present when using the Send Message command to originate requests from IPMB or PCI Management Bus to other channels such as LAN or serial/modem. It is not present in the response to a Send Message command delivered via the System Interface. |
| * Note: The content in parentheses indicates that the content may not exist. |
Command Example
Send a message.
Request:
bash
ipmicmd -k "0f 00 MM NN" smi 0Response:
text
0f MM NN