aeron-client/src/main/java/io/aeron/protocol/StatusMessageFlyweight.java
public int applicationSpecificFeedback(final byte[] destination)
    {
        final int frameLength = frameLength();
        int result = 0;

        if (frameLength > HEADER_LENGTH)
        {
            if (frameLength > capacity())
            {
                throw new AeronException(String.format(
                    "SM application specific feedback (%d) is truncated (%d)",
                    frameLength - HEADER_LENGTH,
                    capacity() - HEADER_LENGTH));
            }

            final int copyLength = Math.min(destination.length, frameLength - HEADER_LENGTH);
            getBytes(APP_SPECIFIC_FEEDBACK_FIELD_OFFSET, destination, 0, copyLength);
            result = copyLength;
        }

        return result;
    }
public int applicationSpecificFeedback(final byte[] destination)
    {
        final int frameLength = frameLength();
        int result = 0;

        if (frameLength > HEADER_LENGTH)
        {
            if (frameLength > capacity())
            {
                throw new AeronException(String.format(
                    "SM application specific feedback (%d) is truncated (%d)",
                    frameLength - HEADER_LENGTH,
                    capacity() - HEADER_LENGTH));
            }

            final int copyLength = Math.min(destination.length, frameLength - HEADER_LENGTH);
            getBytes(APP_SPECIFIC_FEEDBACK_FIELD_OFFSET, destination, 0, copyLength);
            result = copyLength;
        }

        return result;
    }
Retrieve the Application Specific Feedback (if present) from the Status Message.

@param destination to store the feedback
@return the number of bytes in the feedback copied into the destination