tabish121 commented on code in PR #4833: URL: https://github.com/apache/activemq-artemis/pull/4833#discussion_r1526667612
########## artemis-protocols/artemis-openwire-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/openwire/OpenWireMessageConverter.java: ########## @@ -590,9 +591,11 @@ private static ActiveMQMessage toAMQMessage(MessageReference reference, } amqMsg.setCommandId(commandId); - final SimpleString corrId = getObjectProperty(coreMessage, SimpleString.class, OpenWireConstants.JMS_CORRELATION_ID_PROPERTY); - if (corrId != null) { - amqMsg.setCorrelationId(corrId.toString()); + final Object correlationID = coreMessage.getCorrelationID(); + if (correlationID instanceof String || correlationID instanceof SimpleString) { + amqMsg.setCorrelationId(correlationID.toString()); + } else if (correlationID instanceof byte[]) { + amqMsg.setCorrelationId(new String((byte[])correlationID, StandardCharsets.UTF_8)); Review Comment: You could send bytes for a normal two byte encoding where the second byte violates the prefix value of the encoding rules. The UTF8 spec uses upper bits of the bytes to stretch out the characters encodings across subsequent bytes, looking into the proton-j read UTF8 reading code in ReadableBuffer would likely shed a bit of light on how to corrupt a trailing encoded byte. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: gitbox-unsubscr...@activemq.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org