Skip to content

Update metricshub/workflows to v7 #129

Update metricshub/workflows to v7

Update metricshub/workflows to v7 #129

Triggered via pull request October 8, 2026 16:44
Status Success
Total duration 1m 31s
Artifacts 2

build.yml

on: pull_request
Fit to window
Zoom out
Zoom in

Annotations

1 error, 176 warnings, and 1 notice
build / build / build
Error: The provided rootDirectory target/ipmi-java-1.2.03-SNAPSHOT.buildinfo is not a valid directory
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/client/IpmiClientConfiguration.java#L182
org.metricshub.ipmi.client.IpmiClientConfiguration.getBmcKey() may expose internal representation by returning IpmiClientConfiguration.bmcKey
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/client/IpmiClientConfiguration.java#L161
org.metricshub.ipmi.client.IpmiClientConfiguration.getPassword() may expose internal representation by returning IpmiClientConfiguration.password
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/client/IpmiClientConfiguration.java#L57
new org.metricshub.ipmi.client.IpmiClientConfiguration(String, String, char[], byte[], boolean, long) may expose internal representation by storing an externally mutable object into IpmiClientConfiguration.bmcKey
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/client/IpmiClientConfiguration.java#L56
new org.metricshub.ipmi.client.IpmiClientConfiguration(String, String, char[], byte[], boolean, long) may expose internal representation by storing an externally mutable object into IpmiClientConfiguration.password
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/client/IpmiClientConfiguration.java#L193
org.metricshub.ipmi.client.IpmiClientConfiguration.setBmcKey(byte[]) may expose internal representation by storing an externally mutable object into IpmiClientConfiguration.bmcKey
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/client/IpmiClientConfiguration.java#L171
org.metricshub.ipmi.client.IpmiClientConfiguration.setPassword(char[]) may expose internal representation by storing an externally mutable object into IpmiClientConfiguration.password
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/client/model/Fru.java#L54
org.metricshub.ipmi.client.model.Fru.getFruLocator() may expose internal representation by returning Fru.fruLocator
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/client/model/Fru.java#L61
org.metricshub.ipmi.client.model.Fru.getFruRecords() may expose internal representation by returning Fru.fruRecords
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/client/model/Fru.java#L46
new org.metricshub.ipmi.client.model.Fru(FruDeviceLocatorRecord, List) may expose internal representation by storing an externally mutable object into Fru.fruLocator
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/client/model/Fru.java#L47
new org.metricshub.ipmi.client.model.Fru(FruDeviceLocatorRecord, List) may expose internal representation by storing an externally mutable object into Fru.fruRecords
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/client/model/Sensor.java#L62
org.metricshub.ipmi.client.model.Sensor.getData() may expose internal representation by returning Sensor.data
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/client/model/Sensor.java#L58
org.metricshub.ipmi.client.model.Sensor.getRecord() may expose internal representation by returning Sensor.sensorRecord
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/client/model/Sensor.java#L53
new org.metricshub.ipmi.client.model.Sensor(SensorRecord, GetSensorReadingResponseData, String) may expose internal representation by storing an externally mutable object into Sensor.data
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/client/model/Sensor.java#L52
new org.metricshub.ipmi.client.model.Sensor(SensorRecord, GetSensorReadingResponseData, String) may expose internal representation by storing an externally mutable object into Sensor.sensorRecord
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/api/async/ConnectionHandle.java#L70
org.metricshub.ipmi.core.api.async.ConnectionHandle.getRemoteAddress() may expose internal representation by returning ConnectionHandle.remoteAddress
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/api/async/ConnectionHandle.java#L45
new org.metricshub.ipmi.core.api.async.ConnectionHandle(int, InetAddress, int) may expose internal representation by storing an externally mutable object into ConnectionHandle.remoteAddress
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/api/async/InboundSolMessageListener.java#L59
new org.metricshub.ipmi.core.api.async.InboundSolMessageListener(IpmiConnector, ConnectionHandle, List) may expose internal representation by storing an externally mutable object into InboundSolMessageListener.connectionHandle
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/api/async/InboundSolMessageListener.java#L58
new org.metricshub.ipmi.core.api.async.InboundSolMessageListener(IpmiConnector, ConnectionHandle, List) may expose internal representation by storing an externally mutable object into InboundSolMessageListener.connector
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/api/async/InboundSolMessageListener.java#L60
new org.metricshub.ipmi.core.api.async.InboundSolMessageListener(IpmiConnector, ConnectionHandle, List) may expose internal representation by storing an externally mutable object into InboundSolMessageListener.eventListeners
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/api/async/messages/IpmiError.java#L37
org.metricshub.ipmi.core.api.async.messages.IpmiError.getException() may expose internal representation by returning IpmiError.exception
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/api/async/messages/IpmiError.java#L42
new org.metricshub.ipmi.core.api.async.messages.IpmiError(Exception, int, ConnectionHandle) may expose internal representation by storing an externally mutable object into IpmiError.exception
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/api/async/messages/IpmiResponse.java#L43
org.metricshub.ipmi.core.api.async.messages.IpmiResponse.getHandle() may expose internal representation by returning IpmiResponse.handle
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/api/async/messages/IpmiResponse.java#L55
new org.metricshub.ipmi.core.api.async.messages.IpmiResponse(int, ConnectionHandle) may expose internal representation by storing an externally mutable object into IpmiResponse.handle
DM_DEFAULT_ENCODING: src/main/java/org/metricshub/ipmi/core/api/sol/SerialOverLan.java#L544
Found reliance on default encoding in org.metricshub.ipmi.core.api.sol.SerialOverLan.readString(int): new String(byte[])
DM_DEFAULT_ENCODING: src/main/java/org/metricshub/ipmi/core/api/sol/SerialOverLan.java#L416
Found reliance on default encoding in org.metricshub.ipmi.core.api.sol.SerialOverLan.writeString(String): String.getBytes()
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/api/sol/SerialOverLan.java#L146
new org.metricshub.ipmi.core.api.sol.SerialOverLan(IpmiConnector, Session) may expose internal representation by storing an externally mutable object into SerialOverLan.connector
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/api/sync/MessageListener.java#L70
new org.metricshub.ipmi.core.api.sync.MessageListener(ConnectionHandle) may expose internal representation by storing an externally mutable object into MessageListener.handle
BC_VACUOUS_INSTANCEOF: src/main/java/org/metricshub/ipmi/core/coding/commands/IpmiCommandCoder.java#L69
instanceof will always return true for all non-null values in org.metricshub.ipmi.core.coding.commands.IpmiCommandCoder.isCommandResponse(IpmiMessage), since all org.metricshub.ipmi.core.coding.payload.IpmiPayload are instances of org.metricshub.ipmi.core.coding.payload.IpmiPayload
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/commands/fru/ReadFruDataResponseData.java#L41
org.metricshub.ipmi.core.coding.commands.fru.ReadFruDataResponseData.getFruData() may expose internal representation by returning ReadFruDataResponseData.fruData
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/commands/fru/ReadFruDataResponseData.java#L37
org.metricshub.ipmi.core.coding.commands.fru.ReadFruDataResponseData.setFruData(byte[]) may expose internal representation by storing an externally mutable object into ReadFruDataResponseData.fruData
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/commands/fru/record/BaseCompatibilityInfo.java#L106
org.metricshub.ipmi.core.coding.commands.fru.record.BaseCompatibilityInfo.getCodeRangeMasks() may expose internal representation by returning BaseCompatibilityInfo.codeRangeMasks
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/commands/fru/record/BaseCompatibilityInfo.java#L110
org.metricshub.ipmi.core.coding.commands.fru.record.BaseCompatibilityInfo.setCodeRangeMasks(byte[]) may expose internal representation by storing an externally mutable object into BaseCompatibilityInfo.codeRangeMasks
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/commands/fru/record/BoardInfo.java#L253
org.metricshub.ipmi.core.coding.commands.fru.record.BoardInfo.getCustomBoardInfo() may expose internal representation by returning BoardInfo.customBoardInfo
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/commands/fru/record/BoardInfo.java#L245
org.metricshub.ipmi.core.coding.commands.fru.record.BoardInfo.getFruFileId() may expose internal representation by returning BoardInfo.fruFileId
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/commands/fru/record/BoardInfo.java#L205
org.metricshub.ipmi.core.coding.commands.fru.record.BoardInfo.getMfgDate() may expose internal representation by returning BoardInfo.mfgDate
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/commands/fru/record/BoardInfo.java#L257
org.metricshub.ipmi.core.coding.commands.fru.record.BoardInfo.setCustomBoardInfo(String[]) may expose internal representation by storing an externally mutable object into BoardInfo.customBoardInfo
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/commands/fru/record/BoardInfo.java#L249
org.metricshub.ipmi.core.coding.commands.fru.record.BoardInfo.setFruFileId(byte[]) may expose internal representation by storing an externally mutable object into BoardInfo.fruFileId
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/commands/fru/record/BoardInfo.java#L209
org.metricshub.ipmi.core.coding.commands.fru.record.BoardInfo.setMfgDate(Date) may expose internal representation by storing an externally mutable object into BoardInfo.mfgDate
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/commands/fru/record/ChassisInfo.java#L157
org.metricshub.ipmi.core.coding.commands.fru.record.ChassisInfo.getCustomChassisInfo() may expose internal representation by returning ChassisInfo.customChassisInfo
DM_DEFAULT_ENCODING: src/main/java/org/metricshub/ipmi/core/coding/commands/fru/record/ManagementAccessInfo.java#L59
Found reliance on default encoding in new org.metricshub.ipmi.core.coding.commands.fru.record.ManagementAccessInfo(byte[], int, int): new String(byte[])
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/commands/fru/record/OemInfo.java#L72
org.metricshub.ipmi.core.coding.commands.fru.record.OemInfo.getOemData() may expose internal representation by returning OemInfo.oemData
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/commands/fru/record/OemInfo.java#L76
org.metricshub.ipmi.core.coding.commands.fru.record.OemInfo.setOemData(byte[]) may expose internal representation by storing an externally mutable object into OemInfo.oemData
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/commands/fru/record/ProductInfo.java#L247
org.metricshub.ipmi.core.coding.commands.fru.record.ProductInfo.getCustomProductInfo() may expose internal representation by returning ProductInfo.customProductInfo
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/commands/fru/record/ProductInfo.java#L239
org.metricshub.ipmi.core.coding.commands.fru.record.ProductInfo.getFruFileId() may expose internal representation by returning ProductInfo.fruFileId
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/commands/fru/record/ProductInfo.java#L251
org.metricshub.ipmi.core.coding.commands.fru.record.ProductInfo.setCustomProductInfo(String[]) may expose internal representation by storing an externally mutable object into ProductInfo.customProductInfo
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/commands/fru/record/ProductInfo.java#L243
org.metricshub.ipmi.core.coding.commands.fru.record.ProductInfo.setFruFileId(byte[]) may expose internal representation by storing an externally mutable object into ProductInfo.fruFileId
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/commands/payload/GetChannelPayloadSupportResponseData.java#L74
org.metricshub.ipmi.core.coding.commands.payload.GetChannelPayloadSupportResponseData.getSupportedPayloads() may expose internal representation by returning GetChannelPayloadSupportResponseData.supportedPayloads
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/commands/sdr/GetSdrResponseData.java#L61
org.metricshub.ipmi.core.coding.commands.sdr.GetSdrResponseData.getSensorRecordData() may expose internal representation by returning GetSdrResponseData.sensorRecordData
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/commands/sdr/GetSdrResponseData.java#L52
org.metricshub.ipmi.core.coding.commands.sdr.GetSdrResponseData.setSensorRecordData(byte[]) may expose internal representation by storing an externally mutable object into GetSdrResponseData.sensorRecordData
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/commands/sdr/GetSensorReadingResponseData.java#L100
org.metricshub.ipmi.core.coding.commands.sdr.GetSensorReadingResponseData.getRaw() may expose internal representation by returning GetSensorReadingResponseData.raw
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/commands/sdr/GetSensorReadingResponseData.java#L104
org.metricshub.ipmi.core.coding.commands.sdr.GetSensorReadingResponseData.setRaw(byte[]) may expose internal representation by storing an externally mutable object into GetSensorReadingResponseData.raw
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/commands/sdr/GetSensorReadingResponseData.java#L135
org.metricshub.ipmi.core.coding.commands.sdr.GetSensorReadingResponseData.setStatesAsserted(boolean[]) may expose internal representation by storing an externally mutable object into GetSensorReadingResponseData.statesAsserted
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/commands/sdr/record/ManagementControllerConfirmationRecord.java#L170
org.metricshub.ipmi.core.coding.commands.sdr.record.ManagementControllerConfirmationRecord.getDeviceGuid() may expose internal representation by returning ManagementControllerConfirmationRecord.deviceGuid
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/commands/sdr/record/ManagementControllerConfirmationRecord.java#L174
org.metricshub.ipmi.core.coding.commands.sdr.record.ManagementControllerConfirmationRecord.setDeviceGuid(byte[]) may expose internal representation by storing an externally mutable object into ManagementControllerConfirmationRecord.deviceGuid
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/commands/sdr/record/OemRecord.java#L82
org.metricshub.ipmi.core.coding.commands.sdr.record.OemRecord.getOemData() may expose internal representation by returning OemRecord.oemData
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/commands/sdr/record/OemRecord.java#L86
org.metricshub.ipmi.core.coding.commands.sdr.record.OemRecord.setOemData(byte[]) may expose internal representation by storing an externally mutable object into OemRecord.oemData
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/commands/sel/GetSelEntryResponseData.java#L55
org.metricshub.ipmi.core.coding.commands.sel.GetSelEntryResponseData.getSelRecord() may expose internal representation by returning GetSelEntryResponseData.selRecord
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/commands/sel/GetSelEntryResponseData.java#L51
org.metricshub.ipmi.core.coding.commands.sel.GetSelEntryResponseData.setSelRecord(SelRecord) may expose internal representation by storing an externally mutable object into GetSelEntryResponseData.selRecord
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/commands/sel/GetSelInfoResponseData.java#L64
org.metricshub.ipmi.core.coding.commands.sel.GetSelInfoResponseData.getAdditionTimestamp() may expose internal representation by returning GetSelInfoResponseData.additionTimestamp
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/commands/sel/GetSelInfoResponseData.java#L72
org.metricshub.ipmi.core.coding.commands.sel.GetSelInfoResponseData.getEraseTimestamp() may expose internal representation by returning GetSelInfoResponseData.eraseTimestamp
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/commands/sel/GetSelInfoResponseData.java#L68
org.metricshub.ipmi.core.coding.commands.sel.GetSelInfoResponseData.setAdditionTimestamp(Date) may expose internal representation by storing an externally mutable object into GetSelInfoResponseData.additionTimestamp
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/commands/sel/GetSelInfoResponseData.java#L76
org.metricshub.ipmi.core.coding.commands.sel.GetSelInfoResponseData.setEraseTimestamp(Date) may expose internal representation by storing an externally mutable object into GetSelInfoResponseData.eraseTimestamp
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/commands/sel/SelRecord.java#L112
org.metricshub.ipmi.core.coding.commands.sel.SelRecord.getTimestamp() may expose internal representation by returning SelRecord.timestamp
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/commands/sel/SelRecord.java#L116
org.metricshub.ipmi.core.coding.commands.sel.SelRecord.setTimestamp(Date) may expose internal representation by storing an externally mutable object into SelRecord.timestamp
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/commands/session/GetChannelAuthenticationCapabilitiesResponseData.java#L115
org.metricshub.ipmi.core.coding.commands.session.GetChannelAuthenticationCapabilitiesResponseData.getAuthenticationTypes() may expose internal representation by returning GetChannelAuthenticationCapabilitiesResponseData.authenticationTypes
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/commands/session/GetChannelAuthenticationCapabilitiesResponseData.java#L111
org.metricshub.ipmi.core.coding.commands.session.GetChannelAuthenticationCapabilitiesResponseData.setAuthenticationTypes(Collection) may expose internal representation by storing an externally mutable object into GetChannelAuthenticationCapabilitiesResponseData.authenticationTypes
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/commands/session/GetChannelCipherSuitesResponseData.java#L49
org.metricshub.ipmi.core.coding.commands.session.GetChannelCipherSuitesResponseData.getCipherSuiteData() may expose internal representation by returning GetChannelCipherSuitesResponseData.cipherSuiteData
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/commands/session/GetChannelCipherSuitesResponseData.java#L45
org.metricshub.ipmi.core.coding.commands.session.GetChannelCipherSuitesResponseData.setCipherSuiteData(byte[]) may expose internal representation by storing an externally mutable object into GetChannelCipherSuitesResponseData.cipherSuiteData
DM_DEFAULT_ENCODING: src/main/java/org/metricshub/ipmi/core/coding/commands/session/Rakp1.java#L441
Found reliance on default encoding in org.metricshub.ipmi.core.coding.commands.session.Rakp1.calculateSik(Rakp1ResponseData): new String(byte[])
DM_DEFAULT_ENCODING: src/main/java/org/metricshub/ipmi/core/coding/commands/session/Rakp1.java#L433
Found reliance on default encoding in org.metricshub.ipmi.core.coding.commands.session.Rakp1.calculateSik(Rakp1ResponseData): String.getBytes()
DM_DEFAULT_ENCODING: src/main/java/org/metricshub/ipmi/core/coding/commands/session/Rakp1.java#L403
Found reliance on default encoding in org.metricshub.ipmi.core.coding.commands.session.Rakp1.prepareKeyExchangeAuthenticationCodeBase(Rakp1ResponseData): String.getBytes()
DM_DEFAULT_ENCODING: src/main/java/org/metricshub/ipmi/core/coding/commands/session/Rakp1.java#L256
Found reliance on default encoding in org.metricshub.ipmi.core.coding.commands.session.Rakp1.preparePayload(int): String.getBytes()
DM_DEFAULT_ENCODING: src/main/java/org/metricshub/ipmi/core/coding/commands/session/Rakp1.java#L475
Found reliance on default encoding in org.metricshub.ipmi.core.coding.commands.session.Rakp1.prepareSikBase(Rakp1ResponseData): String.getBytes()
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/commands/session/Rakp1.java#L143
org.metricshub.ipmi.core.coding.commands.session.Rakp1.getBmcKey() may expose internal representation by returning Rakp1.bmcKey
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/commands/session/Rakp1.java#L135
org.metricshub.ipmi.core.coding.commands.session.Rakp1.getConsoleRandomNumber() may expose internal representation by returning Rakp1.consoleRandomNumber
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/commands/session/Rakp1ResponseData.java#L73
org.metricshub.ipmi.core.coding.commands.session.Rakp1ResponseData.getManagedSystemGuid() may expose internal representation by returning Rakp1ResponseData.managedSystemGuid
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/commands/session/Rakp1ResponseData.java#L81
org.metricshub.ipmi.core.coding.commands.session.Rakp1ResponseData.getManagedSystemRandomNumber() may expose internal representation by returning Rakp1ResponseData.managedSystemRandomNumber
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/commands/session/Rakp1ResponseData.java#L69
org.metricshub.ipmi.core.coding.commands.session.Rakp1ResponseData.setManagedSystemGuid(byte[]) may expose internal representation by storing an externally mutable object into Rakp1ResponseData.managedSystemGuid
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/commands/session/Rakp1ResponseData.java#L77
org.metricshub.ipmi.core.coding.commands.session.Rakp1ResponseData.setManagedSystemRandomNumber(byte[]) may expose internal representation by storing an externally mutable object into Rakp1ResponseData.managedSystemRandomNumber
DM_DEFAULT_ENCODING: src/main/java/org/metricshub/ipmi/core/coding/commands/session/Rakp3.java#L279
Found reliance on default encoding in org.metricshub.ipmi.core.coding.commands.session.Rakp3.prepareKeyExchangeAuthenticationCodeBase(Rakp1, Rakp1ResponseData): String.getBytes()
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/commands/session/Rakp3.java#L141
new org.metricshub.ipmi.core.coding.commands.session.Rakp3(byte, int, CipherSuite, Rakp1, Rakp1ResponseData) may expose internal representation by storing an externally mutable object into Rakp3.rakp1
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/commands/session/Rakp3.java#L142
new org.metricshub.ipmi.core.coding.commands.session.Rakp3(byte, int, CipherSuite, Rakp1, Rakp1ResponseData) may expose internal representation by storing an externally mutable object into Rakp3.rakp1ResponseData
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/commands/session/Rakp3.java#L101
new org.metricshub.ipmi.core.coding.commands.session.Rakp3(CipherSuite, Rakp1, Rakp1ResponseData) may expose internal representation by storing an externally mutable object into Rakp3.rakp1
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/commands/session/Rakp3.java#L102
new org.metricshub.ipmi.core.coding.commands.session.Rakp3(CipherSuite, Rakp1, Rakp1ResponseData) may expose internal representation by storing an externally mutable object into Rakp3.rakp1ResponseData
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/payload/IpmiPayload.java#L43
org.metricshub.ipmi.core.coding.payload.IpmiPayload.getData() may expose internal representation by returning IpmiPayload.data
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/payload/IpmiPayload.java#L53
org.metricshub.ipmi.core.coding.payload.IpmiPayload.getEncryptedPayload() may expose internal representation by returning IpmiPayload.encryptedPayload
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/payload/IpmiPayload.java#L39
org.metricshub.ipmi.core.coding.payload.IpmiPayload.setData(byte[]) may expose internal representation by storing an externally mutable object into IpmiPayload.data
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/payload/sol/SolInboundStatusField.java#L94
org.metricshub.ipmi.core.coding.payload.sol.SolInboundStatusField.getStatuses() may expose internal representation by returning SolInboundStatusField.statuses
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/payload/sol/SolInboundStatusField.java#L54
new org.metricshub.ipmi.core.coding.payload.sol.SolInboundStatusField(Set) may expose internal representation by storing an externally mutable object into SolInboundStatusField.statuses
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/payload/sol/SolInboundStatusField.java#L67
new org.metricshub.ipmi.core.coding.payload.sol.SolInboundStatusField(SolAckState, Set) may expose internal representation by storing an externally mutable object into SolInboundStatusField.statuses
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/payload/sol/SolOutboundOperationField.java#L83
org.metricshub.ipmi.core.coding.payload.sol.SolOutboundOperationField.getOperations() may expose internal representation by returning SolOutboundOperationField.operations
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/payload/sol/SolOutboundOperationField.java#L56
new org.metricshub.ipmi.core.coding.payload.sol.SolOutboundOperationField(SolAckState, Set) may expose internal representation by storing an externally mutable object into SolOutboundOperationField.operations
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/protocol/IpmiMessage.java#L78
org.metricshub.ipmi.core.coding.protocol.IpmiMessage.getAuthCode() may expose internal representation by returning IpmiMessage.authCode
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/protocol/IpmiMessage.java#L92
org.metricshub.ipmi.core.coding.protocol.IpmiMessage.getPayload() may expose internal representation by returning IpmiMessage.payload
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/protocol/IpmiMessage.java#L74
org.metricshub.ipmi.core.coding.protocol.IpmiMessage.setAuthCode(byte[]) may expose internal representation by storing an externally mutable object into IpmiMessage.authCode
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/protocol/IpmiMessage.java#L88
org.metricshub.ipmi.core.coding.protocol.IpmiMessage.setPayload(IpmiPayload) may expose internal representation by storing an externally mutable object into IpmiMessage.payload
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/rmcp/RmcpMessage.java#L78
org.metricshub.ipmi.core.coding.rmcp.RmcpMessage.getData() may expose internal representation by returning RmcpMessage.data
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/rmcp/RmcpMessage.java#L74
org.metricshub.ipmi.core.coding.rmcp.RmcpMessage.setData(byte[]) may expose internal representation by storing an externally mutable object into RmcpMessage.data
DM_DEFAULT_ENCODING: src/main/java/org/metricshub/ipmi/core/coding/security/AuthenticationAlgorithm.java#L104
Found reliance on default encoding in org.metricshub.ipmi.core.coding.security.AuthenticationAlgorithm.getKeyExchangeAuthenticationCode(byte[], String): String.getBytes()
MS_PKGPROTECT: src/main/java/org/metricshub/ipmi/core/coding/security/ConfidentialityAesCbc128.java#L42
org.metricshub.ipmi.core.coding.security.ConfidentialityAesCbc128.CONST2 should be package protected
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/security/ConfidentialityAlgorithm.java#L56
org.metricshub.ipmi.core.coding.security.ConfidentialityAlgorithm.initialize(byte[], AuthenticationAlgorithm) may expose internal representation by storing an externally mutable object into ConfidentialityAlgorithm.sik
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/security/IntegrityAlgorithm.java#L71
org.metricshub.ipmi.core.coding.security.IntegrityAlgorithm.initialize(byte[]) may expose internal representation by storing an externally mutable object into IntegrityAlgorithm.sik
MS_PKGPROTECT: src/main/java/org/metricshub/ipmi/core/coding/security/IntegrityAlgorithm.java#L40
org.metricshub.ipmi.core.coding.security.IntegrityAlgorithm.CONST1 should be package protected
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/sol/SolCoder.java#L81
new org.metricshub.ipmi.core.coding.sol.SolCoder(byte[], byte, byte, SolAckState, Set, CipherSuite) may expose internal representation by storing an externally mutable object into SolCoder.message
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/sol/SolCoder.java#L85
new org.metricshub.ipmi.core.coding.sol.SolCoder(byte[], byte, byte, SolAckState, Set, CipherSuite) may expose internal representation by storing an externally mutable object into SolCoder.operations
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/coding/sol/SolResponseData.java#L81
org.metricshub.ipmi.core.coding.sol.SolResponseData.getStatuses() may expose internal representation by returning SolResponseData.statuses
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/coding/sol/SolResponseData.java#L68
new org.metricshub.ipmi.core.coding.sol.SolResponseData(byte, SolAckState, Set, byte) may expose internal representation by storing an externally mutable object into SolResponseData.statuses
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/common/MessageComposer.java#L77
org.metricshub.ipmi.core.common.MessageComposer.getMessage() may expose internal representation by returning MessageComposer.message
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/common/MessageReader.java#L41
new org.metricshub.ipmi.core.common.MessageReader(byte[]) may expose internal representation by storing an externally mutable object into MessageReader.message
MS_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/common/PropertiesManager.java#L52
Public static org.metricshub.ipmi.core.common.PropertiesManager.getInstance() may expose internal representation by returning PropertiesManager.instance
AT_STALE_THREAD_WRITE_OF_PRIMITIVE: src/main/java/org/metricshub/ipmi/core/connection/Connection.java#L218
Shared primitive variable "sessionId" in one thread may not yield the value of the most recent write from another thread
AT_STALE_THREAD_WRITE_OF_PRIMITIVE: src/main/java/org/metricshub/ipmi/core/connection/Connection.java#L400
Shared primitive variable "sessionId" in one thread may not yield the value of the most recent write from another thread
AT_STALE_THREAD_WRITE_OF_PRIMITIVE: src/main/java/org/metricshub/ipmi/core/connection/Connection.java#L120
Shared primitive variable "timeout" in one thread may not yield the value of the most recent write from another thread
AT_STALE_THREAD_WRITE_OF_PRIMITIVE: src/main/java/org/metricshub/ipmi/core/connection/Connection.java#L476
Shared primitive variable "managedSystemSessionId" in one thread may not yield the value of the most recent write from another thread
JLM_JSR166_UTILCONCURRENT_MONITORENTER: src/main/java/org/metricshub/ipmi/core/connection/ConnectionManager.java#L131
Synchronization performed on java.util.concurrent.atomic.AtomicInteger in org.metricshub.ipmi.core.connection.ConnectionManager.generateSessionlessTag()
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/connection/MessageHandler.java#L84
new org.metricshub.ipmi.core.connection.MessageHandler(Connection, int, int, int) may expose internal representation by storing an externally mutable object into MessageHandler.connection
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/connection/Session.java#L45
org.metricshub.ipmi.core.connection.Session.getConnectionHandle() may expose internal representation by returning Session.connectionHandle
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/connection/Session.java#L37
new org.metricshub.ipmi.core.connection.Session(int, ConnectionHandle) may expose internal representation by storing an externally mutable object into Session.connectionHandle
USO_UNSAFE_STATIC_METHOD_SYNCHRONIZATION: src/main/java/org/metricshub/ipmi/core/connection/SessionManager.java#L52
Static synchronized method org.metricshub.ipmi.core.connection.SessionManager.generateSessionId() uses intrinsic lock of class org.metricshub.ipmi.core.connection.SessionManager for synchronization, exposing the class to untrusted code.
AT_STALE_THREAD_WRITE_OF_PRIMITIVE: src/main/java/org/metricshub/ipmi/core/connection/queue/MessageQueue.java#L71
Shared primitive variable "timeout" in one thread may not yield the value of the most recent write from another thread
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/connection/queue/MessageQueue.java#L79
new org.metricshub.ipmi.core.connection.queue.MessageQueue(Connection, int, int, int) may expose internal representation by storing an externally mutable object into MessageQueue.connection
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/connection/queue/QueueElement.java#L76
org.metricshub.ipmi.core.connection.queue.QueueElement.getRequest() may expose internal representation by returning QueueElement.request
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/connection/queue/QueueElement.java#L92
org.metricshub.ipmi.core.connection.queue.QueueElement.getTimestamp() may expose internal representation by returning QueueElement.timestamp
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/connection/queue/QueueElement.java#L45
new org.metricshub.ipmi.core.connection.queue.QueueElement(int, PayloadCoder) may expose internal representation by storing an externally mutable object into QueueElement.request
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/connection/queue/QueueElement.java#L80
org.metricshub.ipmi.core.connection.queue.QueueElement.setRequest(PayloadCoder) may expose internal representation by storing an externally mutable object into QueueElement.request
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/sm/StateMachine.java#L96
org.metricshub.ipmi.core.sm.StateMachine.getRemoteMachineAddress() may expose internal representation by returning StateMachine.remoteMachineAddress
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/sm/StateMachine.java#L128
org.metricshub.ipmi.core.sm.StateMachine.start(InetAddress, int) may expose internal representation by storing an externally mutable object into StateMachine.remoteMachineAddress
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/sm/actions/ErrorAction.java#L37
org.metricshub.ipmi.core.sm.actions.ErrorAction.getException() may expose internal representation by returning ErrorAction.exception
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/sm/actions/ErrorAction.java#L33
new org.metricshub.ipmi.core.sm.actions.ErrorAction(Exception) may expose internal representation by storing an externally mutable object into ErrorAction.exception
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/sm/actions/GetSikAction.java#L36
org.metricshub.ipmi.core.sm.actions.GetSikAction.getSik() may expose internal representation by returning GetSikAction.sik
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/sm/actions/GetSikAction.java#L32
new org.metricshub.ipmi.core.sm.actions.GetSikAction(byte[]) may expose internal representation by storing an externally mutable object into GetSikAction.sik
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/sm/actions/MessageAction.java#L40
org.metricshub.ipmi.core.sm.actions.MessageAction.getIpmiv20Message() may expose internal representation by returning MessageAction.ipmiResponseData
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/sm/actions/MessageAction.java#L34
new org.metricshub.ipmi.core.sm.actions.MessageAction(Ipmiv20Message) may expose internal representation by storing an externally mutable object into MessageAction.ipmiResponseData
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/sm/events/OpenSessionAck.java#L95
org.metricshub.ipmi.core.sm.events.OpenSessionAck.getBmcKey() may expose internal representation by returning OpenSessionAck.bmcKey
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/sm/events/OpenSessionAck.java#L79
new org.metricshub.ipmi.core.sm.events.OpenSessionAck(CipherSuite, PrivilegeLevel, int, int, String, String, byte[]) may expose internal representation by storing an externally mutable object into OpenSessionAck.bmcKey
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/sm/events/Rakp2Ack.java#L89
org.metricshub.ipmi.core.sm.events.Rakp2Ack.getRakp1ResponseData() may expose internal representation by returning Rakp2Ack.rakp1ResponseData
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/sm/events/Rakp2Ack.java#L69
new org.metricshub.ipmi.core.sm.events.Rakp2Ack(CipherSuite, int, byte, int, Rakp1ResponseData) may expose internal representation by storing an externally mutable object into Rakp2Ack.rakp1ResponseData
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/sm/events/Sendv20Message.java#L75
org.metricshub.ipmi.core.sm.events.Sendv20Message.getPayloadCoder() may expose internal representation by returning Sendv20Message.message
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/sm/events/Sendv20Message.java#L56
new org.metricshub.ipmi.core.sm.events.Sendv20Message(PayloadCoder, int, int, int) may expose internal representation by storing an externally mutable object into Sendv20Message.message
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/sm/states/Rakp1Complete.java#L52
new org.metricshub.ipmi.core.sm.states.Rakp1Complete(Rakp1) may expose internal representation by storing an externally mutable object into Rakp1Complete.rakp1
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/sm/states/Rakp1Waiting.java#L65
new org.metricshub.ipmi.core.sm.states.Rakp1Waiting(int, Rakp1) may expose internal representation by storing an externally mutable object into Rakp1Waiting.rakp1
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/sm/states/Rakp3Waiting.java#L75
new org.metricshub.ipmi.core.sm.states.Rakp3Waiting(int, Rakp1, Rakp1ResponseData, CipherSuite) may expose internal representation by storing an externally mutable object into Rakp3Waiting.rakp1
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/sm/states/Rakp3Waiting.java#L76
new org.metricshub.ipmi.core.sm.states.Rakp3Waiting(int, Rakp1, Rakp1ResponseData, CipherSuite) may expose internal representation by storing an externally mutable object into Rakp3Waiting.rakp1ResponseData
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/transport/UdpMessage.java#L66
org.metricshub.ipmi.core.transport.UdpMessage.getAddress() may expose internal representation by returning UdpMessage.address
EI_EXPOSE_REP: src/main/java/org/metricshub/ipmi/core/transport/UdpMessage.java#L78
org.metricshub.ipmi.core.transport.UdpMessage.getMessage() may expose internal representation by returning UdpMessage.message
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/transport/UdpMessage.java#L74
org.metricshub.ipmi.core.transport.UdpMessage.setAddress(InetAddress) may expose internal representation by storing an externally mutable object into UdpMessage.address
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/transport/UdpMessage.java#L82
org.metricshub.ipmi.core.transport.UdpMessage.setMessage(byte[]) may expose internal representation by storing an externally mutable object into UdpMessage.message
AT_STALE_THREAD_WRITE_OF_PRIMITIVE: src/main/java/org/metricshub/ipmi/core/transport/UdpMessenger.java#L169
Shared primitive variable "closing" in one thread may not yield the value of the most recent write from another thread
AT_STALE_THREAD_WRITE_OF_PRIMITIVE: src/main/java/org/metricshub/ipmi/core/transport/UdpMessenger.java#L105
Shared primitive variable "bufferSize" in one thread may not yield the value of the most recent write from another thread
SSD_DO_NOT_USE_INSTANCE_LOCK_ON_SHARED_STATIC_DATA: src/main/java/org/metricshub/ipmi/core/transport/UdpMessenger.java#L228
Static field "sentPackets" is modified by an instance level synchronized method.
ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD: src/main/java/org/metricshub/ipmi/core/transport/UdpMessenger.java#L92
Write to static field org.metricshub.ipmi.core.transport.UdpMessenger.sentPackets from instance method new org.metricshub.ipmi.core.transport.UdpMessenger(int, InetAddress)
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/transport/UdpNotifier.java#L34
new org.metricshub.ipmi.core.transport.UdpNotifier(UdpMessage, List) may expose internal representation by storing an externally mutable object into UdpNotifier.listeners
EI_EXPOSE_REP2: src/main/java/org/metricshub/ipmi/core/transport/UdpNotifier.java#L33
new org.metricshub.ipmi.core.transport.UdpNotifier(UdpMessage, List) may expose internal representation by storing an externally mutable object into UdpNotifier.message
build / build / build
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/checkout@v4, actions/setup-java@v4, jwgmeligmeyling/checkstyle-github-action@v1.2, jwgmeligmeyling/pmd-github-action@v1.2, jwgmeligmeyling/spotbugs-github-action@v1.2, s4u/maven-settings-action@v3.1.0, sentrysoftware/upload-buildinfo-outputs@v2. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
build / build / build
setup-java v4 is deprecated and will no longer receive updates. Please migrate to actions/setup-java@v5.
build / build / build
"The ubuntu-latest label will migrate to Ubuntu 26 beginning October 19, 2026. For more information, see https://github.com/actions/runner-images/issues/14748"

Artifacts

Produced during runtime
Name Size Digest
ipmi-java-1.2.03-SNAPSHOT-sources.jar
368 KB
sha256:48185433190d3b12ec4a2eb16c97a34556a73e0f8f3c7157dabfa47357e741f0
ipmi-java-1.2.03-SNAPSHOT.jar
350 KB
sha256:ef6de1b0491e57229d3a49c5c98dc88535475b48d6dadf080da9292f54841e54