# Copyright 2022 Evgeny Vereshchagin # Copyright 2022 Collabora Ltd. # SPDX-License-Identifier: MIT # # This is an annotated hex-dump of a message originally generated by a # fuzzer. # # To output as binary: # sed -e 's/#.*//' test/data/invalid-messages/issue418.message-raw.hex | # xxd -p -r - test/data/invalid-messages/issue418.message-raw # # The rather non-specific name is because this message is invalid in at # least three separate ways: # # - parentheses and curly brackets in the signature are not nested correctly # - the signature of one header field is of zero length # - the signature of another header field is longer than the message # # mis-nested-sig.message-raw.hex, # truncated-variant-sig.message-raw.hex, # zero-length-variant-sig.message-raw.hex are simplified versions of this # message with only one of those reasons to be invalid. # Offset % 0x10: # 0001 0203 0405 0607 0809 0a0b 0c0d 0e0f 6c # little-endian 8f # an undefined message type 28 # flags 01 # major protocol version 1 0000 0000 # message body is 0 bytes 7b22 0008 # serial number 0x0800227b 1800 0000 # header is an array of 0x18 bytes of struct (yv) fd # header field code 0xfd (an undefined header) 15 # signature is 0x15 = 21 bytes 2874 617b 7961 7b64 617b 7961 7b79 # "(ta{ya{da{ya{y"... 6171 7d7d 7d29 7d00 # "aq}}})}" \0 0000 0000 0000 0000 # padding to 8-byte boundary 0c # header field code 0x0c 00 # signature is zero-length (invalid!) 00 # "" \0 00 0000 0000 0000 0000 0000 0000 # padding fe # header field code 0xfe ff # signature is 0xff = 255 bytes 0000 # truncated (invalid!) #sha1 e5d2bc02229d93ffdd7f589b7123adb3902ee981