[ 
https://issues.apache.org/jira/browse/ARTEMIS-5114?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Justin Bertram updated ARTEMIS-5114:
------------------------------------
    Description: 
The {{flushConfirmations()}} method does not check {{connection == null}}. 
After calling the logger, the {{doWrite()}} method is called, which uses 
variables necessary for checking for null, such as {{confirmed}} and 
{{connection}}. If {{confirmed}} is checked in {{replayCommands()}} then there 
is no check for {{connection}} which will result in a {{NullPointerException}}. 
It is necessary to add validation either in the {{doWrite()}} method itself or 
before each use of it.
[https://github.com/apache/activemq-artemis/blob/4c6cded2e79cf10d2323de1b5fa7418b289ab034/artemis-core-client/src/main/java/org/apache/activemq/artemis/core/protocol/core/impl/ChannelImpl.java#L749-L764]

also ask you to check this place: 
[https://github.com/apache/activemq-artemis/blob/4c6cded2e79cf10d2323de1b5fa7418b289ab034/artemis-core-client/src/main/java/org/apache/activemq/artemis/core/protocol/core/impl/ChannelImpl.java#L696-L707]

  was:
The flushConfirmations() method does not check for connection == null. After 
calling the logger, the doWrite() method is called, which uses variables 
necessary for checking for null, such as confirmed and connection. If the 
confirmed value is checked in replayCommands(), then there is no check for 
connection, which will result in a NullPointerException. It is necessary to add 
validation either in the doWrite() method itself, or before each use of it.
[https://github.com/apache/activemq-artemis/blob/4c6cded2e79cf10d2323de1b5fa7418b289ab034/artemis-core-client/src/main/java/org/apache/activemq/artemis/core/protocol/core/impl/ChannelImpl.java#L749-L764]

also ask you to check this place: 
[https://github.com/apache/activemq-artemis/blob/4c6cded2e79cf10d2323de1b5fa7418b289ab034/artemis-core-client/src/main/java/org/apache/activemq/artemis/core/protocol/core/impl/ChannelImpl.java#L696-L707]

Found by Linux Verification Center (portal.linuxtesting.ru) with SVACE.
Author A.Rudyuk.


> deref after NULL
> ----------------
>
>                 Key: ARTEMIS-5114
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-5114
>             Project: ActiveMQ Artemis
>          Issue Type: Bug
>            Reporter: Alex
>            Priority: Major
>
> The {{flushConfirmations()}} method does not check {{connection == null}}. 
> After calling the logger, the {{doWrite()}} method is called, which uses 
> variables necessary for checking for null, such as {{confirmed}} and 
> {{connection}}. If {{confirmed}} is checked in {{replayCommands()}} then 
> there is no check for {{connection}} which will result in a 
> {{NullPointerException}}. It is necessary to add validation either in the 
> {{doWrite()}} method itself or before each use of it.
> [https://github.com/apache/activemq-artemis/blob/4c6cded2e79cf10d2323de1b5fa7418b289ab034/artemis-core-client/src/main/java/org/apache/activemq/artemis/core/protocol/core/impl/ChannelImpl.java#L749-L764]
> also ask you to check this place: 
> [https://github.com/apache/activemq-artemis/blob/4c6cded2e79cf10d2323de1b5fa7418b289ab034/artemis-core-client/src/main/java/org/apache/activemq/artemis/core/protocol/core/impl/ChannelImpl.java#L696-L707]



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
For further information, visit: https://activemq.apache.org/contact


Reply via email to