Package org.metricshub.ipmi.core.coding
Class Encoder
java.lang.Object
org.metricshub.ipmi.core.coding.Encoder
Creates RMCP packet containing encrypted IPMI command from IPMICommand
wrapper class or raw byte data.
-
Method Summary
Modifier and TypeMethodDescriptionstatic byte[]
encode
(IpmiEncoder protcolEncoder, PayloadCoder payloadCoder, int messageSequenceNumber, int sessionSequenceNumber, int sessionId) Encodes IPMI command specified by payloadCoder into byte array raw data.
-
Method Details
-
encode
public static byte[] encode(IpmiEncoder protcolEncoder, PayloadCoder payloadCoder, int messageSequenceNumber, int sessionSequenceNumber, int sessionId) throws NoSuchAlgorithmException, InvalidKeyException Encodes IPMI command specified by payloadCoder into byte array raw data.- Parameters:
protcolEncoder
- - instance ofIpmiEncoder
class for encoding of the IPMI session header.Protocolv15Decoder
orProtocolv20Decoder
should be used (depending on IPMI protocol version used).payloadCoder
- - instance ofPayloadCoder
class used for building IPMI message payload.messageSequenceNumber
- - A generated sequence number used for matching request and response. If IPMI message is sent in a session, it is used as a Session Sequence Number. For all IPMI messages, messageSequenceNumber is used as a IPMI LAN Message sequence number and as an IPMI payload message tag.sessionId
- - ID of the managed system's session message is being sent in. For sessionless commands should be set to 0.- Returns:
- encoded IPMI command
- Throws:
NoSuchAlgorithmException
- - when authentication, confidentiality or integrity algorithm fails.InvalidKeyException
- - when creating of the algorithm key fails
-