From e77f77699905a00a855c4884e439c3276ae87275 Mon Sep 17 00:00:00 2001 From: Mattias Wadman Date: Thu, 1 Dec 2022 20:37:40 +0100 Subject: [PATCH] decode,interp: Rename unknown gap fields from "unknown#" to "gap#" Think it makes it clearer and also less likely to collide with a field name a deocder wants to use. --- doc/TODO.md | 4 +- doc/dev.md | 4 +- doc/formats.svg | 468 +++++++++--------- doc/usage.md | 6 +- .../regression/nestedrangepanic.fqtest | 2 +- format/asn1/testdata/tc13.ber.fqtest | 2 +- format/asn1/testdata/tc14.ber.fqtest | 2 +- format/asn1/testdata/tc15.ber.fqtest | 2 +- format/asn1/testdata/tc16.ber.fqtest | 2 +- format/asn1/testdata/tc17.ber.fqtest | 2 +- format/asn1/testdata/tc2.ber.fqtest | 2 +- format/asn1/testdata/tc23.ber.fqtest | 2 +- format/asn1/testdata/tc25.ber.fqtest | 2 +- format/asn1/testdata/tc26.ber.fqtest | 2 +- format/asn1/testdata/tc30.ber.fqtest | 2 +- format/asn1/testdata/tc31.ber.fqtest | 2 +- format/asn1/testdata/tc33.ber.fqtest | 2 +- format/asn1/testdata/tc34.ber.fqtest | 2 +- format/asn1/testdata/tc4.ber.fqtest | 2 +- format/asn1/testdata/tc42.ber.fqtest | 2 +- format/asn1/testdata/tc46.ber.fqtest | 2 +- format/asn1/testdata/tc47.ber.fqtest | 2 +- format/asn1/testdata/tc48.ber.fqtest | 2 +- format/asn1/testdata/tc8.ber.fqtest | 2 +- format/cbor/testdata/appendix_a.fqtest | 2 +- .../elf/testdata/linux_386/a_dynamic.fqtest | 12 +- format/elf/testdata/linux_386/a_static.fqtest | 10 +- .../elf/testdata/linux_386/a_stripped.fqtest | 8 +- format/elf/testdata/linux_386/coredump.fqtest | 2 +- format/elf/testdata/linux_386/libbbb.a.fqtest | 4 +- .../elf/testdata/linux_386/libbbb.so.fqtest | 10 +- .../elf/testdata/linux_amd64/a_dynamic.fqtest | 14 +- .../elf/testdata/linux_amd64/a_static.fqtest | 14 +- .../testdata/linux_amd64/a_stripped.fqtest | 8 +- .../elf/testdata/linux_amd64/coredump.fqtest | 2 +- .../elf/testdata/linux_amd64/libbbb.a.fqtest | 4 +- .../elf/testdata/linux_amd64/libbbb.so.fqtest | 10 +- .../elf/testdata/linux_arm64/a_dynamic.fqtest | 8 +- .../elf/testdata/linux_arm64/a_static.fqtest | 8 +- .../testdata/linux_arm64/a_stripped.fqtest | 4 +- .../elf/testdata/linux_arm64/libbbb.a.fqtest | 4 +- .../elf/testdata/linux_arm64/libbbb.so.fqtest | 8 +- .../testdata/linux_arm_v6/a_dynamic.fqtest | 10 +- .../elf/testdata/linux_arm_v6/a_static.fqtest | 10 +- .../testdata/linux_arm_v6/a_stripped.fqtest | 4 +- .../elf/testdata/linux_arm_v6/libbbb.a.fqtest | 2 +- .../testdata/linux_arm_v6/libbbb.so.fqtest | 8 +- .../testdata/linux_arm_v7/a_dynamic.fqtest | 10 +- .../elf/testdata/linux_arm_v7/a_static.fqtest | 10 +- .../testdata/linux_arm_v7/a_stripped.fqtest | 4 +- .../elf/testdata/linux_arm_v7/libbbb.a.fqtest | 2 +- .../testdata/linux_arm_v7/libbbb.so.fqtest | 8 +- .../elf/testdata/regression/bigstrtab.fqtest | 2 +- format/json/testdata/jsonl.fqtest | 2 +- .../testdata/darwin_aarch64/a_dynamic.fqtest | 12 +- .../testdata/darwin_aarch64/a_static.fqtest | 12 +- .../testdata/darwin_aarch64/a_stripped.fqtest | 12 +- .../testdata/darwin_aarch64/libbbb.so.fqtest | 10 +- .../testdata/darwin_amd64/a_dynamic.fqtest | 10 +- .../testdata/darwin_amd64/a_static.fqtest | 10 +- .../testdata/darwin_amd64/a_stripped.fqtest | 10 +- .../testdata/darwin_amd64/libbbb.so.fqtest | 12 +- .../testdata/darwin_fat/a_dynamic.fqtest | 26 +- .../macho/testdata/darwin_fat/a_static.fqtest | 26 +- .../testdata/darwin_fat/a_stripped.fqtest | 26 +- .../testdata/darwin_fat/libbbb.so.fqtest | 26 +- format/matroska/testdata/hevc.fqtest | 6 +- .../mp3/testdata/header-zeros-frames.fqtest | 2 +- format/mp3/testdata/unknown.fqtest | 6 +- format/mp4/testdata/heic.fqtest | 6 +- format/mp4/testdata/hevc.fqtest | 6 +- format/mpeg/testdata/hevc_annexb.fqtest | 6 +- format/pcap/testdata/ns.fqtest | 2 +- format/png/testdata/4x4a.fqtest | 2 +- format/riff/testdata/flac.avi.fqtest | 2 +- format/riff/testdata/mp3.avi.fqtest | 2 +- format/tiff/testdata/4x4.fqtest | 2 +- format/tiff/testdata/infinite.fqtest | 4 +- pkg/decode/decode.go | 8 +- pkg/interp/decode.go | 6 +- pkg/interp/testdata/argvars.fqtest | 2 +- pkg/interp/testdata/basic.fqtest | 4 +- pkg/interp/testdata/completion.fqtest | 2 +- pkg/interp/testdata/decode.fqtest | 8 +- pkg/interp/testdata/display.fqtest | 2 +- pkg/interp/testdata/repl.fqtest | 4 +- pkg/interp/testdata/tovalue.fqtest | 2 +- pkg/interp/testdata/value.fqtest | 14 +- pkg/interp/testdata/value_array.fqtest | 2 +- pkg/interp/testdata/value_boolean.fqtest | 2 +- pkg/interp/testdata/value_json_array.fqtest | 2 +- pkg/interp/testdata/value_json_object.fqtest | 2 +- pkg/interp/testdata/value_null.fqtest | 2 +- pkg/interp/testdata/value_number.fqtest | 2 +- pkg/interp/testdata/value_object.fqtest | 2 +- pkg/interp/testdata/value_string.fqtest | 2 +- pkg/interp/testdata/value_t.fqtest.tmpl | 2 +- pkg/scalar/scalar.go | 2 +- 98 files changed, 518 insertions(+), 518 deletions(-) diff --git a/doc/TODO.md b/doc/TODO.md index 324a75be..586696ba 100644 --- a/doc/TODO.md +++ b/doc/TODO.md @@ -4,10 +4,10 @@ - Buffers/string duality is confusing, most string functions should be wrapped to understand binary. - REPL cancel seems to sometimes exit a sub-REPl without properly cleanup options. - Value errors, can only be accessed with `._error`. -- Framed (add unknown in gaps) decode should be on struct level not format? +- Framed (add unknown gaps) decode should be on struct level not format? - `tovalue({bits_format: "base64"})` only affect root value. - Auto complete of non-global variables is broken. `scope` is broken for variables. -- `echo '{} {} {}' | jq` vs `echo '{} {} {}' | fq` works differently. fq currently decodes one root format and might add unknown fields etc. Maybe should work differently for `json` format? +- `echo '{} {} {}' | jq` vs `echo '{} {} {}' | fq` works differently. fq currently decodes one root format and might add unknown gap fields etc. Maybe should work differently for `json` format? - `format/0` overlap with jq builtin `format/1`. What to rename it to? `decode_format`? - repl expression returning a value that produced lots of output can't be interrupted. This is becaus ctrl-c currently only interrupts the eval interpreter, outputted value is printed (`display`) by parent interpreter. - Rework cli/repl user interrupt (context cancel via ctrl-c), see comment in Interp.Main diff --git a/doc/dev.md b/doc/dev.md index c4a7c6b6..9f08cc65 100644 --- a/doc/dev.md +++ b/doc/dev.md @@ -14,8 +14,8 @@ to `format/format.go` and don't forget to change the string constant. Prefer a nice and easy query tree structure over nice decoder implementation. - Use same names, symbols, constant number bases etc as in specification. But maybe in lowercase to be jq/JSON-ish. -- Decode only ranges you know what they are. If possible let "parent" decide what to do with unknown -bits by using `*Decode*Len/Range/Limit` functions. fq will also automatically add "unknown" fields if +- Decode only ranges you know what they are. If possible let "parent" decide what to do with unknown gaps +bits by using `*Decode*Len/Range/Limit` functions. fq will also automatically add "gap" fields if it finds gaps. - Try to not decode too much as one value. A length encoded int could be two fields, but maybe a length prefixed string should be one. diff --git a/doc/formats.svg b/doc/formats.svg index 6e17e402..76928e91 100644 --- a/doc/formats.svg +++ b/doc/formats.svg @@ -8,21 +8,21 @@ viewBox="0.00 0.00 3979.83 2095.01" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> formats - + adts - + adts - + adts_frame adts_frame - + adts_frame - + aac_frame @@ -34,7 +34,7 @@ aac_frame - + aac_frame @@ -46,9 +46,9 @@ apev2 - + apev2 - + image @@ -66,11 +66,11 @@ jpeg - + jpeg - + exif - + icc_profile @@ -82,55 +82,55 @@ mp4 - + mp4 - + aac_frame - + av1_ccr - + av1_frame - + avc_au - + avc_dcr - + flac_frame - + flac_metadatablocks - + hevc_au - + hevc_dcr - + icc_profile - + id3v2 - + image - + jpeg - + mp3_frame - + mpeg_es - + mpeg_pes_packet - + opus_packet - + png - + prores_frame - + protobuf_widevine - + pssh_playready - + vorbis_packet - + vp9_frame - + vpx_ccr @@ -142,11 +142,11 @@ png - + png - + icc_profile - + exif @@ -158,9 +158,9 @@ tiff - + tiff - + icc_profile @@ -172,9 +172,9 @@ webp - + webp - + vp8_frame @@ -186,7 +186,7 @@ gif - + gif @@ -198,9 +198,9 @@ ar - + ar - + probe @@ -230,15 +230,15 @@ avi - + avi - + avc_au - + hevc_au - + mp3_frame - + flac_frame @@ -250,9 +250,9 @@ bitcoin_blkdat - + bitcoin_blkdat - + bitcoin_block @@ -264,9 +264,9 @@ bzip2 - + bzip2 - + probe @@ -278,11 +278,11 @@ flac - + flac - + flac_metadatablocks - + flac_frame @@ -294,9 +294,9 @@ gzip - + gzip - + probe @@ -314,9 +314,9 @@ macho_fat - + macho_fat - + macho @@ -328,7 +328,7 @@ macho - + macho @@ -340,45 +340,45 @@ matroska - + matroska - + aac_frame - + av1_ccr - + av1_frame - + avc_au - + avc_dcr - + flac_frame - + flac_metadatablocks - + hevc_au - + hevc_dcr - + image - + mp3_frame - + mpeg_asc - + mpeg_pes_packet - + mpeg_spu - + opus_packet - + vorbis_packet - + vp8_frame - + vp9_cfm - + vp9_frame @@ -390,17 +390,17 @@ mp3 - + mp3 - + id3v2 - + id3v1 - + id3v11 - + apev2 - + mp3_frame @@ -424,17 +424,17 @@ ogg - + ogg - + ogg_page - + vorbis_packet - + opus_packet - + flac_metadatablock - + flac_frame @@ -446,13 +446,13 @@ pcap - + pcap - + link_frame - + tcp_stream - + ipv4_packet @@ -464,13 +464,13 @@ pcapng - + pcapng - + link_frame - + tcp_stream - + ipv4_packet @@ -482,9 +482,9 @@ tar - + tar - + probe @@ -502,13 +502,13 @@ wav - + wav - + id3v2 - + id3v1 - + id3v11 @@ -526,9 +526,9 @@ zip - + zip - + probe @@ -540,7 +540,7 @@ avro_ocf - + avro_ocf @@ -552,7 +552,7 @@ bplist - + bplist @@ -564,7 +564,7 @@ elf - + elf @@ -582,7 +582,7 @@ json - + json @@ -594,7 +594,7 @@ jsonl - + jsonl @@ -606,7 +606,7 @@ mpeg_ts - + mpeg_ts @@ -618,7 +618,7 @@ toml - + toml @@ -630,7 +630,7 @@ wasm - + wasm @@ -642,7 +642,7 @@ xml - + xml @@ -654,7 +654,7 @@ yaml - + yaml @@ -666,15 +666,15 @@ av1_frame - + av1_frame - + av1_obu av1_obu - + av1_obu @@ -686,21 +686,21 @@ avc_annexb - + avc_annexb - + avc_nalu avc_nalu - + avc_nalu - + avc_sps - + avc_pps - + avc_sei @@ -712,7 +712,7 @@ avc_sps - + avc_sps @@ -724,7 +724,7 @@ avc_pps - + avc_pps @@ -736,7 +736,7 @@ avc_sei - + avc_sei @@ -748,9 +748,9 @@ avc_au - + avc_au - + avc_nalu @@ -762,9 +762,9 @@ avc_dcr - + avc_dcr - + avc_nalu @@ -782,9 +782,9 @@ hevc_au - + hevc_au - + hevc_nalu @@ -796,9 +796,9 @@ mp3_frame - + mp3_frame - + mp3_frame_tags @@ -810,7 +810,7 @@ flac_frame - + flac_frame @@ -822,13 +822,13 @@ hevc_nalu - + hevc_nalu - + hevc_vps - + hevc_pps - + hevc_sps @@ -840,7 +840,7 @@ mp3_frame_tags - + mp3_frame_tags @@ -852,9 +852,9 @@ bitcoin_block - + bitcoin_block - + bitcoin_transaction @@ -866,9 +866,9 @@ bitcoin_transaction - + bitcoin_transaction - + bitcoin_script @@ -880,7 +880,7 @@ bitcoin_script - + bitcoin_script @@ -892,9 +892,9 @@ bsd_loopback_frame - + bsd_loopback_frame - + inet_packet @@ -912,9 +912,9 @@ ipv4_packet - + ipv4_packet - + ip_packet @@ -926,9 +926,9 @@ ipv6_packet - + ipv6_packet - + ip_packet @@ -946,9 +946,9 @@ ether8023_frame - + ether8023_frame - + inet_packet @@ -966,9 +966,9 @@ flac_metadatablocks - + flac_metadatablocks - + flac_metadatablock @@ -980,13 +980,13 @@ flac_metadatablock - + flac_metadatablock - + flac_streaminfo - + flac_picture - + vorbis_comment @@ -998,7 +998,7 @@ flac_streaminfo - + flac_streaminfo @@ -1010,9 +1010,9 @@ flac_picture - + flac_picture - + image @@ -1024,9 +1024,9 @@ vorbis_comment - + vorbis_comment - + flac_picture @@ -1056,9 +1056,9 @@ hevc_annexb - + hevc_annexb - + hevc_nalu @@ -1070,7 +1070,7 @@ hevc_vps - + hevc_vps @@ -1082,7 +1082,7 @@ hevc_pps - + hevc_pps @@ -1094,7 +1094,7 @@ hevc_sps - + hevc_sps @@ -1106,9 +1106,9 @@ hevc_dcr - + hevc_dcr - + hevc_nalu @@ -1120,9 +1120,9 @@ id3v2 - + id3v2 - + image @@ -1146,9 +1146,9 @@ udp_datagram - + udp_datagram - + udp_payload @@ -1160,7 +1160,7 @@ icmp - + icmp @@ -1172,7 +1172,7 @@ icmpv6 - + icmpv6 @@ -1184,7 +1184,7 @@ tcp_segment - + tcp_segment @@ -1202,7 +1202,7 @@ exif - + exif @@ -1214,7 +1214,7 @@ icc_profile - + icc_profile @@ -1292,7 +1292,7 @@ av1_ccr - + av1_ccr @@ -1304,7 +1304,7 @@ mpeg_asc - + mpeg_asc @@ -1316,7 +1316,7 @@ mpeg_pes_packet - + mpeg_pes_packet @@ -1328,7 +1328,7 @@ mpeg_spu - + mpeg_spu @@ -1340,9 +1340,9 @@ opus_packet - + opus_packet - + vorbis_comment @@ -1354,9 +1354,9 @@ vorbis_packet - + vorbis_packet - + vorbis_comment @@ -1368,7 +1368,7 @@ vp8_frame - + vp8_frame @@ -1380,7 +1380,7 @@ vp9_cfm - + vp9_cfm @@ -1392,7 +1392,7 @@ vp9_frame - + vp9_frame @@ -1434,7 +1434,7 @@ id3v1 - + id3v1 @@ -1446,7 +1446,7 @@ id3v11 - + id3v11 @@ -1566,11 +1566,11 @@ mpeg_es - + mpeg_es - + mpeg_asc - + vorbis_packet @@ -1588,7 +1588,7 @@ prores_frame - + prores_frame @@ -1600,9 +1600,9 @@ protobuf_widevine - + protobuf_widevine - + protobuf @@ -1614,7 +1614,7 @@ pssh_playready - + pssh_playready @@ -1626,7 +1626,7 @@ vpx_ccr - + vpx_ccr @@ -1662,7 +1662,7 @@ protobuf - + protobuf @@ -1674,11 +1674,11 @@ mpeg_pes - + mpeg_pes - + mpeg_pes_packet - + mpeg_spu @@ -1720,7 +1720,7 @@ ogg_page - + ogg_page @@ -1774,9 +1774,9 @@ sll2_packet - + sll2_packet - + inet_packet @@ -1788,9 +1788,9 @@ sll_packet - + sll_packet - + inet_packet @@ -1802,11 +1802,11 @@ rtmp - + rtmp - + amf0 - + mpeg_asc @@ -1818,7 +1818,7 @@ dns_tcp - + dns_tcp @@ -1854,7 +1854,7 @@ amf0 - + amf0 @@ -1902,7 +1902,7 @@ dns - + dns @@ -1944,67 +1944,67 @@ asn1_ber - + asn1_ber bencode - + bencode bits - + bits bson - + bson bytes - + bytes cbor - + cbor csv - + csv fairplay_spc - + fairplay_spc html - + html markdown - + markdown msgpack - + msgpack diff --git a/doc/usage.md b/doc/usage.md index a4859d7d..ab008eed 100644 --- a/doc/usage.md +++ b/doc/usage.md @@ -764,7 +764,7 @@ A value has these special keys (TODO: remove, are internal) - `_bits` bits in range as a binary - `_bytes` bits in range as binary using byte units - `_path` jq path to value -- `_unknown` value is un-decoded gap +- `_gap_` value is a un-decoded gap - `_symbol` symbolic string representation of value (optional) - `_description` longer description of value (optional) - `_format` name of decoded format (optional) @@ -791,11 +791,11 @@ Try add `select(...)?` to catch and ignore type errors in the select expression. ### Manual decode Sometimes fq fails to decode or you know there is valid data buried inside some binary or maybe -you know the format of some unknown value. Then you can decode manually. +you know the format of some gap field. Then you can decode manually.
 # try decode a `mp3_frame` that failed to decode
-$ fq -d mp3 '.unknown0 | mp3_frame' file.mp3
+$ fq -d mp3 '.gap0 | mp3_frame' file.mp3
 # skip first 10 bytes then decode as `mp3_frame`
 $ fq -d bytes '.[10:] | mp3_frame' file.mp3
 
diff --git a/format/asn1/testdata/regression/nestedrangepanic.fqtest b/format/asn1/testdata/regression/nestedrangepanic.fqtest index 941e580b..ef81c0df 100644 --- a/format/asn1/testdata/regression/nestedrangepanic.fqtest +++ b/format/asn1/testdata/regression/nestedrangepanic.fqtest @@ -7,6 +7,6 @@ $ fq -n '"7f1f76ba84212aba6eccaae5faf13b494b10f7dbcc7ff45f4a7c117faa80212f7fc3d5 0x00|7f 1f |.. | tag: 3999 0x00| 76 | v | length: 118 0x00| ba 84 21 2a ba 6e | ..!*.n | constructed[0:1]: -0x00| cc aa e5 fa f1 3b 49| .....;I| unknown0: raw bits +0x00| cc aa e5 fa f1 3b 49| .....;I| gap0: raw bits 0x10|4b 10 f7 db cc 7f f4 5f 4a 7c 11 7f aa 80 21 2f|K......_J|....!/| * |until 0x79.7 (end) (113) | | diff --git a/format/asn1/testdata/tc13.ber.fqtest b/format/asn1/testdata/tc13.ber.fqtest index 27db83e0..8ef52631 100644 --- a/format/asn1/testdata/tc13.ber.fqtest +++ b/format/asn1/testdata/tc13.ber.fqtest @@ -5,4 +5,4 @@ $ fq -d asn1_ber d tc13.ber 0x0|09 |. | form: "primitive" (0) 0x0|09 |. | tag: "real" (0x9) 0x0| 83 00 00 07 | .... | length: 7 -0x0| 83 04 ff ff ff fb| | ......| | unknown0: raw bits +0x0| 83 04 ff ff ff fb| | ......| | gap0: raw bits diff --git a/format/asn1/testdata/tc14.ber.fqtest b/format/asn1/testdata/tc14.ber.fqtest index 1b05623c..c6905ef4 100644 --- a/format/asn1/testdata/tc14.ber.fqtest +++ b/format/asn1/testdata/tc14.ber.fqtest @@ -5,4 +5,4 @@ $ fq -d asn1_ber d tc14.ber 0x0|09 |. | form: "primitive" (0) 0x0|09 |. | tag: "real" (0x9) 0x0| 83 00 00 07 | .... | length: 7 -0x0| 83 04| | ..| | unknown0: raw bits +0x0| 83 04| | ..| | gap0: raw bits diff --git a/format/asn1/testdata/tc15.ber.fqtest b/format/asn1/testdata/tc15.ber.fqtest index fb212f15..45b22fa1 100644 --- a/format/asn1/testdata/tc15.ber.fqtest +++ b/format/asn1/testdata/tc15.ber.fqtest @@ -11,4 +11,4 @@ $ fq -d asn1_ber d tc15.ber 0x0| 83 | . | scale: 0 0x0| 83 | . | format: 3 0x0| 09 | . | exp_bytes: 9 -0x0| 7f ff ff ff ff ff ff ff fb 05| | ..........| | unknown0: raw bits +0x0| 7f ff ff ff ff ff ff ff fb 05| | ..........| | gap0: raw bits diff --git a/format/asn1/testdata/tc16.ber.fqtest b/format/asn1/testdata/tc16.ber.fqtest index 42564549..467ef8d5 100644 --- a/format/asn1/testdata/tc16.ber.fqtest +++ b/format/asn1/testdata/tc16.ber.fqtest @@ -11,4 +11,4 @@ $ fq -d asn1_ber d tc16.ber 0x0| 80 | . | scale: 0 0x0| 80 | . | format: 0 0x0| fb | . | exp: -5 -0x0| 05 05 05 05 05 05 05 05 05 05| | ..........| | unknown0: raw bits +0x0| 05 05 05 05 05 05 05 05 05 05| | ..........| | gap0: raw bits diff --git a/format/asn1/testdata/tc17.ber.fqtest b/format/asn1/testdata/tc17.ber.fqtest index 38bcc53e..90704cde 100644 --- a/format/asn1/testdata/tc17.ber.fqtest +++ b/format/asn1/testdata/tc17.ber.fqtest @@ -11,5 +11,5 @@ $ fq -d asn1_ber d tc17.ber 0x00| af | . | scale: 3 0x00| af | . | format: 3 0x00| 09 | . | exp_bytes: 9 -0x00| fe ff ff ff ff ff ff ff ff 05 05 05| ............| unknown0: raw bits +0x00| fe ff ff ff ff ff ff ff ff 05 05 05| ............| gap0: raw bits 0x10|05 05 05 05 05 05| |......| | diff --git a/format/asn1/testdata/tc2.ber.fqtest b/format/asn1/testdata/tc2.ber.fqtest index 268b2494..ff3d0791 100644 --- a/format/asn1/testdata/tc2.ber.fqtest +++ b/format/asn1/testdata/tc2.ber.fqtest @@ -3,4 +3,4 @@ $ fq -d asn1_ber d tc2.ber | | | error: asn1_ber: Bool: failed at position 10 (read size 0 seek pos 0): EOF 0x0|9f |. | class: "context" (2) 0x0|9f |. | form: "primitive" (0) -0x0|9f ff ff ff ff ff ff ff ff ff| |..........| | unknown0: raw bits +0x0|9f ff ff ff ff ff ff ff ff ff| |..........| | gap0: raw bits diff --git a/format/asn1/testdata/tc23.ber.fqtest b/format/asn1/testdata/tc23.ber.fqtest index 5059a7b2..4ed7030b 100644 --- a/format/asn1/testdata/tc23.ber.fqtest +++ b/format/asn1/testdata/tc23.ber.fqtest @@ -5,4 +5,4 @@ $ fq -d asn1_ber d tc23.ber 0x0|06 |. | form: "primitive" (0) 0x0|06 |. | tag: "object_identifier" (0x6) 0x0| 11 | . | length: 17 -0x0| 7f ff ff ff ff ff| | ......| | unknown0: raw bits +0x0| 7f ff ff ff ff ff| | ......| | gap0: raw bits diff --git a/format/asn1/testdata/tc25.ber.fqtest b/format/asn1/testdata/tc25.ber.fqtest index 6d86f56a..b77925fd 100644 --- a/format/asn1/testdata/tc25.ber.fqtest +++ b/format/asn1/testdata/tc25.ber.fqtest @@ -5,4 +5,4 @@ $ fq -d asn1_ber dv tc25.ber 0x0|01 |. | tag: "boolean" (0x1) 0x0.3-0x0.7 (0.5) 0x0| 03 | . | length: 3 0x1-0x1.7 (1) 0x0| 00 | . | value: false (0) 0x2-0x2.7 (1) -0x0| 00 00| | ..| | unknown0: raw bits 0x3-0x4.7 (2) +0x0| 00 00| | ..| | gap0: raw bits 0x3-0x4.7 (2) diff --git a/format/asn1/testdata/tc26.ber.fqtest b/format/asn1/testdata/tc26.ber.fqtest index dd4aa81a..4f00e395 100644 --- a/format/asn1/testdata/tc26.ber.fqtest +++ b/format/asn1/testdata/tc26.ber.fqtest @@ -5,4 +5,4 @@ $ fq -d asn1_ber dv tc26.ber 0x0|01 |. | tag: "boolean" (0x1) 0x0.3-0x0.7 (0.5) 0x0| 03 | . | length: 3 0x1-0x1.7 (1) 0x0| 00 | . | value: false (0) 0x2-0x2.7 (1) -0x0| 00 01| | ..| | unknown0: raw bits 0x3-0x4.7 (2) +0x0| 00 01| | ..| | gap0: raw bits 0x3-0x4.7 (2) diff --git a/format/asn1/testdata/tc30.ber.fqtest b/format/asn1/testdata/tc30.ber.fqtest index 5d2bf0e4..5534e5c1 100644 --- a/format/asn1/testdata/tc30.ber.fqtest +++ b/format/asn1/testdata/tc30.ber.fqtest @@ -5,4 +5,4 @@ $ fq -d asn1_ber dv tc30.ber 0x0|05 |. | tag: "null" (0x5) 0x0.3-0x0.7 (0.5) 0x0| 03 | . | length: 3 0x1-0x1.7 (1) | | | value: null 0x2-NA (0) -0x0| 00 00 00| | ...| | unknown0: raw bits 0x2-0x4.7 (3) +0x0| 00 00 00| | ...| | gap0: raw bits 0x2-0x4.7 (3) diff --git a/format/asn1/testdata/tc31.ber.fqtest b/format/asn1/testdata/tc31.ber.fqtest index cf6d0bae..c7dfe12a 100644 --- a/format/asn1/testdata/tc31.ber.fqtest +++ b/format/asn1/testdata/tc31.ber.fqtest @@ -5,4 +5,4 @@ $ fq -d asn1_ber d tc31.ber 0x0|05 |. | form: "primitive" (0) 0x0|05 |. | tag: "null" (0x5) 0x0| 03 | . | length: 3 -0x0| 00 00| | ..| | unknown0: raw bits +0x0| 00 00| | ..| | gap0: raw bits diff --git a/format/asn1/testdata/tc33.ber.fqtest b/format/asn1/testdata/tc33.ber.fqtest index 1ed33731..c5ddbabe 100644 --- a/format/asn1/testdata/tc33.ber.fqtest +++ b/format/asn1/testdata/tc33.ber.fqtest @@ -6,4 +6,4 @@ $ fq -d asn1_ber d tc33.ber 0x0|03 |. | tag: "bit_string" (0x3) 0x0| 02 | . | length: 2 0x0| 0f | . | unused_bits_count: 15 -0x0| 0f| | .| | unknown0: raw bits +0x0| 0f| | .| | gap0: raw bits diff --git a/format/asn1/testdata/tc34.ber.fqtest b/format/asn1/testdata/tc34.ber.fqtest index 5708d877..45d56908 100644 --- a/format/asn1/testdata/tc34.ber.fqtest +++ b/format/asn1/testdata/tc34.ber.fqtest @@ -5,4 +5,4 @@ $ fq -d asn1_ber d tc34.ber 0x0|03 |. | form: "primitive" (0) 0x0|03 |. | tag: "bit_string" (0x3) 0x0| 02 | . | length: 2 -0x0| 04| | .| | unknown0: raw bits +0x0| 04| | .| | gap0: raw bits diff --git a/format/asn1/testdata/tc4.ber.fqtest b/format/asn1/testdata/tc4.ber.fqtest index 45f215e0..a866d3dd 100644 --- a/format/asn1/testdata/tc4.ber.fqtest +++ b/format/asn1/testdata/tc4.ber.fqtest @@ -4,4 +4,4 @@ $ fq -d asn1_ber d tc4.ber 0x0|9f |. | class: "context" (2) 0x0|9f |. | form: "primitive" (0) 0x0|9f ff ff ff ff ff ff ff ff 7f |.......... | tag: 18446744073709551615 -0x0| ff| | .| | unknown0: raw bits +0x0| ff| | .| | gap0: raw bits diff --git a/format/asn1/testdata/tc42.ber.fqtest b/format/asn1/testdata/tc42.ber.fqtest index 5fd70cc5..1ca159c4 100644 --- a/format/asn1/testdata/tc42.ber.fqtest +++ b/format/asn1/testdata/tc42.ber.fqtest @@ -17,4 +17,4 @@ $ fq -d asn1_ber d tc42.ber 0x0| 04 | . | form: "primitive" (0) 0x0| 04 | . | tag: "octet_string" (0x4) 0x0| 5f | _ | length: 95 -0x0| 29 1c d0 00 00| | )....| | unknown0: raw bits +0x0| 29 1c d0 00 00| | )....| | gap0: raw bits diff --git a/format/asn1/testdata/tc46.ber.fqtest b/format/asn1/testdata/tc46.ber.fqtest index 74e345f3..b0679b87 100644 --- a/format/asn1/testdata/tc46.ber.fqtest +++ b/format/asn1/testdata/tc46.ber.fqtest @@ -5,4 +5,4 @@ $ fq -d asn1_ber d tc46.ber 0x0|03 |. | form: "primitive" (0) 0x0|03 |. | tag: "bit_string" (0x3) 0x0| 80 | . | length: "indefinite" (0) -0x0| 04 0a 3b 5f 29 1c d0 00 00| | ..;_)....| | unknown0: raw bits +0x0| 04 0a 3b 5f 29 1c d0 00 00| | ..;_)....| | gap0: raw bits diff --git a/format/asn1/testdata/tc47.ber.fqtest b/format/asn1/testdata/tc47.ber.fqtest index 99d4b41e..f1c7ae93 100644 --- a/format/asn1/testdata/tc47.ber.fqtest +++ b/format/asn1/testdata/tc47.ber.fqtest @@ -18,4 +18,4 @@ $ fq -d asn1_ber d tc47.ber 0x00| 00 | . | form: "primitive" (0) 0x00| 00 | . | tag: "end_of_content" (0x0) 0x00| 00 | . | length: "indefinite" (0) -0x00| 03 02 00 01 03 02 04 0f| ........| unknown0: raw bits +0x00| 03 02 00 01 03 02 04 0f| ........| gap0: raw bits diff --git a/format/asn1/testdata/tc48.ber.fqtest b/format/asn1/testdata/tc48.ber.fqtest index b4753766..e7b1ef15 100644 --- a/format/asn1/testdata/tc48.ber.fqtest +++ b/format/asn1/testdata/tc48.ber.fqtest @@ -26,4 +26,4 @@ $ fq -d asn1_ber d tc48.ber 0x00| 03 | . | tag: "bit_string" (0x3) 0x00| 02 | . | length: 2 0x00| 0f | . | unused_bits_count: 15 -0x00| 0f 00 00| ...| unknown0: raw bits +0x00| 0f 00 00| ...| gap0: raw bits diff --git a/format/asn1/testdata/tc8.ber.fqtest b/format/asn1/testdata/tc8.ber.fqtest index c5630adb..93688ed1 100644 --- a/format/asn1/testdata/tc8.ber.fqtest +++ b/format/asn1/testdata/tc8.ber.fqtest @@ -8,4 +8,4 @@ $ fq -d asn1_ber dv tc8.ber 0x0| 41 | A | decimal_encoding: true 0x2.1-0x2.1 (0.1) 0x0| 41 | A | special: "minus_infinity" (1) 0x2.2-0x2.7 (0.6) | | | value: -Inf 0x3-NA (0) -0x0| 00 00| | ..| | unknown0: raw bits 0x3-0x4.7 (2) +0x0| 00 00| | ..| | gap0: raw bits 0x3-0x4.7 (2) diff --git a/format/cbor/testdata/appendix_a.fqtest b/format/cbor/testdata/appendix_a.fqtest index 8d150d20..8d779f5c 100644 --- a/format/cbor/testdata/appendix_a.fqtest +++ b/format/cbor/testdata/appendix_a.fqtest @@ -483,7 +483,7 @@ json> .[] | select(.decoded) | .cbor | frombase64 | cbor | dv 0x0| 64 | d | short_count: 4 0x7.3-0x7.7 (0.5) 0x0| 6d 69 6e 67 | ming | value: "ming" 0x8-0xb.7 (4) | | | value: "streaming" 0xc-NA (0) -0x0| ff| | .| | unknown0: raw bits 0xc-0xc.7 (1) +0x0| ff| | .| | gap0: raw bits 0xc-0xc.7 (1) |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (cbor) 0x0-0x1.7 (2) 0x0|9f |. | major_type: "array" (4) 0x0-0x0.2 (0.3) 0x0|9f |. | short_count: "indefinite" (31) 0x0.3-0x0.7 (0.5) diff --git a/format/elf/testdata/linux_386/a_dynamic.fqtest b/format/elf/testdata/linux_386/a_dynamic.fqtest index b6ecb8e8..cc316e84 100644 --- a/format/elf/testdata/linux_386/a_dynamic.fqtest +++ b/format/elf/testdata/linux_386/a_dynamic.fqtest @@ -1740,15 +1740,15 @@ $ fq -d elf dv a_dynamic 0x41e0| 00 00 00 00 | .... | info: 0 0x41e4-0x41e7.7 (4) 0x41e0| 01 00 00 00 | .... | addralign: 1 0x41e8-0x41eb.7 (4) 0x41e0| 00 00 00 00| ....| entsize: 0 0x41ec-0x41ef.7 (4) -0x03f0| 00 00 00 00 00 00 00 00 00 00 00 00| ............| unknown0: raw bits 0x3f4-0xfff.7 (3084) +0x03f0| 00 00 00 00 00 00 00 00 00 00 00 00| ............| gap0: raw bits 0x3f4-0xfff.7 (3084) 0x0400|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0xfff.7 (3084) | | -0x1310| 00 00 00| ...| unknown1: raw bits 0x131d-0x1fff.7 (3299) +0x1310| 00 00 00| ...| gap1: raw bits 0x131d-0x1fff.7 (3299) 0x1320|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x1fff.7 (3299) | | -0x20e0| 00 00 00 00 00 00 00 00| ........| unknown2: raw bits 0x20e8-0x2eef.7 (3592) +0x20e0| 00 00 00 00 00 00 00 00| ........| gap2: raw bits 0x20e8-0x2eef.7 (3592) 0x20f0|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x2eef.7 (3592) | | -0x3060| 00 00 | .. | unknown3: raw bits 0x3066-0x3067.7 (2) -0x35e0| 00| .| unknown4: raw bits 0x35ef-0x35ef.7 (1) -0x3c90| 00| .| unknown5: raw bits 0x3c9f-0x3c9f.7 (1) +0x3060| 00 00 | .. | gap3: raw bits 0x3066-0x3067.7 (2) +0x35e0| 00| .| gap4: raw bits 0x35ef-0x35ef.7 (1) +0x3c90| 00| .| gap5: raw bits 0x3c9f-0x3c9f.7 (1) diff --git a/format/elf/testdata/linux_386/a_static.fqtest b/format/elf/testdata/linux_386/a_static.fqtest index 6e0592ea..8ad05f80 100644 --- a/format/elf/testdata/linux_386/a_static.fqtest +++ b/format/elf/testdata/linux_386/a_static.fqtest @@ -1737,13 +1737,13 @@ $ fq -d elf dv a_static 0x41f0| 00 00 00 00| ....| info: 0 0x41fc-0x41ff.7 (4) 0x4200|01 00 00 00 |.... | addralign: 1 0x4200-0x4203.7 (4) 0x4200| 00 00 00 00| | ....| | entsize: 0 0x4204-0x4207.7 (4) -0x03c0| 00 00 00 00 00 00 00 00| ........| unknown0: raw bits 0x3c8-0xfff.7 (3128) +0x03c0| 00 00 00 00 00 00 00 00| ........| gap0: raw bits 0x3c8-0xfff.7 (3128) 0x03d0|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0xfff.7 (3128) | | -0x1330| 00 00 00| ...| unknown1: raw bits 0x133d-0x1fff.7 (3267) +0x1330| 00 00 00| ...| gap1: raw bits 0x133d-0x1fff.7 (3267) 0x1340|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x1fff.7 (3267) | | -0x2120|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| unknown2: raw bits 0x2120-0x2efb.7 (3548) +0x2120|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| gap2: raw bits 0x2120-0x2efb.7 (3548) * |until 0x2efb.7 (3548) | | -0x3060| 00 00 | .. | unknown3: raw bits 0x3066-0x3067.7 (2) -0x35e0| 00| .| unknown4: raw bits 0x35ef-0x35ef.7 (1) +0x3060| 00 00 | .. | gap3: raw bits 0x3066-0x3067.7 (2) +0x35e0| 00| .| gap4: raw bits 0x35ef-0x35ef.7 (1) diff --git a/format/elf/testdata/linux_386/a_stripped.fqtest b/format/elf/testdata/linux_386/a_stripped.fqtest index e13a3ec3..0077a88f 100644 --- a/format/elf/testdata/linux_386/a_stripped.fqtest +++ b/format/elf/testdata/linux_386/a_stripped.fqtest @@ -1051,13 +1051,13 @@ $ fq -d elf dv a_stripped 0x34d0| 00 00 00 00 | .... | info: 0 0x34d4-0x34d7.7 (4) 0x34d0| 01 00 00 00 | .... | addralign: 1 0x34d8-0x34db.7 (4) 0x34d0| 00 00 00 00| ....| entsize: 0 0x34dc-0x34df.7 (4) -0x03f0| 00 00 00 00 00 00 00 00 00 00 00 00| ............| unknown0: raw bits 0x3f4-0xfff.7 (3084) +0x03f0| 00 00 00 00 00 00 00 00 00 00 00 00| ............| gap0: raw bits 0x3f4-0xfff.7 (3084) 0x0400|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0xfff.7 (3084) | | -0x1310| 00 00 00| ...| unknown1: raw bits 0x131d-0x1fff.7 (3299) +0x1310| 00 00 00| ...| gap1: raw bits 0x131d-0x1fff.7 (3299) 0x1320|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x1fff.7 (3299) | | -0x20e0| 00 00 00 00 00 00 00 00| ........| unknown2: raw bits 0x20e8-0x2eef.7 (3592) +0x20e0| 00 00 00 00 00 00 00 00| ........| gap2: raw bits 0x20e8-0x2eef.7 (3592) 0x20f0|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x2eef.7 (3592) | | -0x3110| 00 00| ..| unknown3: raw bits 0x311e-0x311f.7 (2) +0x3110| 00 00| ..| gap3: raw bits 0x311e-0x311f.7 (2) diff --git a/format/elf/testdata/linux_386/coredump.fqtest b/format/elf/testdata/linux_386/coredump.fqtest index 72c87cae..f0cc0608 100644 --- a/format/elf/testdata/linux_386/coredump.fqtest +++ b/format/elf/testdata/linux_386/coredump.fqtest @@ -367,5 +367,5 @@ $ fq -d elf dv coredump 0x0e000|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| data: raw bits 0xe000-0x2efff.7 (135168) * |until 0x2efff.7 (end) (135168) | | | | | section_headers[0:0]: 0x254-NA (0) -0x00d00|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| unknown0: raw bits 0xd00-0xfff.7 (768) +0x00d00|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| gap0: raw bits 0xd00-0xfff.7 (768) * |until 0xfff.7 (768) | | diff --git a/format/elf/testdata/linux_386/libbbb.a.fqtest b/format/elf/testdata/linux_386/libbbb.a.fqtest index 10709ef2..36b82b36 100644 --- a/format/elf/testdata/linux_386/libbbb.a.fqtest +++ b/format/elf/testdata/linux_386/libbbb.a.fqtest @@ -613,6 +613,6 @@ $ fq -d ar dv libbbb.a 0x5e0| 00 00 00 00 | .... | info: 0 0x5e2-0x5e5.7 (4) 0x5e0| 01 00 00 00 | .... | addralign: 1 0x5e6-0x5e9.7 (4) 0x5e0| 00 00 00 00| | ....| | entsize: 0 0x5ea-0x5ed.7 (4) -0x2a0| 00 00 | .. | unknown0: raw bits 0x2a4-0x2a5.7 (2) -0x360| 00 00 00 | ... | unknown1: raw bits 0x36b-0x36d.7 (3) +0x2a0| 00 00 | .. | gap0: raw bits 0x2a4-0x2a5.7 (2) +0x360| 00 00 00 | ... | gap1: raw bits 0x36b-0x36d.7 (3) | | | program_headers[0:0]: 0x5ee-NA (0) diff --git a/format/elf/testdata/linux_386/libbbb.so.fqtest b/format/elf/testdata/linux_386/libbbb.so.fqtest index aa80e50f..2d23e94d 100644 --- a/format/elf/testdata/linux_386/libbbb.so.fqtest +++ b/format/elf/testdata/linux_386/libbbb.so.fqtest @@ -1529,14 +1529,14 @@ $ fq -d elf dv libbbb.so 0x3c60| 00 00 00 00 | .... | info: 0 0x3c64-0x3c67.7 (4) 0x3c60| 01 00 00 00 | .... | addralign: 1 0x3c68-0x3c6b.7 (4) 0x3c60| 00 00 00 00| ....| entsize: 0 0x3c6c-0x3c6f.7 (4) -0x0320| 00 00 00 00 00 00 00 00| ........| unknown0: raw bits 0x328-0xfff.7 (3288) +0x0320| 00 00 00 00 00 00 00 00| ........| gap0: raw bits 0x328-0xfff.7 (3288) 0x0330|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0xfff.7 (3288) | | -0x1270| 00 00 00| ...| unknown1: raw bits 0x127d-0x1fff.7 (3459) +0x1270| 00 00 00| ...| gap1: raw bits 0x127d-0x1fff.7 (3459) 0x1280|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x1fff.7 (3459) | | -0x20e0| 00 00 00 00| ....| unknown2: raw bits 0x20ec-0x2f13.7 (3624) +0x20e0| 00 00 00 00| ....| gap2: raw bits 0x20ec-0x2f13.7 (3624) 0x20f0|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x2f13.7 (3624) | | -0x3030| 00 00 00 | ... | unknown3: raw bits 0x3035-0x3037.7 (3) -0x3790| 00 00 00 | ... | unknown4: raw bits 0x3795-0x3797.7 (3) +0x3030| 00 00 00 | ... | gap3: raw bits 0x3035-0x3037.7 (3) +0x3790| 00 00 00 | ... | gap4: raw bits 0x3795-0x3797.7 (3) diff --git a/format/elf/testdata/linux_amd64/a_dynamic.fqtest b/format/elf/testdata/linux_amd64/a_dynamic.fqtest index 716a066b..2c907567 100644 --- a/format/elf/testdata/linux_amd64/a_dynamic.fqtest +++ b/format/elf/testdata/linux_amd64/a_dynamic.fqtest @@ -1734,16 +1734,16 @@ $ fq -d elf dv a_dynamic 0x4720| 00 00 00 00| ....| info: 0 0x472c-0x472f.7 (4) 0x4730|01 00 00 00 00 00 00 00 |........ | addralign: 1 0x4730-0x4737.7 (8) 0x4730| 00 00 00 00 00 00 00 00| ........| entsize: 0 0x4738-0x473f.7 (8) -0x0600| 00 00 00 00 00 00 00 00| ........| unknown0: raw bits 0x608-0xfff.7 (2552) +0x0600| 00 00 00 00 00 00 00 00| ........| gap0: raw bits 0x608-0xfff.7 (2552) 0x0610|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0xfff.7 (2552) | | -0x1280| 00 00 00 00 00 00 00| .......| unknown1: raw bits 0x1289-0x1fff.7 (3447) +0x1280| 00 00 00 00 00 00 00| .......| gap1: raw bits 0x1289-0x1fff.7 (3447) 0x1290|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x1fff.7 (3447) | | -0x20c0| 00 00 00 00| ....| unknown2: raw bits 0x20cc-0x2df7.7 (3372) +0x20c0| 00 00 00 00| ....| gap2: raw bits 0x20cc-0x2df7.7 (3372) 0x20d0|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x2df7.7 (3372) | | -0x3060| 00 00 00 00 00 00| ......| unknown3: raw bits 0x306a-0x306f.7 (6) -0x3410| 00 00 00| ...| unknown4: raw bits 0x341d-0x341f.7 (3) -0x3700| 00 00 00 00 00 00 00 00 00 00 00 00| ............| unknown5: raw bits 0x3704-0x370f.7 (12) -0x3eb0| 00 00 00| ...| unknown6: raw bits 0x3ebd-0x3ebf.7 (3) +0x3060| 00 00 00 00 00 00| ......| gap3: raw bits 0x306a-0x306f.7 (6) +0x3410| 00 00 00| ...| gap4: raw bits 0x341d-0x341f.7 (3) +0x3700| 00 00 00 00 00 00 00 00 00 00 00 00| ............| gap5: raw bits 0x3704-0x370f.7 (12) +0x3eb0| 00 00 00| ...| gap6: raw bits 0x3ebd-0x3ebf.7 (3) diff --git a/format/elf/testdata/linux_amd64/a_static.fqtest b/format/elf/testdata/linux_amd64/a_static.fqtest index 0e04aac5..dd2383cb 100644 --- a/format/elf/testdata/linux_amd64/a_static.fqtest +++ b/format/elf/testdata/linux_amd64/a_static.fqtest @@ -1724,15 +1724,15 @@ $ fq -d elf dv a_static 0x4740| 00 00 00 00| ....| info: 0 0x474c-0x474f.7 (4) 0x4750|01 00 00 00 00 00 00 00 |........ | addralign: 1 0x4750-0x4757.7 (8) 0x4750| 00 00 00 00 00 00 00 00| ........| entsize: 0 0x4758-0x475f.7 (8) -0x05c0|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| unknown0: raw bits 0x5c0-0xfff.7 (2624) +0x05c0|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| gap0: raw bits 0x5c0-0xfff.7 (2624) * |until 0xfff.7 (2624) | | -0x1280| 00 00 00 00 00 00 00| .......| unknown1: raw bits 0x1289-0x1fff.7 (3447) +0x1280| 00 00 00 00 00 00 00| .......| gap1: raw bits 0x1289-0x1fff.7 (3447) 0x1290|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x1fff.7 (3447) | | -0x2100| 00 00 00 00 00 00 00 00 00 00 00 00| ............| unknown2: raw bits 0x2104-0x2e0f.7 (3340) +0x2100| 00 00 00 00 00 00 00 00 00 00 00 00| ............| gap2: raw bits 0x2104-0x2e0f.7 (3340) 0x2110|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x2e0f.7 (3340) | | -0x3060| 00 00 00 00 00 00| ......| unknown3: raw bits 0x306a-0x306f.7 (6) -0x3410| 00 00 00| ...| unknown4: raw bits 0x341d-0x341f.7 (3) -0x3700| 00 00 00 00 00 00 00 00 00 00 00 00| ............| unknown5: raw bits 0x3704-0x370f.7 (12) -0x3ed0| 00 00| ..| unknown6: raw bits 0x3ede-0x3edf.7 (2) +0x3060| 00 00 00 00 00 00| ......| gap3: raw bits 0x306a-0x306f.7 (6) +0x3410| 00 00 00| ...| gap4: raw bits 0x341d-0x341f.7 (3) +0x3700| 00 00 00 00 00 00 00 00 00 00 00 00| ............| gap5: raw bits 0x3704-0x370f.7 (12) +0x3ed0| 00 00| ..| gap6: raw bits 0x3ede-0x3edf.7 (2) diff --git a/format/elf/testdata/linux_amd64/a_stripped.fqtest b/format/elf/testdata/linux_amd64/a_stripped.fqtest index 19d375b6..533f139a 100644 --- a/format/elf/testdata/linux_amd64/a_stripped.fqtest +++ b/format/elf/testdata/linux_amd64/a_stripped.fqtest @@ -1074,13 +1074,13 @@ $ fq -d elf dv a_stripped 0x3710| 00 00 00 00 | .... | info: 0 0x3714-0x3717.7 (4) 0x3710| 01 00 00 00 00 00 00 00| ........| addralign: 1 0x3718-0x371f.7 (8) 0x3720|00 00 00 00 00 00 00 00| |........| | entsize: 0 0x3720-0x3727.7 (8) -0x0600| 00 00 00 00 00 00 00 00| ........| unknown0: raw bits 0x608-0xfff.7 (2552) +0x0600| 00 00 00 00 00 00 00 00| ........| gap0: raw bits 0x608-0xfff.7 (2552) 0x0610|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0xfff.7 (2552) | | -0x1280| 00 00 00 00 00 00 00| .......| unknown1: raw bits 0x1289-0x1fff.7 (3447) +0x1280| 00 00 00 00 00 00 00| .......| gap1: raw bits 0x1289-0x1fff.7 (3447) 0x1290|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x1fff.7 (3447) | | -0x20c0| 00 00 00 00| ....| unknown2: raw bits 0x20cc-0x2df7.7 (3372) +0x20c0| 00 00 00 00| ....| gap2: raw bits 0x20cc-0x2df7.7 (3372) 0x20d0|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x2df7.7 (3372) | | -0x3120| 00 00 00 00 | .... | unknown3: raw bits 0x3124-0x3127.7 (4) +0x3120| 00 00 00 00 | .... | gap3: raw bits 0x3124-0x3127.7 (4) diff --git a/format/elf/testdata/linux_amd64/coredump.fqtest b/format/elf/testdata/linux_amd64/coredump.fqtest index 33a2b7a5..5ba6eaf5 100644 --- a/format/elf/testdata/linux_amd64/coredump.fqtest +++ b/format/elf/testdata/linux_amd64/coredump.fqtest @@ -371,6 +371,6 @@ $ fq -d elf dv coredump 0x31000|48 c7 c0 60 00 00 00 0f 05 c3 cc cc cc cc cc cc|H..`............| data: raw bits 0x31000-0x31fff.7 (4096) * |until 0x31fff.7 (end) (4096) | | | | | section_headers[0:0]: 0x430-NA (0) -0x01000| 00 00 00 00 00 00 00 00| ........| unknown0: raw bits 0x1008-0x1fff.7 (4088) +0x01000| 00 00 00 00 00 00 00 00| ........| gap0: raw bits 0x1008-0x1fff.7 (4088) 0x01010|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x1fff.7 (4088) | | diff --git a/format/elf/testdata/linux_amd64/libbbb.a.fqtest b/format/elf/testdata/linux_amd64/libbbb.a.fqtest index 24ed4af5..bc57c1e7 100644 --- a/format/elf/testdata/linux_amd64/libbbb.a.fqtest +++ b/format/elf/testdata/linux_amd64/libbbb.a.fqtest @@ -548,6 +548,6 @@ $ fq -d ar dv libbbb.a 0x660| 01 00 00 00| ....| addralign: 1 0x66c-0x673.7 (8) 0x670|00 00 00 00 |.... | 0x670| 00 00 00 00 00 00 00 00| | ........| | entsize: 0 0x674-0x67b.7 (8) -0x230| 00 00 00 00 00 00 | ...... | unknown0: raw bits 0x236-0x23b.7 (6) -0x2f0| 00 00 00 00 | .... | unknown1: raw bits 0x2f8-0x2fb.7 (4) +0x230| 00 00 00 00 00 00 | ...... | gap0: raw bits 0x236-0x23b.7 (6) +0x2f0| 00 00 00 00 | .... | gap1: raw bits 0x2f8-0x2fb.7 (4) | | | program_headers[0:0]: 0x67c-NA (0) diff --git a/format/elf/testdata/linux_amd64/libbbb.so.fqtest b/format/elf/testdata/linux_amd64/libbbb.so.fqtest index 2ed2d5a8..c87e9171 100644 --- a/format/elf/testdata/linux_amd64/libbbb.so.fqtest +++ b/format/elf/testdata/linux_amd64/libbbb.so.fqtest @@ -1523,12 +1523,12 @@ $ fq -d elf dv libbbb.so 0x4030| 00 00 00 00| ....| info: 0 0x403c-0x403f.7 (4) 0x4040|01 00 00 00 00 00 00 00 |........ | addralign: 1 0x4040-0x4047.7 (8) 0x4040| 00 00 00 00 00 00 00 00| ........| entsize: 0 0x4048-0x404f.7 (8) -0x04e0|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| unknown0: raw bits 0x4e0-0xfff.7 (2848) +0x04e0|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| gap0: raw bits 0x4e0-0xfff.7 (2848) * |until 0xfff.7 (2848) | | -0x1200| 00 00 00 00 00 00 00| .......| unknown1: raw bits 0x1209-0x1fff.7 (3575) +0x1200| 00 00 00 00 00 00 00| .......| gap1: raw bits 0x1209-0x1fff.7 (3575) 0x1210|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x1fff.7 (3575) | | -0x20e0|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| unknown2: raw bits 0x20e0-0x2e27.7 (3400) +0x20e0|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| gap2: raw bits 0x20e0-0x2e27.7 (3400) * |until 0x2e27.7 (3400) | | -0x3030| 00 00 00 00 00 00 00| .......| unknown3: raw bits 0x3039-0x303f.7 (7) -0x3880| 00 00 00 00 00| .....| unknown4: raw bits 0x388b-0x388f.7 (5) +0x3030| 00 00 00 00 00 00 00| .......| gap3: raw bits 0x3039-0x303f.7 (7) +0x3880| 00 00 00 00 00| .....| gap4: raw bits 0x388b-0x388f.7 (5) diff --git a/format/elf/testdata/linux_arm64/a_dynamic.fqtest b/format/elf/testdata/linux_arm64/a_dynamic.fqtest index 3bc9ea85..ebde7bd5 100644 --- a/format/elf/testdata/linux_arm64/a_dynamic.fqtest +++ b/format/elf/testdata/linux_arm64/a_dynamic.fqtest @@ -2055,9 +2055,9 @@ $ fq -d elf dv a_dynamic 0x2b50| 00 00 00 00| ....| info: 0 0x2b5c-0x2b5f.7 (4) 0x2b60|01 00 00 00 00 00 00 00 |........ | addralign: 1 0x2b60-0x2b67.7 (8) 0x2b60| 00 00 00 00 00 00 00 00| ........| entsize: 0 0x2b68-0x2b6f.7 (8) -0x0910| 00 00 00 00 00 00 00 00 00 00 00 00| ............| unknown0: raw bits 0x914-0xd8f.7 (1148) +0x0910| 00 00 00 00 00 00 00 00 00 00 00 00| ............| gap0: raw bits 0x914-0xd8f.7 (1148) 0x0920|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0xd8f.7 (1148) | | -0x1060| 00 00 00 00 00 00| ......| unknown1: raw bits 0x106a-0x106f.7 (6) -0x1420| 00 00 00 00 00 | ..... | unknown2: raw bits 0x1423-0x1427.7 (5) -0x2360| 00 00 00| ...| unknown3: raw bits 0x236d-0x236f.7 (3) +0x1060| 00 00 00 00 00 00| ......| gap1: raw bits 0x106a-0x106f.7 (6) +0x1420| 00 00 00 00 00 | ..... | gap2: raw bits 0x1423-0x1427.7 (5) +0x2360| 00 00 00| ...| gap3: raw bits 0x236d-0x236f.7 (3) diff --git a/format/elf/testdata/linux_arm64/a_static.fqtest b/format/elf/testdata/linux_arm64/a_static.fqtest index 1e3f10c1..7c245804 100644 --- a/format/elf/testdata/linux_arm64/a_static.fqtest +++ b/format/elf/testdata/linux_arm64/a_static.fqtest @@ -2087,9 +2087,9 @@ $ fq -d elf dv a_static 0x2bc0| 00 00 00 00 | .... | info: 0 0x2bc4-0x2bc7.7 (4) 0x2bc0| 01 00 00 00 00 00 00 00| ........| addralign: 1 0x2bc8-0x2bcf.7 (8) 0x2bd0|00 00 00 00 00 00 00 00| |........| | entsize: 0 0x2bd0-0x2bd7.7 (8) -0x0910| 00 00 00 00| ....| unknown0: raw bits 0x91c-0xda7.7 (1164) +0x0910| 00 00 00 00| ....| gap0: raw bits 0x91c-0xda7.7 (1164) 0x0920|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0xda7.7 (1164) | | -0x1060| 00 00 00 00 00 00| ......| unknown1: raw bits 0x106a-0x106f.7 (6) -0x1420| 00 00 00 00 00 | ..... | unknown2: raw bits 0x1423-0x1427.7 (5) -0x23d0| 00 00 | .. | unknown3: raw bits 0x23d6-0x23d7.7 (2) +0x1060| 00 00 00 00 00 00| ......| gap1: raw bits 0x106a-0x106f.7 (6) +0x1420| 00 00 00 00 00 | ..... | gap2: raw bits 0x1423-0x1427.7 (5) +0x23d0| 00 00 | .. | gap3: raw bits 0x23d6-0x23d7.7 (2) diff --git a/format/elf/testdata/linux_arm64/a_stripped.fqtest b/format/elf/testdata/linux_arm64/a_stripped.fqtest index d887ce38..34f499e3 100644 --- a/format/elf/testdata/linux_arm64/a_stripped.fqtest +++ b/format/elf/testdata/linux_arm64/a_stripped.fqtest @@ -970,7 +970,7 @@ $ fq -d elf dv a_stripped 0x1680| 00 00 00 00 | .... | info: 0 0x1684-0x1687.7 (4) 0x1680| 01 00 00 00 00 00 00 00| ........| addralign: 1 0x1688-0x168f.7 (8) 0x1690|00 00 00 00 00 00 00 00| |........| | entsize: 0 0x1690-0x1697.7 (8) -0x0910| 00 00 00 00 00 00 00 00 00 00 00 00| ............| unknown0: raw bits 0x914-0xd8f.7 (1148) +0x0910| 00 00 00 00 00 00 00 00 00 00 00 00| ............| gap0: raw bits 0x914-0xd8f.7 (1148) 0x0920|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0xd8f.7 (1148) | | -0x1110| 00 | . | unknown1: raw bits 0x1117-0x1117.7 (1) +0x1110| 00 | . | gap1: raw bits 0x1117-0x1117.7 (1) diff --git a/format/elf/testdata/linux_arm64/libbbb.a.fqtest b/format/elf/testdata/linux_arm64/libbbb.a.fqtest index 45c1911a..095d8ab6 100644 --- a/format/elf/testdata/linux_arm64/libbbb.a.fqtest +++ b/format/elf/testdata/linux_arm64/libbbb.a.fqtest @@ -582,7 +582,7 @@ $ fq -d ar dv libbbb.a 0x6d0| 01 00 00 00 00 00 00 00 | ........ | addralign: 1 0x6d4-0x6db.7 (8) 0x6d0| 00 00 00 00| ....| entsize: 0 0x6dc-0x6e3.7 (8) 0x6e0|00 00 00 00| |....| | -0x130| 00 00 00 | ... | unknown0: raw bits 0x131-0x133.7 (3) -0x390| 00 00 00| ...| unknown1: raw bits 0x39d-0x3a3.7 (7) +0x130| 00 00 00 | ... | gap0: raw bits 0x131-0x133.7 (3) +0x390| 00 00 00| ...| gap1: raw bits 0x39d-0x3a3.7 (7) 0x3a0|00 00 00 00 |.... | | | | program_headers[0:0]: 0x6e4-NA (0) diff --git a/format/elf/testdata/linux_arm64/libbbb.so.fqtest b/format/elf/testdata/linux_arm64/libbbb.so.fqtest index 2b0edba0..92f5d1a1 100644 --- a/format/elf/testdata/linux_arm64/libbbb.so.fqtest +++ b/format/elf/testdata/linux_arm64/libbbb.so.fqtest @@ -1772,9 +1772,9 @@ $ fq -d elf dv libbbb.so 0x2350| 00 00 00 00 | .... | info: 0 0x2354-0x2357.7 (4) 0x2350| 01 00 00 00 00 00 00 00| ........| addralign: 1 0x2358-0x235f.7 (8) 0x2360|00 00 00 00 00 00 00 00| |........| | entsize: 0 0x2360-0x2367.7 (8) -0x0730| 00 00 00 00| ....| unknown0: raw bits 0x73c-0xdd7.7 (1692) +0x0730| 00 00 00 00| ....| gap0: raw bits 0x73c-0xdd7.7 (1692) 0x0740|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0xdd7.7 (1692) | | -0x1030| 00 00 00 00 00 00 00| .......| unknown1: raw bits 0x1039-0x103f.7 (7) -0x1230| 00 00 00 00 00 00 00 00 00 00| ..........| unknown2: raw bits 0x1236-0x123f.7 (10) -0x1c20| 00 00 00 00 00 00 00 | ....... | unknown3: raw bits 0x1c21-0x1c27.7 (7) +0x1030| 00 00 00 00 00 00 00| .......| gap1: raw bits 0x1039-0x103f.7 (7) +0x1230| 00 00 00 00 00 00 00 00 00 00| ..........| gap2: raw bits 0x1236-0x123f.7 (10) +0x1c20| 00 00 00 00 00 00 00 | ....... | gap3: raw bits 0x1c21-0x1c27.7 (7) diff --git a/format/elf/testdata/linux_arm_v6/a_dynamic.fqtest b/format/elf/testdata/linux_arm_v6/a_dynamic.fqtest index 0cfa1d73..2243ec8e 100644 --- a/format/elf/testdata/linux_arm_v6/a_dynamic.fqtest +++ b/format/elf/testdata/linux_arm_v6/a_dynamic.fqtest @@ -2143,10 +2143,10 @@ $ fq -d elf dv a_dynamic 0x2580| 00 00 00 00 | .... | info: 0 0x2588-0x258b.7 (4) 0x2580| 01 00 00 00| ....| addralign: 1 0x258c-0x258f.7 (4) 0x2590|00 00 00 00| |....| | entsize: 0 0x2590-0x2593.7 (4) -0x0730| 00 00 00 00| ....| unknown0: raw bits 0x73c-0xecb.7 (1936) +0x0730| 00 00 00 00| ....| gap0: raw bits 0x73c-0xecb.7 (1936) 0x0740|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0xecb.7 (1936) | | -0x1090| 00 00 00 00 00 00 00| .......| unknown1: raw bits 0x1099-0x109f.7 (7) -0x13f0| 00 00 00 | ... | unknown2: raw bits 0x13f1-0x13f3.7 (3) -0x16a0| 00 00 00| ...| unknown3: raw bits 0x16ad-0x16af.7 (3) -0x2090| 00 00 00 | ... | unknown4: raw bits 0x2091-0x2093.7 (3) +0x1090| 00 00 00 00 00 00 00| .......| gap1: raw bits 0x1099-0x109f.7 (7) +0x13f0| 00 00 00 | ... | gap2: raw bits 0x13f1-0x13f3.7 (3) +0x16a0| 00 00 00| ...| gap3: raw bits 0x16ad-0x16af.7 (3) +0x2090| 00 00 00 | ... | gap4: raw bits 0x2091-0x2093.7 (3) diff --git a/format/elf/testdata/linux_arm_v6/a_static.fqtest b/format/elf/testdata/linux_arm_v6/a_static.fqtest index dd6dc80d..930c813c 100644 --- a/format/elf/testdata/linux_arm_v6/a_static.fqtest +++ b/format/elf/testdata/linux_arm_v6/a_static.fqtest @@ -2164,9 +2164,9 @@ $ fq -d elf dv a_static 0x25d0|00 00 00 00 |.... | info: 0 0x25d0-0x25d3.7 (4) 0x25d0| 01 00 00 00 | .... | addralign: 1 0x25d4-0x25d7.7 (4) 0x25d0| 00 00 00 00| | ....| | entsize: 0 0x25d8-0x25db.7 (4) -0x0730|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| unknown0: raw bits 0x730-0xed7.7 (1960) +0x0730|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| gap0: raw bits 0x730-0xed7.7 (1960) * |until 0xed7.7 (1960) | | -0x1090| 00 00 00 00 00 00 00| .......| unknown1: raw bits 0x1099-0x109f.7 (7) -0x13f0| 00 00 00 | ... | unknown2: raw bits 0x13f1-0x13f3.7 (3) -0x16a0| 00 00 00| ...| unknown3: raw bits 0x16ad-0x16af.7 (3) -0x20d0| 00 00 | .. | unknown4: raw bits 0x20da-0x20db.7 (2) +0x1090| 00 00 00 00 00 00 00| .......| gap1: raw bits 0x1099-0x109f.7 (7) +0x13f0| 00 00 00 | ... | gap2: raw bits 0x13f1-0x13f3.7 (3) +0x16a0| 00 00 00| ...| gap3: raw bits 0x16ad-0x16af.7 (3) +0x20d0| 00 00 | .. | gap4: raw bits 0x20da-0x20db.7 (2) diff --git a/format/elf/testdata/linux_arm_v6/a_stripped.fqtest b/format/elf/testdata/linux_arm_v6/a_stripped.fqtest index 1b77b6f0..7527052b 100644 --- a/format/elf/testdata/linux_arm_v6/a_stripped.fqtest +++ b/format/elf/testdata/linux_arm_v6/a_stripped.fqtest @@ -942,7 +942,7 @@ $ fq -d elf dv a_stripped 0x14a0| 00 00 00 00| ....| info: 0 0x14ac-0x14af.7 (4) 0x14b0|01 00 00 00 |.... | addralign: 1 0x14b0-0x14b3.7 (4) 0x14b0| 00 00 00 00| | ....| | entsize: 0 0x14b4-0x14b7.7 (4) -0x0730| 00 00 00 00| ....| unknown0: raw bits 0x73c-0xecb.7 (1936) +0x0730| 00 00 00 00| ....| gap0: raw bits 0x73c-0xecb.7 (1936) 0x0740|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0xecb.7 (1936) | | -0x1140| 00 00 | .. | unknown1: raw bits 0x1146-0x1147.7 (2) +0x1140| 00 00 | .. | gap1: raw bits 0x1146-0x1147.7 (2) diff --git a/format/elf/testdata/linux_arm_v6/libbbb.a.fqtest b/format/elf/testdata/linux_arm_v6/libbbb.a.fqtest index 26e3f70b..d71ff0b5 100644 --- a/format/elf/testdata/linux_arm_v6/libbbb.a.fqtest +++ b/format/elf/testdata/linux_arm_v6/libbbb.a.fqtest @@ -500,5 +500,5 @@ $ fq -d ar dv libbbb.a 0x4a0| 00 00 00 00 | .... | info: 0 0x4a4-0x4a7.7 (4) 0x4a0| 01 00 00 00 | .... | addralign: 1 0x4a8-0x4ab.7 (4) 0x4a0| 00 00 00 00| ....| entsize: 0 0x4ac-0x4af.7 (4) -0x2c0| 00 00 00| ...| unknown0: raw bits 0x2cd-0x2cf.7 (3) +0x2c0| 00 00 00| ...| gap0: raw bits 0x2cd-0x2cf.7 (3) | | | program_headers[0:0]: 0x4b0-NA (0) diff --git a/format/elf/testdata/linux_arm_v6/libbbb.so.fqtest b/format/elf/testdata/linux_arm_v6/libbbb.so.fqtest index b104faf9..d130e8ab 100644 --- a/format/elf/testdata/linux_arm_v6/libbbb.so.fqtest +++ b/format/elf/testdata/linux_arm_v6/libbbb.so.fqtest @@ -1823,9 +1823,9 @@ $ fq -d elf dv libbbb.so 0x1e90| 00 00 00 00 | .... | info: 0 0x1e94-0x1e97.7 (4) 0x1e90| 01 00 00 00 | .... | addralign: 1 0x1e98-0x1e9b.7 (4) 0x1e90| 00 00 00 00| ....| entsize: 0 0x1e9c-0x1e9f.7 (4) -0x05e0| 00 00 00 00 00 00 00 00 00 00 00 00| ............| unknown0: raw bits 0x5e4-0xeef.7 (2316) +0x05e0| 00 00 00 00 00 00 00 00 00 00 00 00| ............| gap0: raw bits 0x5e4-0xeef.7 (2316) 0x05f0|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0xeef.7 (2316) | | -0x1060| 00 00 00 00 | .... | unknown1: raw bits 0x1064-0x1067.7 (4) -0x1200| 00 00 00 00| ....| unknown2: raw bits 0x120c-0x120f.7 (4) -0x1a10| 00 00 00 | ... | unknown3: raw bits 0x1a15-0x1a17.7 (3) +0x1060| 00 00 00 00 | .... | gap1: raw bits 0x1064-0x1067.7 (4) +0x1200| 00 00 00 00| ....| gap2: raw bits 0x120c-0x120f.7 (4) +0x1a10| 00 00 00 | ... | gap3: raw bits 0x1a15-0x1a17.7 (3) diff --git a/format/elf/testdata/linux_arm_v7/a_dynamic.fqtest b/format/elf/testdata/linux_arm_v7/a_dynamic.fqtest index 0cfa1d73..2243ec8e 100644 --- a/format/elf/testdata/linux_arm_v7/a_dynamic.fqtest +++ b/format/elf/testdata/linux_arm_v7/a_dynamic.fqtest @@ -2143,10 +2143,10 @@ $ fq -d elf dv a_dynamic 0x2580| 00 00 00 00 | .... | info: 0 0x2588-0x258b.7 (4) 0x2580| 01 00 00 00| ....| addralign: 1 0x258c-0x258f.7 (4) 0x2590|00 00 00 00| |....| | entsize: 0 0x2590-0x2593.7 (4) -0x0730| 00 00 00 00| ....| unknown0: raw bits 0x73c-0xecb.7 (1936) +0x0730| 00 00 00 00| ....| gap0: raw bits 0x73c-0xecb.7 (1936) 0x0740|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0xecb.7 (1936) | | -0x1090| 00 00 00 00 00 00 00| .......| unknown1: raw bits 0x1099-0x109f.7 (7) -0x13f0| 00 00 00 | ... | unknown2: raw bits 0x13f1-0x13f3.7 (3) -0x16a0| 00 00 00| ...| unknown3: raw bits 0x16ad-0x16af.7 (3) -0x2090| 00 00 00 | ... | unknown4: raw bits 0x2091-0x2093.7 (3) +0x1090| 00 00 00 00 00 00 00| .......| gap1: raw bits 0x1099-0x109f.7 (7) +0x13f0| 00 00 00 | ... | gap2: raw bits 0x13f1-0x13f3.7 (3) +0x16a0| 00 00 00| ...| gap3: raw bits 0x16ad-0x16af.7 (3) +0x2090| 00 00 00 | ... | gap4: raw bits 0x2091-0x2093.7 (3) diff --git a/format/elf/testdata/linux_arm_v7/a_static.fqtest b/format/elf/testdata/linux_arm_v7/a_static.fqtest index dd6dc80d..930c813c 100644 --- a/format/elf/testdata/linux_arm_v7/a_static.fqtest +++ b/format/elf/testdata/linux_arm_v7/a_static.fqtest @@ -2164,9 +2164,9 @@ $ fq -d elf dv a_static 0x25d0|00 00 00 00 |.... | info: 0 0x25d0-0x25d3.7 (4) 0x25d0| 01 00 00 00 | .... | addralign: 1 0x25d4-0x25d7.7 (4) 0x25d0| 00 00 00 00| | ....| | entsize: 0 0x25d8-0x25db.7 (4) -0x0730|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| unknown0: raw bits 0x730-0xed7.7 (1960) +0x0730|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| gap0: raw bits 0x730-0xed7.7 (1960) * |until 0xed7.7 (1960) | | -0x1090| 00 00 00 00 00 00 00| .......| unknown1: raw bits 0x1099-0x109f.7 (7) -0x13f0| 00 00 00 | ... | unknown2: raw bits 0x13f1-0x13f3.7 (3) -0x16a0| 00 00 00| ...| unknown3: raw bits 0x16ad-0x16af.7 (3) -0x20d0| 00 00 | .. | unknown4: raw bits 0x20da-0x20db.7 (2) +0x1090| 00 00 00 00 00 00 00| .......| gap1: raw bits 0x1099-0x109f.7 (7) +0x13f0| 00 00 00 | ... | gap2: raw bits 0x13f1-0x13f3.7 (3) +0x16a0| 00 00 00| ...| gap3: raw bits 0x16ad-0x16af.7 (3) +0x20d0| 00 00 | .. | gap4: raw bits 0x20da-0x20db.7 (2) diff --git a/format/elf/testdata/linux_arm_v7/a_stripped.fqtest b/format/elf/testdata/linux_arm_v7/a_stripped.fqtest index 1b77b6f0..7527052b 100644 --- a/format/elf/testdata/linux_arm_v7/a_stripped.fqtest +++ b/format/elf/testdata/linux_arm_v7/a_stripped.fqtest @@ -942,7 +942,7 @@ $ fq -d elf dv a_stripped 0x14a0| 00 00 00 00| ....| info: 0 0x14ac-0x14af.7 (4) 0x14b0|01 00 00 00 |.... | addralign: 1 0x14b0-0x14b3.7 (4) 0x14b0| 00 00 00 00| | ....| | entsize: 0 0x14b4-0x14b7.7 (4) -0x0730| 00 00 00 00| ....| unknown0: raw bits 0x73c-0xecb.7 (1936) +0x0730| 00 00 00 00| ....| gap0: raw bits 0x73c-0xecb.7 (1936) 0x0740|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0xecb.7 (1936) | | -0x1140| 00 00 | .. | unknown1: raw bits 0x1146-0x1147.7 (2) +0x1140| 00 00 | .. | gap1: raw bits 0x1146-0x1147.7 (2) diff --git a/format/elf/testdata/linux_arm_v7/libbbb.a.fqtest b/format/elf/testdata/linux_arm_v7/libbbb.a.fqtest index 26e3f70b..d71ff0b5 100644 --- a/format/elf/testdata/linux_arm_v7/libbbb.a.fqtest +++ b/format/elf/testdata/linux_arm_v7/libbbb.a.fqtest @@ -500,5 +500,5 @@ $ fq -d ar dv libbbb.a 0x4a0| 00 00 00 00 | .... | info: 0 0x4a4-0x4a7.7 (4) 0x4a0| 01 00 00 00 | .... | addralign: 1 0x4a8-0x4ab.7 (4) 0x4a0| 00 00 00 00| ....| entsize: 0 0x4ac-0x4af.7 (4) -0x2c0| 00 00 00| ...| unknown0: raw bits 0x2cd-0x2cf.7 (3) +0x2c0| 00 00 00| ...| gap0: raw bits 0x2cd-0x2cf.7 (3) | | | program_headers[0:0]: 0x4b0-NA (0) diff --git a/format/elf/testdata/linux_arm_v7/libbbb.so.fqtest b/format/elf/testdata/linux_arm_v7/libbbb.so.fqtest index b104faf9..d130e8ab 100644 --- a/format/elf/testdata/linux_arm_v7/libbbb.so.fqtest +++ b/format/elf/testdata/linux_arm_v7/libbbb.so.fqtest @@ -1823,9 +1823,9 @@ $ fq -d elf dv libbbb.so 0x1e90| 00 00 00 00 | .... | info: 0 0x1e94-0x1e97.7 (4) 0x1e90| 01 00 00 00 | .... | addralign: 1 0x1e98-0x1e9b.7 (4) 0x1e90| 00 00 00 00| ....| entsize: 0 0x1e9c-0x1e9f.7 (4) -0x05e0| 00 00 00 00 00 00 00 00 00 00 00 00| ............| unknown0: raw bits 0x5e4-0xeef.7 (2316) +0x05e0| 00 00 00 00 00 00 00 00 00 00 00 00| ............| gap0: raw bits 0x5e4-0xeef.7 (2316) 0x05f0|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0xeef.7 (2316) | | -0x1060| 00 00 00 00 | .... | unknown1: raw bits 0x1064-0x1067.7 (4) -0x1200| 00 00 00 00| ....| unknown2: raw bits 0x120c-0x120f.7 (4) -0x1a10| 00 00 00 | ... | unknown3: raw bits 0x1a15-0x1a17.7 (3) +0x1060| 00 00 00 00 | .... | gap1: raw bits 0x1064-0x1067.7 (4) +0x1200| 00 00 00 00| ....| gap2: raw bits 0x120c-0x120f.7 (4) +0x1a10| 00 00 00 | ... | gap3: raw bits 0x1a15-0x1a17.7 (3) diff --git a/format/elf/testdata/regression/bigstrtab.fqtest b/format/elf/testdata/regression/bigstrtab.fqtest index 0531ea86..a1ce32e8 100644 --- a/format/elf/testdata/regression/bigstrtab.fqtest +++ b/format/elf/testdata/regression/bigstrtab.fqtest @@ -24,5 +24,5 @@ $ fq -d elf d bigstrtab 0x0030| 40 00 | @. | shentsize: 64 0x0030| 22 00 | ". | shnum: 34 0x0030| 21 00| !.| shstrndx: 33 -0x0040|06 00 00 00 04 00 00 00 40 00 00 00 00 00 00 00|........@.......| unknown0: raw bits +0x0040|06 00 00 00 04 00 00 00 40 00 00 00 00 00 00 00|........@.......| gap0: raw bits * |until 0x474b.7 (end) (18188) | | diff --git a/format/json/testdata/jsonl.fqtest b/format/json/testdata/jsonl.fqtest index a64ecc84..e92a574e 100644 --- a/format/json/testdata/jsonl.fqtest +++ b/format/json/testdata/jsonl.fqtest @@ -34,7 +34,7 @@ $ fq -d jsonl . single.jsonl $ fq -d jsonl . error.jsonl |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: error.jsonl (jsonl) | | | error: jsonl: error at position 0xf: invalid character 'a' looking for beginning of value -0x0|7b 22 61 22 3a 20 31 32 33 7d 20 61 73 64 0a| |{"a": 123} asd.|| unknown0: raw bits +0x0|7b 22 61 22 3a 20 31 32 33 7d 20 61 73 64 0a| |{"a": 123} asd.|| gap0: raw bits $ fq -n '[{"a":123}, [123]] | tojsonl' "{\"a\":123}\n[123]\n" $ fq -n '123 | tojsonl' diff --git a/format/macho/testdata/darwin_aarch64/a_dynamic.fqtest b/format/macho/testdata/darwin_aarch64/a_dynamic.fqtest index e8264588..dacdddae 100644 --- a/format/macho/testdata/darwin_aarch64/a_dynamic.fqtest +++ b/format/macho/testdata/darwin_aarch64/a_dynamic.fqtest @@ -546,16 +546,16 @@ $ fq dv a_dynamic | | | linkedit_data{}: 0x5a8-0x5af.7 (8) 0x05a0| 60 c1 00 00 | `... | off: 49504 0x5a8-0x5ab.7 (4) 0x05a0| 16 02 00 00| ....| size: 534 0x5ac-0x5af.7 (4) -0x05b0|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| unknown0: raw bits 0x5b0-0x3f2f.7 (14720) +0x05b0|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| gap0: raw bits 0x5b0-0x3f2f.7 (14720) * |until 0x3f2f.7 (14720) | | -0x3fb0| 00 00 00 | ... | unknown1: raw bits 0x3fb5-0x3fb7.7 (3) -0x4000| 00 00 00 00 00 00 00 00| ........| unknown2: raw bits 0x4008-0x7fff.7 (16376) +0x3fb0| 00 00 00 | ... | gap1: raw bits 0x3fb5-0x3fb7.7 (3) +0x4000| 00 00 00 00 00 00 00 00| ........| gap2: raw bits 0x4008-0x7fff.7 (16376) 0x4010|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x7fff.7 (16376) | | -0x8010| 00 00 00 00 00 00 00 00| ........| unknown3: raw bits 0x8018-0xc07f.7 (16488) +0x8010| 00 00 00 00 00 00 00 00| ........| gap3: raw bits 0x8018-0xc07f.7 (16488) 0x8020|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0xc07f.7 (16488) | | -0xc0f0|04 00 00 00 05 00 00 00 06 00 00 00 04 00 00 00|................| unknown4: raw bits 0xc0f0-0xc107.7 (24) +0xc0f0|04 00 00 00 05 00 00 00 06 00 00 00 04 00 00 00|................| gap4: raw bits 0xc0f0-0xc107.7 (24) 0xc100|05 00 00 00 00 00 00 00 |........ | -0xc160|fa de 0c c0 00 00 02 16 00 00 00 01 00 00 00 00|................| unknown5: raw bits 0xc160-0xc375.7 (534) +0xc160|fa de 0c c0 00 00 02 16 00 00 00 01 00 00 00 00|................| gap5: raw bits 0xc160-0xc375.7 (534) * |until 0xc375.7 (end) (534) | | diff --git a/format/macho/testdata/darwin_aarch64/a_static.fqtest b/format/macho/testdata/darwin_aarch64/a_static.fqtest index f184578e..fac0d512 100644 --- a/format/macho/testdata/darwin_aarch64/a_static.fqtest +++ b/format/macho/testdata/darwin_aarch64/a_static.fqtest @@ -537,16 +537,16 @@ $ fq dv a_static | | | linkedit_data{}: 0x580-0x587.7 (8) 0x0580|60 c1 00 00 |`... | off: 49504 0x580-0x583.7 (4) 0x0580| 15 02 00 00 | .... | size: 533 0x584-0x587.7 (4) -0x0580| 00 00 00 00 00 00 00 00| ........| unknown0: raw bits 0x588-0x3f1f.7 (14744) +0x0580| 00 00 00 00 00 00 00 00| ........| gap0: raw bits 0x588-0x3f1f.7 (14744) 0x0590|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x3f1f.7 (14744) | | -0x3fb0| 00 00 00 | ... | unknown1: raw bits 0x3fb5-0x3fb7.7 (3) -0x4000| 00 00 00 00 00 00 00 00| ........| unknown2: raw bits 0x4008-0x7fff.7 (16376) +0x3fb0| 00 00 00 | ... | gap1: raw bits 0x3fb5-0x3fb7.7 (3) +0x4000| 00 00 00 00 00 00 00 00| ........| gap2: raw bits 0x4008-0x7fff.7 (16376) 0x4010|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x7fff.7 (16376) | | -0x8010|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| unknown3: raw bits 0x8010-0xc07f.7 (16496) +0x8010|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| gap3: raw bits 0x8010-0xc07f.7 (16496) * |until 0xc07f.7 (16496) | | -0xc0f0|05 00 00 00 06 00 00 00 05 00 00 00 00 00 00 00|................| unknown4: raw bits 0xc0f0-0xc0ff.7 (16) -0xc150| 00 00 00 00 00 00 00 00| ........| unknown5: raw bits 0xc158-0xc374.7 (541) +0xc0f0|05 00 00 00 06 00 00 00 05 00 00 00 00 00 00 00|................| gap4: raw bits 0xc0f0-0xc0ff.7 (16) +0xc150| 00 00 00 00 00 00 00 00| ........| gap5: raw bits 0xc158-0xc374.7 (541) 0xc160|fa de 0c c0 00 00 02 15 00 00 00 01 00 00 00 00|................| * |until 0xc374.7 (end) (541) | | diff --git a/format/macho/testdata/darwin_aarch64/a_stripped.fqtest b/format/macho/testdata/darwin_aarch64/a_stripped.fqtest index 0c1e2eb5..bcb130d3 100644 --- a/format/macho/testdata/darwin_aarch64/a_stripped.fqtest +++ b/format/macho/testdata/darwin_aarch64/a_stripped.fqtest @@ -526,17 +526,17 @@ $ fq dv a_stripped | | | linkedit_data{}: 0x5a8-0x5af.7 (8) 0x05a0| 40 c1 00 00 | @... | off: 49472 0x5a8-0x5ab.7 (4) 0x05a0| 18 02 00 00| ....| size: 536 0x5ac-0x5af.7 (4) -0x05b0|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| unknown0: raw bits 0x5b0-0x3f2f.7 (14720) +0x05b0|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| gap0: raw bits 0x5b0-0x3f2f.7 (14720) * |until 0x3f2f.7 (14720) | | -0x3fb0| 00 00 00 | ... | unknown1: raw bits 0x3fb5-0x3fb7.7 (3) -0x4000| 00 00 00 00 00 00 00 00| ........| unknown2: raw bits 0x4008-0x7fff.7 (16376) +0x3fb0| 00 00 00 | ... | gap1: raw bits 0x3fb5-0x3fb7.7 (3) +0x4000| 00 00 00 00 00 00 00 00| ........| gap2: raw bits 0x4008-0x7fff.7 (16376) 0x4010|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x7fff.7 (16376) | | -0x8010| 00 00 00 00 00 00 00 00| ........| unknown3: raw bits 0x8018-0xc07f.7 (16488) +0x8010| 00 00 00 00 00 00 00 00| ........| gap3: raw bits 0x8018-0xc07f.7 (16488) 0x8020|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0xc07f.7 (16488) | | -0xc0d0|02 00 00 00 03 00 00 00 04 00 00 00 02 00 00 00|................| unknown4: raw bits 0xc0d0-0xc0e7.7 (24) +0xc0d0|02 00 00 00 03 00 00 00 04 00 00 00 02 00 00 00|................| gap4: raw bits 0xc0d0-0xc0e7.7 (24) 0xc0e0|03 00 00 00 00 00 00 00 |........ | -0xc130| 00 00 00 00 00 00 00 00| ........| unknown5: raw bits 0xc138-0xc357.7 (544) +0xc130| 00 00 00 00 00 00 00 00| ........| gap5: raw bits 0xc138-0xc357.7 (544) 0xc140|fa de 0c c0 00 00 02 17 00 00 00 01 00 00 00 00|................| * |until 0xc357.7 (end) (544) | | diff --git a/format/macho/testdata/darwin_aarch64/libbbb.so.fqtest b/format/macho/testdata/darwin_aarch64/libbbb.so.fqtest index 00da73ba..f9d612e7 100644 --- a/format/macho/testdata/darwin_aarch64/libbbb.so.fqtest +++ b/format/macho/testdata/darwin_aarch64/libbbb.so.fqtest @@ -496,14 +496,14 @@ $ fq dv libbbb.so | | | linkedit_data{}: 0x528-0x52f.7 (8) 0x0520| e0 c0 00 00 | .... | off: 49376 0x528-0x52b.7 (4) 0x0520| 16 02 00 00| ....| size: 534 0x52c-0x52f.7 (4) -0x0530|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| unknown0: raw bits 0x530-0x3f5f.7 (14896) +0x0530|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| gap0: raw bits 0x530-0x3f5f.7 (14896) * |until 0x3f5f.7 (14896) | | -0x4000| 00 00 00 00 00 00 00 00| ........| unknown1: raw bits 0x4008-0x7fff.7 (16376) +0x4000| 00 00 00 00 00 00 00 00| ........| gap1: raw bits 0x4008-0x7fff.7 (16376) 0x4010|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x7fff.7 (16376) | | -0x8010|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| unknown2: raw bits 0x8010-0xc04f.7 (16448) +0x8010|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| gap2: raw bits 0x8010-0xc04f.7 (16448) * |until 0xc04f.7 (16448) | | -0xc090|02 00 00 00 03 00 00 00 02 00 00 00 00 00 00 00|................| unknown3: raw bits 0xc090-0xc09f.7 (16) -0xc0d0| 00 00 00 00 00 00 00 00| ........| unknown4: raw bits 0xc0d8-0xc2f5.7 (542) +0xc090|02 00 00 00 03 00 00 00 02 00 00 00 00 00 00 00|................| gap3: raw bits 0xc090-0xc09f.7 (16) +0xc0d0| 00 00 00 00 00 00 00 00| ........| gap4: raw bits 0xc0d8-0xc2f5.7 (542) 0xc0e0|fa de 0c c0 00 00 02 16 00 00 00 01 00 00 00 00|................| * |until 0xc2f5.7 (end) (542) | | diff --git a/format/macho/testdata/darwin_amd64/a_dynamic.fqtest b/format/macho/testdata/darwin_amd64/a_dynamic.fqtest index acf33c5d..7cdced60 100644 --- a/format/macho/testdata/darwin_amd64/a_dynamic.fqtest +++ b/format/macho/testdata/darwin_amd64/a_dynamic.fqtest @@ -505,12 +505,12 @@ $ fq dv a_dynamic | | | linkedit_data{}: 0x540-0x547.7 (8) 0x0540|80 80 00 00 |.... | off: 32896 0x540-0x543.7 (4) 0x0540| 00 00 00 00 | .... | size: 0 0x544-0x547.7 (4) -0x0540| 00 00 00 00 00 00 00 00| ........| unknown0: raw bits 0x548-0x3f3f.7 (14840) +0x0540| 00 00 00 00 00 00 00 00| ........| gap0: raw bits 0x548-0x3f3f.7 (14840) 0x0550|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x3f3f.7 (14840) | | -0x3fa0| 00 00 00 | ... | unknown1: raw bits 0x3fa9-0x3fab.7 (3) -0x3ff0| 00 00 00 00 00 00 00 00 00 00 00 00| ............| unknown2: raw bits 0x3ff4-0x3fff.7 (12) -0x4020|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| unknown3: raw bits 0x4020-0x807f.7 (16480) +0x3fa0| 00 00 00 | ... | gap1: raw bits 0x3fa9-0x3fab.7 (3) +0x3ff0| 00 00 00 00 00 00 00 00 00 00 00 00| ............| gap2: raw bits 0x3ff4-0x3fff.7 (12) +0x4020|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| gap3: raw bits 0x4020-0x807f.7 (16480) * |until 0x807f.7 (16480) | | -0x80e0|03 00 00 00 04 00 00 00 00 00 00 40 05 00 00 00|...........@....| unknown4: raw bits 0x80e0-0x80f7.7 (24) +0x80e0|03 00 00 00 04 00 00 00 00 00 00 40 05 00 00 00|...........@....| gap4: raw bits 0x80e0-0x80f7.7 (24) 0x80f0|03 00 00 00 04 00 00 00 |........ | diff --git a/format/macho/testdata/darwin_amd64/a_static.fqtest b/format/macho/testdata/darwin_amd64/a_static.fqtest index ca323df7..8f1d5038 100644 --- a/format/macho/testdata/darwin_amd64/a_static.fqtest +++ b/format/macho/testdata/darwin_amd64/a_static.fqtest @@ -497,11 +497,11 @@ $ fq dv a_static | | | linkedit_data{}: 0x518-0x51f.7 (8) 0x0510| 80 80 00 00 | .... | off: 32896 0x518-0x51b.7 (4) 0x0510| 00 00 00 00| ....| size: 0 0x51c-0x51f.7 (4) -0x0520|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| unknown0: raw bits 0x520-0x3f2f.7 (14864) +0x0520|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| gap0: raw bits 0x520-0x3f2f.7 (14864) * |until 0x3f2f.7 (14864) | | -0x3f80| 00 00 | .. | unknown1: raw bits 0x3f8a-0x3f8b.7 (2) -0x3fb0| 00 | . | unknown2: raw bits 0x3fb7-0x3fb7.7 (1) -0x4010| 00 00 00 00 00 00 00 00| ........| unknown3: raw bits 0x4018-0x807f.7 (16488) +0x3f80| 00 00 | .. | gap1: raw bits 0x3f8a-0x3f8b.7 (2) +0x3fb0| 00 | . | gap2: raw bits 0x3fb7-0x3fb7.7 (1) +0x4010| 00 00 00 00 00 00 00 00| ........| gap3: raw bits 0x4018-0x807f.7 (16488) 0x4020|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x807f.7 (16488) | | -0x80e0|04 00 00 00 00 00 00 40 05 00 00 00 04 00 00 00|.......@........| unknown4: raw bits 0x80e0-0x80ef.7 (16) +0x80e0|04 00 00 00 00 00 00 40 05 00 00 00 04 00 00 00|.......@........| gap4: raw bits 0x80e0-0x80ef.7 (16) diff --git a/format/macho/testdata/darwin_amd64/a_stripped.fqtest b/format/macho/testdata/darwin_amd64/a_stripped.fqtest index ca3d7eea..e4589590 100644 --- a/format/macho/testdata/darwin_amd64/a_stripped.fqtest +++ b/format/macho/testdata/darwin_amd64/a_stripped.fqtest @@ -495,12 +495,12 @@ $ fq dv a_stripped | | | linkedit_data{}: 0x540-0x547.7 (8) 0x0540|80 80 00 00 |.... | off: 32896 0x540-0x543.7 (4) 0x0540| 00 00 00 00 | .... | size: 0 0x544-0x547.7 (4) -0x0540| 00 00 00 00 00 00 00 00| ........| unknown0: raw bits 0x548-0x3f3f.7 (14840) +0x0540| 00 00 00 00 00 00 00 00| ........| gap0: raw bits 0x548-0x3f3f.7 (14840) 0x0550|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x3f3f.7 (14840) | | -0x3fa0| 00 00 00 | ... | unknown1: raw bits 0x3fa9-0x3fab.7 (3) -0x3ff0| 00 00 00 00 00 00 00 00 00 00 00 00| ............| unknown2: raw bits 0x3ff4-0x3fff.7 (12) -0x4020|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| unknown3: raw bits 0x4020-0x807f.7 (16480) +0x3fa0| 00 00 00 | ... | gap1: raw bits 0x3fa9-0x3fab.7 (3) +0x3ff0| 00 00 00 00 00 00 00 00 00 00 00 00| ............| gap2: raw bits 0x3ff4-0x3fff.7 (12) +0x4020|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| gap3: raw bits 0x4020-0x807f.7 (16480) * |until 0x807f.7 (16480) | | -0x80d0|02 00 00 00 03 00 00 00 00 00 00 40 04 00 00 00|...........@....| unknown4: raw bits 0x80d0-0x80e7.7 (24) +0x80d0|02 00 00 00 03 00 00 00 00 00 00 40 04 00 00 00|...........@....| gap4: raw bits 0x80d0-0x80e7.7 (24) 0x80e0|02 00 00 00 03 00 00 00 |........ | diff --git a/format/macho/testdata/darwin_amd64/libbbb.so.fqtest b/format/macho/testdata/darwin_amd64/libbbb.so.fqtest index 376f0083..59de27a2 100644 --- a/format/macho/testdata/darwin_amd64/libbbb.so.fqtest +++ b/format/macho/testdata/darwin_amd64/libbbb.so.fqtest @@ -448,13 +448,13 @@ $ fq dv libbbb.so | | | linkedit_data{}: 0x4c0-0x4c7.7 (8) 0x04c0|50 80 00 00 |P... | off: 32848 0x4c0-0x4c3.7 (4) 0x04c0| 00 00 00 00 | .... | size: 0 0x4c4-0x4c7.7 (4) -0x04c0| 00 00 00 00 00 00 00 00| ........| unknown0: raw bits 0x4c8-0x3f6f.7 (15016) +0x04c0| 00 00 00 00 00 00 00 00| ........| gap0: raw bits 0x4c8-0x3f6f.7 (15016) 0x04d0|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x3f6f.7 (15016) | | -0x3f80| 00 00 | .. | unknown1: raw bits 0x3f8a-0x3f8b.7 (2) -0x3fb0| 00 00 | .. | unknown2: raw bits 0x3fb2-0x3fb3.7 (2) -0x3ff0| 00 00 00 00| ....| unknown3: raw bits 0x3ffc-0x3fff.7 (4) -0x4010| 00 00 00 00 00 00 00 00| ........| unknown4: raw bits 0x4018-0x804f.7 (16440) +0x3f80| 00 00 | .. | gap1: raw bits 0x3f8a-0x3f8b.7 (2) +0x3fb0| 00 00 | .. | gap2: raw bits 0x3fb2-0x3fb3.7 (2) +0x3ff0| 00 00 00 00| ....| gap3: raw bits 0x3ffc-0x3fff.7 (4) +0x4010| 00 00 00 00 00 00 00 00| ........| gap4: raw bits 0x4018-0x804f.7 (16440) 0x4020|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x804f.7 (16440) | | -0x8080|01 00 00 00 00 00 00 40 02 00 00 00 01 00 00 00|.......@........| unknown5: raw bits 0x8080-0x808f.7 (16) +0x8080|01 00 00 00 00 00 00 40 02 00 00 00 01 00 00 00|.......@........| gap5: raw bits 0x8080-0x808f.7 (16) diff --git a/format/macho/testdata/darwin_fat/a_dynamic.fqtest b/format/macho/testdata/darwin_fat/a_dynamic.fqtest index 647fd647..b1f49ed4 100644 --- a/format/macho/testdata/darwin_fat/a_dynamic.fqtest +++ b/format/macho/testdata/darwin_fat/a_dynamic.fqtest @@ -16,7 +16,7 @@ $ fq dv a_dynamic 0x00020| 00 01 00 00 | .... | offset: 0x10000 0x24-0x27.7 (4) 0x00020| 00 00 c3 76 | ...v | size: 50038 0x28-0x2b.7 (4) 0x00020| 00 00 00 0e| ....| align: 14 0x2c-0x2f.7 (4) -0x00030|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| unknown0: raw bits 0x30-0x3fff.7 (16336) +0x00030|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| gap0: raw bits 0x30-0x3fff.7 (16336) * |until 0x3fff.7 (16336) | | | | | files[0:2]: 0x4000-0x1c15f.7 (98656) |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| [0]{}: file (macho) 0x4000-0xc13f.7 (33088) @@ -1072,27 +1072,27 @@ $ fq dv a_dynamic | | | linkedit_data{}: 0x105a8-0x105af.7 (8) 0x105a0| 60 c1 00 00 | `... | off: 49504 0x105a8-0x105ab.7 (4) 0x105a0| 16 02 00 00| ....| size: 534 0x105ac-0x105af.7 (4) -0x04540| 00 00 00 00 00 00 00 00| ........| unknown1: raw bits 0x4548-0x7f3f.7 (14840) +0x04540| 00 00 00 00 00 00 00 00| ........| gap1: raw bits 0x4548-0x7f3f.7 (14840) 0x04550|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x7f3f.7 (14840) | | -0x07fa0| 00 00 00 | ... | unknown2: raw bits 0x7fa9-0x7fab.7 (3) -0x07ff0| 00 00 00 00 00 00 00 00 00 00 00 00| ............| unknown3: raw bits 0x7ff4-0x7fff.7 (12) -0x08020|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| unknown4: raw bits 0x8020-0xc07f.7 (16480) +0x07fa0| 00 00 00 | ... | gap2: raw bits 0x7fa9-0x7fab.7 (3) +0x07ff0| 00 00 00 00 00 00 00 00 00 00 00 00| ............| gap3: raw bits 0x7ff4-0x7fff.7 (12) +0x08020|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| gap4: raw bits 0x8020-0xc07f.7 (16480) * |until 0xc07f.7 (16480) | | -0x0c0e0|03 00 00 00 04 00 00 00 00 00 00 40 05 00 00 00|...........@....| unknown5: raw bits 0xc0e0-0xc0f7.7 (24) +0x0c0e0|03 00 00 00 04 00 00 00 00 00 00 40 05 00 00 00|...........@....| gap5: raw bits 0xc0e0-0xc0f7.7 (24) 0x0c0f0|03 00 00 00 04 00 00 00 |........ | -0x0c140|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| unknown6: raw bits 0xc140-0xffff.7 (16064) +0x0c140|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| gap6: raw bits 0xc140-0xffff.7 (16064) * |until 0xffff.7 (16064) | | -0x105b0|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| unknown7: raw bits 0x105b0-0x13f2f.7 (14720) +0x105b0|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| gap7: raw bits 0x105b0-0x13f2f.7 (14720) * |until 0x13f2f.7 (14720) | | -0x13fb0| 00 00 00 | ... | unknown8: raw bits 0x13fb5-0x13fb7.7 (3) -0x14000| 00 00 00 00 00 00 00 00| ........| unknown9: raw bits 0x14008-0x17fff.7 (16376) +0x13fb0| 00 00 00 | ... | gap8: raw bits 0x13fb5-0x13fb7.7 (3) +0x14000| 00 00 00 00 00 00 00 00| ........| gap9: raw bits 0x14008-0x17fff.7 (16376) 0x14010|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x17fff.7 (16376) | | -0x18010| 00 00 00 00 00 00 00 00| ........| unknown10: raw bits 0x18018-0x1c07f.7 (16488) +0x18010| 00 00 00 00 00 00 00 00| ........| gap10: raw bits 0x18018-0x1c07f.7 (16488) 0x18020|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x1c07f.7 (16488) | | -0x1c0f0|04 00 00 00 05 00 00 00 06 00 00 00 04 00 00 00|................| unknown11: raw bits 0x1c0f0-0x1c107.7 (24) +0x1c0f0|04 00 00 00 05 00 00 00 06 00 00 00 04 00 00 00|................| gap11: raw bits 0x1c0f0-0x1c107.7 (24) 0x1c100|05 00 00 00 00 00 00 00 |........ | -0x1c160|fa de 0c c0 00 00 02 16 00 00 00 01 00 00 00 00|................| unknown12: raw bits 0x1c160-0x1c375.7 (534) +0x1c160|fa de 0c c0 00 00 02 16 00 00 00 01 00 00 00 00|................| gap12: raw bits 0x1c160-0x1c375.7 (534) * |until 0x1c375.7 (end) (534) | | diff --git a/format/macho/testdata/darwin_fat/a_static.fqtest b/format/macho/testdata/darwin_fat/a_static.fqtest index ef75d95b..41ec58b0 100644 --- a/format/macho/testdata/darwin_fat/a_static.fqtest +++ b/format/macho/testdata/darwin_fat/a_static.fqtest @@ -16,7 +16,7 @@ $ fq dv a_static 0x00020| 00 01 00 00 | .... | offset: 0x10000 0x24-0x27.7 (4) 0x00020| 00 00 c3 75 | ...u | size: 50037 0x28-0x2b.7 (4) 0x00020| 00 00 00 0e| ....| align: 14 0x2c-0x2f.7 (4) -0x00030|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| unknown0: raw bits 0x30-0x3fff.7 (16336) +0x00030|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| gap0: raw bits 0x30-0x3fff.7 (16336) * |until 0x3fff.7 (16336) | | | | | files[0:2]: 0x4000-0x1c157.7 (98648) |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| [0]{}: file (macho) 0x4000-0xc137.7 (33080) @@ -1055,27 +1055,27 @@ $ fq dv a_static | | | linkedit_data{}: 0x10580-0x10587.7 (8) 0x10580|60 c1 00 00 |`... | off: 49504 0x10580-0x10583.7 (4) 0x10580| 15 02 00 00 | .... | size: 533 0x10584-0x10587.7 (4) -0x04520|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| unknown1: raw bits 0x4520-0x7f2f.7 (14864) +0x04520|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| gap1: raw bits 0x4520-0x7f2f.7 (14864) * |until 0x7f2f.7 (14864) | | -0x07f80| 00 00 | .. | unknown2: raw bits 0x7f8a-0x7f8b.7 (2) -0x07fb0| 00 | . | unknown3: raw bits 0x7fb7-0x7fb7.7 (1) -0x08010| 00 00 00 00 00 00 00 00| ........| unknown4: raw bits 0x8018-0xc07f.7 (16488) +0x07f80| 00 00 | .. | gap2: raw bits 0x7f8a-0x7f8b.7 (2) +0x07fb0| 00 | . | gap3: raw bits 0x7fb7-0x7fb7.7 (1) +0x08010| 00 00 00 00 00 00 00 00| ........| gap4: raw bits 0x8018-0xc07f.7 (16488) 0x08020|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0xc07f.7 (16488) | | -0x0c0e0|04 00 00 00 00 00 00 40 05 00 00 00 04 00 00 00|.......@........| unknown5: raw bits 0xc0e0-0xc0ef.7 (16) -0x0c130| 00 00 00 00 00 00 00 00| ........| unknown6: raw bits 0xc138-0xffff.7 (16072) +0x0c0e0|04 00 00 00 00 00 00 40 05 00 00 00 04 00 00 00|.......@........| gap5: raw bits 0xc0e0-0xc0ef.7 (16) +0x0c130| 00 00 00 00 00 00 00 00| ........| gap6: raw bits 0xc138-0xffff.7 (16072) 0x0c140|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0xffff.7 (16072) | | -0x10580| 00 00 00 00 00 00 00 00| ........| unknown7: raw bits 0x10588-0x13f1f.7 (14744) +0x10580| 00 00 00 00 00 00 00 00| ........| gap7: raw bits 0x10588-0x13f1f.7 (14744) 0x10590|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x13f1f.7 (14744) | | -0x13fb0| 00 00 00 | ... | unknown8: raw bits 0x13fb5-0x13fb7.7 (3) -0x14000| 00 00 00 00 00 00 00 00| ........| unknown9: raw bits 0x14008-0x17fff.7 (16376) +0x13fb0| 00 00 00 | ... | gap8: raw bits 0x13fb5-0x13fb7.7 (3) +0x14000| 00 00 00 00 00 00 00 00| ........| gap9: raw bits 0x14008-0x17fff.7 (16376) 0x14010|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x17fff.7 (16376) | | -0x18010|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| unknown10: raw bits 0x18010-0x1c07f.7 (16496) +0x18010|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| gap10: raw bits 0x18010-0x1c07f.7 (16496) * |until 0x1c07f.7 (16496) | | -0x1c0f0|05 00 00 00 06 00 00 00 05 00 00 00 00 00 00 00|................| unknown11: raw bits 0x1c0f0-0x1c0ff.7 (16) -0x1c150| 00 00 00 00 00 00 00 00| ........| unknown12: raw bits 0x1c158-0x1c374.7 (541) +0x1c0f0|05 00 00 00 06 00 00 00 05 00 00 00 00 00 00 00|................| gap11: raw bits 0x1c0f0-0x1c0ff.7 (16) +0x1c150| 00 00 00 00 00 00 00 00| ........| gap12: raw bits 0x1c158-0x1c374.7 (541) 0x1c160|fa de 0c c0 00 00 02 15 00 00 00 01 00 00 00 00|................| * |until 0x1c374.7 (end) (541) | | diff --git a/format/macho/testdata/darwin_fat/a_stripped.fqtest b/format/macho/testdata/darwin_fat/a_stripped.fqtest index 8adc4fdd..a79d8c66 100644 --- a/format/macho/testdata/darwin_fat/a_stripped.fqtest +++ b/format/macho/testdata/darwin_fat/a_stripped.fqtest @@ -16,7 +16,7 @@ $ fq dv a_stripped 0x00020| 00 01 00 00 | .... | offset: 0x10000 0x24-0x27.7 (4) 0x00020| 00 00 c3 58 | ...X | size: 50008 0x28-0x2b.7 (4) 0x00020| 00 00 00 0e| ....| align: 14 0x2c-0x2f.7 (4) -0x00030|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| unknown0: raw bits 0x30-0x3fff.7 (16336) +0x00030|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| gap0: raw bits 0x30-0x3fff.7 (16336) * |until 0x3fff.7 (16336) | | | | | files[0:2]: 0x4000-0x1c137.7 (98616) |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| [0]{}: file (macho) 0x4000-0xc137.7 (33080) @@ -1042,29 +1042,29 @@ $ fq dv a_stripped | | | linkedit_data{}: 0x105a8-0x105af.7 (8) 0x105a0| 40 c1 00 00 | @... | off: 49472 0x105a8-0x105ab.7 (4) 0x105a0| 18 02 00 00| ....| size: 536 0x105ac-0x105af.7 (4) -0x04540| 00 00 00 00 00 00 00 00| ........| unknown1: raw bits 0x4548-0x7f3f.7 (14840) +0x04540| 00 00 00 00 00 00 00 00| ........| gap1: raw bits 0x4548-0x7f3f.7 (14840) 0x04550|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x7f3f.7 (14840) | | -0x07fa0| 00 00 00 | ... | unknown2: raw bits 0x7fa9-0x7fab.7 (3) -0x07ff0| 00 00 00 00 00 00 00 00 00 00 00 00| ............| unknown3: raw bits 0x7ff4-0x7fff.7 (12) -0x08020|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| unknown4: raw bits 0x8020-0xc07f.7 (16480) +0x07fa0| 00 00 00 | ... | gap2: raw bits 0x7fa9-0x7fab.7 (3) +0x07ff0| 00 00 00 00 00 00 00 00 00 00 00 00| ............| gap3: raw bits 0x7ff4-0x7fff.7 (12) +0x08020|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| gap4: raw bits 0x8020-0xc07f.7 (16480) * |until 0xc07f.7 (16480) | | -0x0c0d0|02 00 00 00 03 00 00 00 00 00 00 40 04 00 00 00|...........@....| unknown5: raw bits 0xc0d0-0xc0e7.7 (24) +0x0c0d0|02 00 00 00 03 00 00 00 00 00 00 40 04 00 00 00|...........@....| gap5: raw bits 0xc0d0-0xc0e7.7 (24) 0x0c0e0|02 00 00 00 03 00 00 00 |........ | -0x0c130| 00 00 00 00 00 00 00 00| ........| unknown6: raw bits 0xc138-0xffff.7 (16072) +0x0c130| 00 00 00 00 00 00 00 00| ........| gap6: raw bits 0xc138-0xffff.7 (16072) 0x0c140|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0xffff.7 (16072) | | -0x105b0|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| unknown7: raw bits 0x105b0-0x13f2f.7 (14720) +0x105b0|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| gap7: raw bits 0x105b0-0x13f2f.7 (14720) * |until 0x13f2f.7 (14720) | | -0x13fb0| 00 00 00 | ... | unknown8: raw bits 0x13fb5-0x13fb7.7 (3) -0x14000| 00 00 00 00 00 00 00 00| ........| unknown9: raw bits 0x14008-0x17fff.7 (16376) +0x13fb0| 00 00 00 | ... | gap8: raw bits 0x13fb5-0x13fb7.7 (3) +0x14000| 00 00 00 00 00 00 00 00| ........| gap9: raw bits 0x14008-0x17fff.7 (16376) 0x14010|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x17fff.7 (16376) | | -0x18010| 00 00 00 00 00 00 00 00| ........| unknown10: raw bits 0x18018-0x1c07f.7 (16488) +0x18010| 00 00 00 00 00 00 00 00| ........| gap10: raw bits 0x18018-0x1c07f.7 (16488) 0x18020|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x1c07f.7 (16488) | | -0x1c0d0|02 00 00 00 03 00 00 00 04 00 00 00 02 00 00 00|................| unknown11: raw bits 0x1c0d0-0x1c0e7.7 (24) +0x1c0d0|02 00 00 00 03 00 00 00 04 00 00 00 02 00 00 00|................| gap11: raw bits 0x1c0d0-0x1c0e7.7 (24) 0x1c0e0|03 00 00 00 00 00 00 00 |........ | -0x1c130| 00 00 00 00 00 00 00 00| ........| unknown12: raw bits 0x1c138-0x1c357.7 (544) +0x1c130| 00 00 00 00 00 00 00 00| ........| gap12: raw bits 0x1c138-0x1c357.7 (544) 0x1c140|fa de 0c c0 00 00 02 17 00 00 00 01 00 00 00 00|................| * |until 0x1c357.7 (end) (544) | | diff --git a/format/macho/testdata/darwin_fat/libbbb.so.fqtest b/format/macho/testdata/darwin_fat/libbbb.so.fqtest index 1a6cfbdf..186c4c8a 100644 --- a/format/macho/testdata/darwin_fat/libbbb.so.fqtest +++ b/format/macho/testdata/darwin_fat/libbbb.so.fqtest @@ -16,7 +16,7 @@ $ fq dv libbbb.so 0x00020| 00 01 00 00 | .... | offset: 0x10000 0x24-0x27.7 (4) 0x00020| 00 00 c2 f6 | .... | size: 49910 0x28-0x2b.7 (4) 0x00020| 00 00 00 0e| ....| align: 14 0x2c-0x2f.7 (4) -0x00030|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| unknown0: raw bits 0x30-0x3fff.7 (16336) +0x00030|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| gap0: raw bits 0x30-0x3fff.7 (16336) * |until 0x3fff.7 (16336) | | | | | files[0:2]: 0x4000-0x1c0d7.7 (98520) |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| [0]{}: file (macho) 0x4000-0xc0b7.7 (32952) @@ -965,27 +965,27 @@ $ fq dv libbbb.so | | | linkedit_data{}: 0x10528-0x1052f.7 (8) 0x10520| e0 c0 00 00 | .... | off: 49376 0x10528-0x1052b.7 (4) 0x10520| 16 02 00 00| ....| size: 534 0x1052c-0x1052f.7 (4) -0x044c0| 00 00 00 00 00 00 00 00| ........| unknown1: raw bits 0x44c8-0x7f6f.7 (15016) +0x044c0| 00 00 00 00 00 00 00 00| ........| gap1: raw bits 0x44c8-0x7f6f.7 (15016) 0x044d0|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x7f6f.7 (15016) | | -0x07f80| 00 00 | .. | unknown2: raw bits 0x7f8a-0x7f8b.7 (2) -0x07fb0| 00 00 | .. | unknown3: raw bits 0x7fb2-0x7fb3.7 (2) -0x07ff0| 00 00 00 00| ....| unknown4: raw bits 0x7ffc-0x7fff.7 (4) -0x08010| 00 00 00 00 00 00 00 00| ........| unknown5: raw bits 0x8018-0xc04f.7 (16440) +0x07f80| 00 00 | .. | gap2: raw bits 0x7f8a-0x7f8b.7 (2) +0x07fb0| 00 00 | .. | gap3: raw bits 0x7fb2-0x7fb3.7 (2) +0x07ff0| 00 00 00 00| ....| gap4: raw bits 0x7ffc-0x7fff.7 (4) +0x08010| 00 00 00 00 00 00 00 00| ........| gap5: raw bits 0x8018-0xc04f.7 (16440) 0x08020|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0xc04f.7 (16440) | | -0x0c080|01 00 00 00 00 00 00 40 02 00 00 00 01 00 00 00|.......@........| unknown6: raw bits 0xc080-0xc08f.7 (16) -0x0c0b0| 00 00 00 00 00 00 00 00| ........| unknown7: raw bits 0xc0b8-0xffff.7 (16200) +0x0c080|01 00 00 00 00 00 00 40 02 00 00 00 01 00 00 00|.......@........| gap6: raw bits 0xc080-0xc08f.7 (16) +0x0c0b0| 00 00 00 00 00 00 00 00| ........| gap7: raw bits 0xc0b8-0xffff.7 (16200) 0x0c0c0|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0xffff.7 (16200) | | -0x10530|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| unknown8: raw bits 0x10530-0x13f5f.7 (14896) +0x10530|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| gap8: raw bits 0x10530-0x13f5f.7 (14896) * |until 0x13f5f.7 (14896) | | -0x14000| 00 00 00 00 00 00 00 00| ........| unknown9: raw bits 0x14008-0x17fff.7 (16376) +0x14000| 00 00 00 00 00 00 00 00| ........| gap9: raw bits 0x14008-0x17fff.7 (16376) 0x14010|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| * |until 0x17fff.7 (16376) | | -0x18010|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| unknown10: raw bits 0x18010-0x1c04f.7 (16448) +0x18010|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| gap10: raw bits 0x18010-0x1c04f.7 (16448) * |until 0x1c04f.7 (16448) | | -0x1c090|02 00 00 00 03 00 00 00 02 00 00 00 00 00 00 00|................| unknown11: raw bits 0x1c090-0x1c09f.7 (16) -0x1c0d0| 00 00 00 00 00 00 00 00| ........| unknown12: raw bits 0x1c0d8-0x1c2f5.7 (542) +0x1c090|02 00 00 00 03 00 00 00 02 00 00 00 00 00 00 00|................| gap11: raw bits 0x1c090-0x1c09f.7 (16) +0x1c0d0| 00 00 00 00 00 00 00 00| ........| gap12: raw bits 0x1c0d8-0x1c2f5.7 (542) 0x1c0e0|fa de 0c c0 00 00 02 16 00 00 00 01 00 00 00 00|................| * |until 0x1c2f5.7 (end) (542) | | diff --git a/format/matroska/testdata/hevc.fqtest b/format/matroska/testdata/hevc.fqtest index bf17faea..c7075562 100644 --- a/format/matroska/testdata/hevc.fqtest +++ b/format/matroska/testdata/hevc.fqtest @@ -347,7 +347,7 @@ $ fq -d matroska dv hevc.mkv | | | [0][0:1]: layer_id_included_sets_flags 0x12.5-0x12.5 (0.1) 0x01| 09| | .| | [0]: false layer_id_included_flag_sets_flag 0x12.5-0x12.5 (0.1) 0x01| 09| | .| | vps_timing_info_present_flag: false 0x12.6-0x12.6 (0.1) - 0x01| 09| | .| | unknown0: raw bits 0x12.7-0x12.7 (0.1) + 0x01| 09| | .| | gap0: raw bits 0x12.7-0x12.7 (0.1) 0x0190| 40| @| forbidden_zero_bit: false 0x19f-0x19f (0.1) 0x0190| 40| @| nal_unit_type: "VPS_NUT" (32) 0x19f.1-0x19f.6 (0.6) 0x0190| 40| @| nuh_layer_id: 0 0x19f.7-0x1a0.4 (0.6) @@ -476,7 +476,7 @@ $ fq -d matroska dv hevc.mkv 0x02| 42| | B| | vui_hrd_parameters_present_flag: false 0x25.3-0x25.3 (0.1) 0x02| 42| | B| | bitstream_restriction_flag: false 0x25.4-0x25.4 (0.1) 0x02| 42| | B| | sps_extension_present_flag: false 0x25.5-0x25.5 (0.1) - 0x02| 42| | B| | unknown0: raw bits 0x25.6-0x25.7 (0.2) + 0x02| 42| | B| | gap0: raw bits 0x25.6-0x25.7 (0.2) 0x01b0| 42 | B | forbidden_zero_bit: false 0x1bb-0x1bb (0.1) 0x01b0| 42 | B | nal_unit_type: "SPS_NUT" (33) 0x1bb.1-0x1bb.6 (0.6) 0x01b0| 42 01 | B. | nuh_layer_id: 0 0x1bb.7-0x1bc.4 (0.6) @@ -523,7 +523,7 @@ $ fq -d matroska dv hevc.mkv 0x00| 24| | $| | log2_parallel_merge_level_minus2: 0 0x5.2-0x5.2 (0.1) 0x00| 24| | $| | slice_segment_header_extension_present_flag: false 0x5.3-0x5.3 (0.1) 0x00| 24| | $| | pps_extension_present_flag: false 0x5.4-0x5.4 (0.1) - 0x00| 24| | $| | unknown0: raw bits 0x5.5-0x5.7 (0.3) + 0x00| 24| | $| | gap0: raw bits 0x5.5-0x5.7 (0.3) 0x01e0| 44 | D | forbidden_zero_bit: false 0x1eb-0x1eb (0.1) 0x01e0| 44 | D | nal_unit_type: "PPS_NUT" (34) 0x1eb.1-0x1eb.6 (0.6) 0x01e0| 44 01 | D. | nuh_layer_id: 0 0x1eb.7-0x1ec.4 (0.6) diff --git a/format/mp3/testdata/header-zeros-frames.fqtest b/format/mp3/testdata/header-zeros-frames.fqtest index 8818467b..645e5de5 100644 --- a/format/mp3/testdata/header-zeros-frames.fqtest +++ b/format/mp3/testdata/header-zeros-frames.fqtest @@ -33,7 +33,7 @@ $ fq -d mp3 dv header-zeros-frames.mp3 0x010| 4c 61 76 66 35 38 2e 34 35 2e 31| Lavf58.45.1| text: "Lavf58.45.100" 0x15-0x22.7 (14) 0x020|30 30 00 |00. | 0x020| 00 00 00 00 00 00 00 00 00 00 | .......... | padding: raw bits (all zero) 0x23-0x2c.7 (10) -0x020| 00 00 00| ...| unknown0: raw bits 0x2d-0x2f.7 (3) +0x020| 00 00 00| ...| gap0: raw bits 0x2d-0x2f.7 (3) | | | frames[0:1]: 0x30-0xff.7 (208) |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| [0]{}: frame (mp3_frame) 0x30-0xff.7 (208) | | | header{}: 0x30-0x33.7 (4) diff --git a/format/mp3/testdata/unknown.fqtest b/format/mp3/testdata/unknown.fqtest index 58be93d2..22ed5e1c 100644 --- a/format/mp3/testdata/unknown.fqtest +++ b/format/mp3/testdata/unknown.fqtest @@ -2,10 +2,10 @@ $ fq -d mp3 . unknown.mp3 |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: unknown.mp3 (mp3) | | | headers[0:0]: -0x000|61 61 61 61 |aaaa | unknown0: raw bits +0x000|61 61 61 61 |aaaa | gap0: raw bits 0x000| ff fb 90 64 00 00 02 6b 0b ce 9d 60| ...d...k...`| frames[0:2]: 0x010|60 00 00 00 0d 20 a0 00 01 18 c9 99 51 b9 a7 80|`.... ......Q...| * |until 0x349.7 (838) | | -0x1a0| 62 62 62 62 | bbbb | unknown1: raw bits +0x1a0| 62 62 62 62 | bbbb | gap1: raw bits | | | footers[0:0]: -0x340| 63 63 63 63 63| | ccccc|| unknown2: raw bits +0x340| 63 63 63 63 63| | ccccc|| gap2: raw bits diff --git a/format/mp4/testdata/heic.fqtest b/format/mp4/testdata/heic.fqtest index 81ced880..e8569294 100644 --- a/format/mp4/testdata/heic.fqtest +++ b/format/mp4/testdata/heic.fqtest @@ -187,7 +187,7 @@ $ fq -d mp4 dv heic.mp4 | | | [0][0:1]: layer_id_included_sets_flags 0x12.7-0x12.7 (0.1) 0x01| 02 | . | [0]: false layer_id_included_flag_sets_flag 0x12.7-0x12.7 (0.1) 0x01| 40| | @| | vps_timing_info_present_flag: false 0x13-0x13 (0.1) - 0x01| 40| | @| | unknown0: raw bits 0x13.1-0x13.7 (0.7) + 0x01| 40| | @| | gap0: raw bits 0x13.1-0x13.7 (0.7) 0x00f0| 40 | @ | forbidden_zero_bit: false 0xf4-0xf4 (0.1) 0x00f0| 40 | @ | nal_unit_type: "VPS_NUT" (32) 0xf4.1-0xf4.6 (0.6) 0x00f0| 40 01 | @. | nuh_layer_id: 0 0xf4.7-0xf5.4 (0.6) @@ -302,7 +302,7 @@ $ fq -d mp4 dv heic.mp4 0x02|21| |!| | vui_hrd_parameters_present_flag: false 0x20.4-0x20.4 (0.1) 0x02|21| |!| | bitstream_restriction_flag: false 0x20.5-0x20.5 (0.1) 0x02|21| |!| | sps_extension_present_flag: false 0x20.6-0x20.6 (0.1) - 0x02|21| |!| | unknown0: raw bits 0x20.7-0x20.7 (0.1) + 0x02|21| |!| | gap0: raw bits 0x20.7-0x20.7 (0.1) 0x0110| 42 | B | forbidden_zero_bit: false 0x112-0x112 (0.1) 0x0110| 42 | B | nal_unit_type: "SPS_NUT" (33) 0x112.1-0x112.6 (0.6) 0x0110| 42 01 | B. | nuh_layer_id: 0 0x112.7-0x113.4 (0.6) @@ -349,7 +349,7 @@ $ fq -d mp4 dv heic.mp4 0x00| 89| | .| | log2_parallel_merge_level_minus2: 0 0x3.4-0x3.4 (0.1) 0x00| 89| | .| | slice_segment_header_extension_present_flag: false 0x3.5-0x3.5 (0.1) 0x00| 89| | .| | pps_extension_present_flag: false 0x3.6-0x3.6 (0.1) - 0x00| 89| | .| | unknown0: raw bits 0x3.7-0x3.7 (0.1) + 0x00| 89| | .| | gap0: raw bits 0x3.7-0x3.7 (0.1) 0x0130| 44| D| forbidden_zero_bit: false 0x13f-0x13f (0.1) 0x0130| 44| D| nal_unit_type: "PPS_NUT" (34) 0x13f.1-0x13f.6 (0.6) 0x0130| 44| D| nuh_layer_id: 0 0x13f.7-0x140.4 (0.6) diff --git a/format/mp4/testdata/hevc.fqtest b/format/mp4/testdata/hevc.fqtest index 9e311b31..9909c963 100644 --- a/format/mp4/testdata/hevc.fqtest +++ b/format/mp4/testdata/hevc.fqtest @@ -331,7 +331,7 @@ $ fq -d mp4 dv hevc.mp4 | | | [0][0:1]: layer_id_included_sets_flags 0x12.5-0x12.5 (0.1) 0x01| 09| | .| | [0]: false layer_id_included_flag_sets_flag 0x12.5-0x12.5 (0.1) 0x01| 09| | .| | vps_timing_info_present_flag: false 0x12.6-0x12.6 (0.1) - 0x01| 09| | .| | unknown0: raw bits 0x12.7-0x12.7 (0.1) + 0x01| 09| | .| | gap0: raw bits 0x12.7-0x12.7 (0.1) 0x0aa0| 40 | @ | forbidden_zero_bit: false 0xaa4-0xaa4 (0.1) 0x0aa0| 40 | @ | nal_unit_type: "VPS_NUT" (32) 0xaa4.1-0xaa4.6 (0.6) 0x0aa0| 40 01 | @. | nuh_layer_id: 0 0xaa4.7-0xaa5.4 (0.6) @@ -459,7 +459,7 @@ $ fq -d mp4 dv hevc.mp4 0x02| 42| | B| | vui_hrd_parameters_present_flag: false 0x25.3-0x25.3 (0.1) 0x02| 42| | B| | bitstream_restriction_flag: false 0x25.4-0x25.4 (0.1) 0x02| 42| | B| | sps_extension_present_flag: false 0x25.5-0x25.5 (0.1) - 0x02| 42| | B| | unknown0: raw bits 0x25.6-0x25.7 (0.2) + 0x02| 42| | B| | gap0: raw bits 0x25.6-0x25.7 (0.2) 0x0ac0|42 |B | forbidden_zero_bit: false 0xac0-0xac0 (0.1) 0x0ac0|42 |B | nal_unit_type: "SPS_NUT" (33) 0xac0.1-0xac0.6 (0.6) 0x0ac0|42 01 |B. | nuh_layer_id: 0 0xac0.7-0xac1.4 (0.6) @@ -506,7 +506,7 @@ $ fq -d mp4 dv hevc.mp4 0x00| 24| | $| | log2_parallel_merge_level_minus2: 0 0x5.2-0x5.2 (0.1) 0x00| 24| | $| | slice_segment_header_extension_present_flag: false 0x5.3-0x5.3 (0.1) 0x00| 24| | $| | pps_extension_present_flag: false 0x5.4-0x5.4 (0.1) - 0x00| 24| | $| | unknown0: raw bits 0x5.5-0x5.7 (0.3) + 0x00| 24| | $| | gap0: raw bits 0x5.5-0x5.7 (0.3) 0x0af0|44 |D | forbidden_zero_bit: false 0xaf0-0xaf0 (0.1) 0x0af0|44 |D | nal_unit_type: "PPS_NUT" (34) 0xaf0.1-0xaf0.6 (0.6) 0x0af0|44 01 |D. | nuh_layer_id: 0 0xaf0.7-0xaf1.4 (0.6) diff --git a/format/mpeg/testdata/hevc_annexb.fqtest b/format/mpeg/testdata/hevc_annexb.fqtest index 63c43167..1d05f576 100644 --- a/format/mpeg/testdata/hevc_annexb.fqtest +++ b/format/mpeg/testdata/hevc_annexb.fqtest @@ -77,7 +77,7 @@ $ fq -d hevc_annexb dv hevc_annexb | | | [0][0:1]: layer_id_included_sets_flags 0x12.5-0x12.5 (0.1) 0x01| 09| | .| | [0]: false layer_id_included_flag_sets_flag 0x12.5-0x12.5 (0.1) 0x01| 09| | .| | vps_timing_info_present_flag: false 0x12.6-0x12.6 (0.1) - 0x01| 09| | .| | unknown0: raw bits 0x12.7-0x12.7 (0.1) + 0x01| 09| | .| | gap0: raw bits 0x12.7-0x12.7 (0.1) 0x0000| 40 | @ | forbidden_zero_bit: false 0x4-0x4 (0.1) 0x0000| 40 | @ | nal_unit_type: "VPS_NUT" (32) 0x4.1-0x4.6 (0.6) 0x0000| 40 01 | @. | nuh_layer_id: 0 0x4.7-0x5.4 (0.6) @@ -198,7 +198,7 @@ $ fq -d hevc_annexb dv hevc_annexb 0x02| 42| | B| | vui_hrd_parameters_present_flag: false 0x25.3-0x25.3 (0.1) 0x02| 42| | B| | bitstream_restriction_flag: false 0x25.4-0x25.4 (0.1) 0x02| 42| | B| | sps_extension_present_flag: false 0x25.5-0x25.5 (0.1) - 0x02| 42| | B| | unknown0: raw bits 0x25.6-0x25.7 (0.2) + 0x02| 42| | B| | gap0: raw bits 0x25.6-0x25.7 (0.2) 0x0010| 42| B| forbidden_zero_bit: false 0x1f-0x1f (0.1) 0x0010| 42| B| nal_unit_type: "SPS_NUT" (33) 0x1f.1-0x1f.6 (0.6) 0x0010| 42| B| nuh_layer_id: 0 0x1f.7-0x20.4 (0.6) @@ -239,7 +239,7 @@ $ fq -d hevc_annexb dv hevc_annexb 0x00| 24| | $| | log2_parallel_merge_level_minus2: 0 0x5.2-0x5.2 (0.1) 0x00| 24| | $| | slice_segment_header_extension_present_flag: false 0x5.3-0x5.3 (0.1) 0x00| 24| | $| | pps_extension_present_flag: false 0x5.4-0x5.4 (0.1) - 0x00| 24| | $| | unknown0: raw bits 0x5.5-0x5.7 (0.3) + 0x00| 24| | $| | gap0: raw bits 0x5.5-0x5.7 (0.3) 0x0040| 44 | D | forbidden_zero_bit: false 0x4e-0x4e (0.1) 0x0040| 44 | D | nal_unit_type: "PPS_NUT" (34) 0x4e.1-0x4e.6 (0.6) 0x0040| 44 01| D.| nuh_layer_id: 0 0x4e.7-0x4f.4 (0.6) diff --git a/format/pcap/testdata/ns.fqtest b/format/pcap/testdata/ns.fqtest index 8aad1556..1d9a7f1e 100644 --- a/format/pcap/testdata/ns.fqtest +++ b/format/pcap/testdata/ns.fqtest @@ -45,6 +45,6 @@ $ fq dv ns.pcap 0x50| 00 09 00 01 24 3c ba a0 59 e8 82 21 00 00| ....$<..Y..!..| payload: raw bits 0x52-0xc1.7 (112) 0x60|04 24 00 00 00 08 00 00 00 5c 01 a8 00 15 00 08|.$.......\......| * |until 0xc1.7 (112) | | -0xc0| 74 be 47 c0| | t.G.| | unknown0: raw bits 0xc2-0xc5.7 (4) +0xc0| 74 be 47 c0| | t.G.| | gap0: raw bits 0xc2-0xc5.7 (4) | | | ipv4_reassembled[0:0]: 0xc6-NA (0) | | | tcp_connections[0:0]: 0xc6-NA (0) diff --git a/format/png/testdata/4x4a.fqtest b/format/png/testdata/4x4a.fqtest index 19b91d1c..18658aec 100644 --- a/format/png/testdata/4x4a.fqtest +++ b/format/png/testdata/4x4a.fqtest @@ -109,4 +109,4 @@ $ fq -d png dv 4x4a.apng 0xe0| 4e | N | reserved: false 0xee.3-0xee.3 (0.1) 0xe0| 44| D| safe_to_copy: false 0xef.3-0xef.3 (0.1) 0xf0|ae 42 60 82| |.B`.| | crc: 0xae426082 (valid) 0xf0-0xf3.7 (4) -0xe0|29 e6 05 fb |)... | unknown0: raw bits 0xe0-0xe3.7 (4) +0xe0|29 e6 05 fb |)... | gap0: raw bits 0xe0-0xe3.7 (4) diff --git a/format/riff/testdata/flac.avi.fqtest b/format/riff/testdata/flac.avi.fqtest index 4c4e0e59..b7f05473 100644 --- a/format/riff/testdata/flac.avi.fqtest +++ b/format/riff/testdata/flac.avi.fqtest @@ -204,7 +204,7 @@ $ fq dv flac.avi 0x18c0| 00 00 00 | ... | unused2: raw bits 0x18c1-0x18c3.7 (3) 0x18c0| 66 02 00 00 | f... | offset: 614 0x18c4-0x18c7.7 (4) 0x18c0| 00 00 00 00| | ....| | length: 0 0x18c8-0x18cb.7 (4) -0x00c0| 00 00| ..| unknown0: raw bits 0xce-0xdf.7 (18) +0x00c0| 00 00| ..| gap0: raw bits 0xce-0xdf.7 (18) 0x00d0|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| | | | streams[0:1]: 0x1642-0x18a3.7 (610) | | | [0]{}: stream 0x1642-0x18a3.7 (610) diff --git a/format/riff/testdata/mp3.avi.fqtest b/format/riff/testdata/mp3.avi.fqtest index a73fb4e7..122407e6 100644 --- a/format/riff/testdata/mp3.avi.fqtest +++ b/format/riff/testdata/mp3.avi.fqtest @@ -349,7 +349,7 @@ $ fq dv mp3.avi 0x18d0| 00 00 00| ...| unused2: raw bits 0x18dd-0x18df.7 (3) 0x18e0|b6 01 00 00 |.... | offset: 438 0x18e0-0x18e3.7 (4) 0x18e0| d1 00 00 00| | ....| | length: 209 0x18e4-0x18e7.7 (4) -0x00b0| 01 00| ..| unknown0: raw bits 0xbe-0xc9.7 (12) +0x00b0| 01 00| ..| gap0: raw bits 0xbe-0xc9.7 (12) 0x00c0|02 00 00 00 80 04 01 00 71 05 |........q. | | | | streams[0:1]: 0x162c-0x18ae.7 (643) | | | [0]{}: stream 0x162c-0x18ae.7 (643) diff --git a/format/tiff/testdata/4x4.fqtest b/format/tiff/testdata/4x4.fqtest index 4a9754be..6ca24da5 100644 --- a/format/tiff/testdata/4x4.fqtest +++ b/format/tiff/testdata/4x4.fqtest @@ -122,4 +122,4 @@ $ fq -d tiff dv 4x4.tiff | | | values[0:1]: 0xb2-0xb3.7 (2) 0x0b0| 01 00 | .. | [0]: 1 value 0xb2-0xb3.7 (2) 0x0b0| 00 00 00 00 | .... | next_ifd: 0 0xb6-0xb9.7 (4) -0x0c0| 00 | . | unknown0: raw bits 0xc3-0xc3.7 (1) +0x0c0| 00 | . | gap0: raw bits 0xc3-0xc3.7 (1) diff --git a/format/tiff/testdata/infinite.fqtest b/format/tiff/testdata/infinite.fqtest index 80c0c9d1..62b70639 100644 --- a/format/tiff/testdata/infinite.fqtest +++ b/format/tiff/testdata/infinite.fqtest @@ -5,9 +5,9 @@ $ fq.go -n '"SUkqAAwAAAAwMDAwAQAwMDAwMDAwMDAwMDAhAAAAMDAwAAAhAAAA" | frombase64 0x00|49 49 |II | order: "II" (valid) 0x00| 2a 00 | *. | integer_42: 42 (valid) 0x00| 0c 00 00 00 | .... | first_ifd: 12 -0x00| 30 30 30 30 | 0000 | unknown0: raw bits +0x00| 30 30 30 30 | 0000 | gap0: raw bits 0x00| 01 00 30 30| ..00| ifds[0:2]: 0x10|30 30 30 30 30 30 30 30 30 30 21 00 00 00 30 30|0000000000!...00| 0x20|30 00 00 21 00 00 00| |0..!...| | -0x10| 30 30| 00| unknown1: raw bits +0x10| 30 30| 00| gap1: raw bits 0x20|30 |0 | diff --git a/pkg/decode/decode.go b/pkg/decode/decode.go index 53d1a037..4140a615 100644 --- a/pkg/decode/decode.go +++ b/pkg/decode/decode.go @@ -119,7 +119,7 @@ func decode(ctx context.Context, br bitio.ReaderAtSeeker, group Group, opts Opti // TODO: maybe move to Format* funcs? if opts.FillGaps { - d.FillGaps(ranges.Range{Start: 0, Len: decodeRange.Len}, "unknown") + d.FillGaps(ranges.Range{Start: 0, Len: decodeRange.Len}, "gap") } var minMaxRange ranges.Range @@ -309,14 +309,14 @@ func (d *D) FillGaps(r ranges.Range, namePrefix string) { v := &Value{ Name: fmt.Sprintf("%s%d", namePrefix, i), V: &scalar.S{ - Actual: br, - Unknown: true, + Actual: br, + Gap: true, }, RootReader: d.bitBuf, Range: gap, } - // TODO: for arrays not great that we just append unknown fields + // TODO: for arrays not great that we just append gap fields d.AddChild(v) } } diff --git a/pkg/interp/decode.go b/pkg/interp/decode.go index 0b6c1a9e..80f6b645 100644 --- a/pkg/interp/decode.go +++ b/pkg/interp/decode.go @@ -473,7 +473,7 @@ func (dvb decodeValueBase) ExtKeys() []string { "_path", "_bits", "_bytes", - "_unknown", + "_gap", "_index", // TODO: only if parent is array? } @@ -573,10 +573,10 @@ func (dvb decodeValueBase) JQValueKey(name string) any { return nil case "_out": return dvb.out - case "_unknown": + case "_gap": switch vv := dv.V.(type) { case *scalar.S: - return vv.Unknown + return vv.Gap default: return false } diff --git a/pkg/interp/testdata/argvars.fqtest b/pkg/interp/testdata/argvars.fqtest index 45d14f02..46331fd0 100644 --- a/pkg/interp/testdata/argvars.fqtest +++ b/pkg/interp/testdata/argvars.fqtest @@ -36,7 +36,7 @@ error: --argdecode filea: no such file or directory $ fq -n -d mp4 --argdecode filea test.mp3 '$filea' |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: test.mp3 (mp4) | | | error: mp4: error at position 0x8: no styp, ftyp, free or moov box found -0x000|49 44 33 04 00 00 00 00 00 23 54 53 53 45 00 00|ID3......#TSSE..| unknown0: raw bits +0x000|49 44 33 04 00 00 00 00 00 23 54 53 53 45 00 00|ID3......#TSSE..| gap0: raw bits * |until 0x283.7 (end) (644) | | $ fq -n --argjson a '(' '$a' exitcode: 2 diff --git a/pkg/interp/testdata/basic.fqtest b/pkg/interp/testdata/basic.fqtest index 384df42d..0f218498 100644 --- a/pkg/interp/testdata/basic.fqtest +++ b/pkg/interp/testdata/basic.fqtest @@ -13,7 +13,7 @@ mp3> .headers[0].flags + {} "unsynchronisation": false, "unused": 0 } -mp3> ._unknown +mp3> ._gap false mp3> format "mp3" @@ -29,6 +29,6 @@ $ fq -d mp3_frame . |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (mp3_frame) | | | error: mp3_frame: U11(sync): failed at position 1.3 (read size 0 seek pos 0): failed to assert U | | | header{}: -0x0|61 62 63 0a| |abc.| | unknown0: raw bits +0x0|61 62 63 0a| |abc.| | gap0: raw bits stdin: abc diff --git a/pkg/interp/testdata/completion.fqtest b/pkg/interp/testdata/completion.fqtest index 2ea24d85..7368a7ae 100644 --- a/pkg/interp/testdata/completion.fqtest +++ b/pkg/interp/testdata/completion.fqtest @@ -45,6 +45,7 @@ _description _error _format _format_root +_gap _index _len _name @@ -55,7 +56,6 @@ _root _start _stop _sym -_unknown mp3> .frames\t frames[] mp3> .frames[]\t diff --git a/pkg/interp/testdata/decode.fqtest b/pkg/interp/testdata/decode.fqtest index e6680ac7..649f6abf 100644 --- a/pkg/interp/testdata/decode.fqtest +++ b/pkg/interp/testdata/decode.fqtest @@ -65,12 +65,12 @@ mp3> ^D $ fq -d bytes 'png | d' test.mp3 |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (png) | | | error: png: RawLen(signature): failed at position 8 (read size 0 seek pos 0): failed to validate raw -0x000|49 44 33 04 00 00 00 00 00 23 54 53 53 45 00 00|ID3......#TSSE..| unknown0: raw bits +0x000|49 44 33 04 00 00 00 00 00 23 54 53 53 45 00 00|ID3......#TSSE..| gap0: raw bits * |until 0x283.7 (end) (644) | | $ fq -d bytes '.[0:1] | png | d' test.mp3 |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (png) | | | error: png: RawLen(signature): failed at position 0 (read size 0 seek pos 0): outside buffer -0x0|49 |I | unknown0: raw bits +0x0|49 |I | gap0: raw bits $ fq -o force=true -d png d test.mp3 |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: test.mp3 (png) | | | error: png: BitBufRange: failed at position 0 (read size 2315363 seek pos 0): outside buffer @@ -83,7 +83,7 @@ $ fq -o force=true -d png d test.mp3 0x000| 45 | E | private: false 0x000| 00 | . | reserved: false 0x000| 00| .| safe_to_copy: false -0x010|00 0f 00 00 03 4c 61 76 66 35 38 2e 34 35 2e 31|.....Lavf58.45.1| unknown0: raw bits +0x010|00 0f 00 00 03 4c 61 76 66 35 38 2e 34 35 2e 31|.....Lavf58.45.1| gap0: raw bits * |until 0x283.7 (end) (628) | | $ fq -d bytes '.[0:1] | try probe catch . | type' test.mp3 "array" @@ -99,7 +99,7 @@ $ fq -d bytes 'png({force: true}) | d' test.mp3 0x000| 45 | E | private: false 0x000| 00 | . | reserved: false 0x000| 00| .| safe_to_copy: false -0x010|00 0f 00 00 03 4c 61 76 66 35 38 2e 34 35 2e 31|.....Lavf58.45.1| unknown0: raw bits +0x010|00 0f 00 00 03 4c 61 76 66 35 38 2e 34 35 2e 31|.....Lavf58.45.1| gap0: raw bits * |until 0x283.7 (end) (628) | | $ fq -d bbb . test.mp3 exitcode: 4 diff --git a/pkg/interp/testdata/display.fqtest b/pkg/interp/testdata/display.fqtest index 26c688be..9f77244f 100644 --- a/pkg/interp/testdata/display.fqtest +++ b/pkg/interp/testdata/display.fqtest @@ -708,7 +708,7 @@ $ fq -n '"broken" | mp3 | d' | | | error: mp3: error at position 0x0: no frames found | | | headers[0:0]: | | | frames[0:0]: -0x0|62 72 6f 6b 65 6e| |broken| | unknown0: raw bits +0x0|62 72 6f 6b 65 6e| |broken| | gap0: raw bits # TODO: add root depth test # test unicode "│" and column truncate $ fq -o unicode=true . test.mp3 diff --git a/pkg/interp/testdata/repl.fqtest b/pkg/interp/testdata/repl.fqtest index 65196996..66b1cdb0 100644 --- a/pkg/interp/testdata/repl.fqtest +++ b/pkg/interp/testdata/repl.fqtest @@ -42,8 +42,8 @@ error: err > number> . 1 > number> ^D -null> (1 | mp3_frame | .unknown0), 1 | repl -> .unknown0 string, ...[0:2][]> ^D +null> (1 | mp3_frame | .gap0), 1 | repl +> .gap0 string, ...[0:2][]> ^D null> def f: 1; f,f | repl > number, ...[0:2][]> . 1 diff --git a/pkg/interp/testdata/tovalue.fqtest b/pkg/interp/testdata/tovalue.fqtest index b6d7646c..361172b3 100644 --- a/pkg/interp/testdata/tovalue.fqtest +++ b/pkg/interp/testdata/tovalue.fqtest @@ -1,6 +1,6 @@ # TODO: use test format $ fq -i -null> "aaa" | mp3_frame | .unknown0 | tovalue, tovalue({sizebase: 2}) +null> "aaa" | mp3_frame | .gap0 | tovalue, tovalue({sizebase: 2}) "aaa" "aaa" null> ^D diff --git a/pkg/interp/testdata/value.fqtest b/pkg/interp/testdata/value.fqtest index 7902a871..b59bff59 100644 --- a/pkg/interp/testdata/value.fqtest +++ b/pkg/interp/testdata/value.fqtest @@ -98,7 +98,7 @@ mp3> .headers[0].magic as $c | (0, "abc") as $n | $n, try ($c | has($n)) catch . "has cannot be applied to: string" "abc" "has cannot be applied to: string" -mp3> . as $c | ("_start", "_stop", "_len", "_name", "_root", "_buffer_root", "_format_root", "_parent", "_sym", "_description", "_path", "_bits", "_bytes", "_error", "_unknown", "_format", "_abc") as $n | $n, try ($c | has($n)) catch . +mp3> . as $c | ("_start", "_stop", "_len", "_name", "_root", "_buffer_root", "_format_root", "_parent", "_sym", "_description", "_path", "_bits", "_bytes", "_error", "_gap", "_format", "_abc") as $n | $n, try ($c | has($n)) catch . "_start" true "_stop" @@ -127,13 +127,13 @@ true true "_error" true -"_unknown" +"_gap" true "_format" true "_abc" "expected a extkey but got: _abc" -mp3> .headers as $c | ("_start", "_stop", "_len", "_name", "_root", "_buffer_root", "_format_root", "_parent", "_sym", "_description", "_path", "_bits", "_bytes", "_error", "_unknown", "_format", "_abc") as $n | $n, try ($c | has($n)) catch . +mp3> .headers as $c | ("_start", "_stop", "_len", "_name", "_root", "_buffer_root", "_format_root", "_parent", "_sym", "_description", "_path", "_bits", "_bytes", "_error", "_gap", "_format", "_abc") as $n | $n, try ($c | has($n)) catch . "_start" true "_stop" @@ -162,13 +162,13 @@ true true "_error" true -"_unknown" +"_gap" true "_format" true "_abc" "expected a extkey but got: _abc" -mp3> .headers[0].magic as $c | ("_start", "_stop", "_len", "_name", "_root", "_buffer_root", "_format_root", "_parent", "_sym", "_description", "_path", "_bits", "_bytes", "_error", "_unknown", "_format", "_abc") as $n | $n, try ($c | has($n)) catch . +mp3> .headers[0].magic as $c | ("_start", "_stop", "_len", "_name", "_root", "_buffer_root", "_format_root", "_parent", "_sym", "_description", "_path", "_bits", "_bytes", "_error", "_gap", "_format", "_abc") as $n | $n, try ($c | has($n)) catch . "_start" true "_stop" @@ -197,7 +197,7 @@ true true "_error" true -"_unknown" +"_gap" true "_format" true @@ -255,7 +255,7 @@ mp3> ._bytes * |until 0x283.7 (end) (644) | | mp3> ._error null -mp3> ._unknown +mp3> ._gap false mp3> ._format "mp3" diff --git a/pkg/interp/testdata/value_array.fqtest b/pkg/interp/testdata/value_array.fqtest index 17ec6699..6b93c7fd 100644 --- a/pkg/interp/testdata/value_array.fqtest +++ b/pkg/interp/testdata/value_array.fqtest @@ -185,7 +185,7 @@ mp3> .headers._error | ., type, length? null "null" 0 -mp3> .headers._unknown | ., type, length? +mp3> .headers._gap | ., type, length? false "boolean" mp3> .headers.a = 1 diff --git a/pkg/interp/testdata/value_boolean.fqtest b/pkg/interp/testdata/value_boolean.fqtest index bf795845..23edd7ac 100644 --- a/pkg/interp/testdata/value_boolean.fqtest +++ b/pkg/interp/testdata/value_boolean.fqtest @@ -90,7 +90,7 @@ mp3> .headers[0].flags.unsynchronisation._error | ., type, length? null "null" 0 -mp3> .headers[0].flags.unsynchronisation._unknown | ., type, length? +mp3> .headers[0].flags.unsynchronisation._gap | ., type, length? false "boolean" mp3> .headers[0].flags.unsynchronisation.a = 1 diff --git a/pkg/interp/testdata/value_json_array.fqtest b/pkg/interp/testdata/value_json_array.fqtest index 11df98bc..a16645b6 100644 --- a/pkg/interp/testdata/value_json_array.fqtest +++ b/pkg/interp/testdata/value_json_array.fqtest @@ -97,7 +97,7 @@ json> (.)._error | ., type, length? null "null" 0 -json> (.)._unknown | ., type, length? +json> (.)._gap | ., type, length? false "boolean" json> (.).a = 1 diff --git a/pkg/interp/testdata/value_json_object.fqtest b/pkg/interp/testdata/value_json_object.fqtest index dc92d13d..1c11a597 100644 --- a/pkg/interp/testdata/value_json_object.fqtest +++ b/pkg/interp/testdata/value_json_object.fqtest @@ -87,7 +87,7 @@ json> (.)._error | ., type, length? null "null" 0 -json> (.)._unknown | ., type, length? +json> (.)._gap | ., type, length? false "boolean" json> (.).a = 1 diff --git a/pkg/interp/testdata/value_null.fqtest b/pkg/interp/testdata/value_null.fqtest index 7c15cbc2..db925d63 100644 --- a/pkg/interp/testdata/value_null.fqtest +++ b/pkg/interp/testdata/value_null.fqtest @@ -103,7 +103,7 @@ mp3> .headers[0].padding._error | ., type, length? null "null" 0 -mp3> .headers[0].padding._unknown | ., type, length? +mp3> .headers[0].padding._gap | ., type, length? false "boolean" mp3> .headers[0].padding.a = 1 diff --git a/pkg/interp/testdata/value_number.fqtest b/pkg/interp/testdata/value_number.fqtest index e15ae3d1..2d95c095 100644 --- a/pkg/interp/testdata/value_number.fqtest +++ b/pkg/interp/testdata/value_number.fqtest @@ -91,7 +91,7 @@ mp3> .headers[0].version._error | ., type, length? null "null" 0 -mp3> .headers[0].version._unknown | ., type, length? +mp3> .headers[0].version._gap | ., type, length? false "boolean" mp3> .headers[0].version.a = 1 diff --git a/pkg/interp/testdata/value_object.fqtest b/pkg/interp/testdata/value_object.fqtest index 0291e807..d8162a3f 100644 --- a/pkg/interp/testdata/value_object.fqtest +++ b/pkg/interp/testdata/value_object.fqtest @@ -105,7 +105,7 @@ mp3> .headers[0].flags._error | ., type, length? null "null" 0 -mp3> .headers[0].flags._unknown | ., type, length? +mp3> .headers[0].flags._gap | ., type, length? false "boolean" mp3> .headers[0].flags.a = 1 diff --git a/pkg/interp/testdata/value_string.fqtest b/pkg/interp/testdata/value_string.fqtest index 699edf8e..13f42ab1 100644 --- a/pkg/interp/testdata/value_string.fqtest +++ b/pkg/interp/testdata/value_string.fqtest @@ -103,7 +103,7 @@ mp3> .headers[0].magic._error | ., type, length? null "null" 0 -mp3> .headers[0].magic._unknown | ., type, length? +mp3> .headers[0].magic._gap | ., type, length? false "boolean" mp3> .headers[0].magic.a = 1 diff --git a/pkg/interp/testdata/value_t.fqtest.tmpl b/pkg/interp/testdata/value_t.fqtest.tmpl index eb7acf04..39bb1b32 100644 --- a/pkg/interp/testdata/value_t.fqtest.tmpl +++ b/pkg/interp/testdata/value_t.fqtest.tmpl @@ -27,7 +27,7 @@ PROMPT> EXPR._path | ., type, length? PROMPT> EXPR._bits | ., type, length? PROMPT> EXPR._bytes | ., type, length? PROMPT> EXPR._error | ., type, length? -PROMPT> EXPR._unknown | ., type, length? +PROMPT> EXPR._gap | ., type, length? PROMPT> EXPR.a = 1 PROMPT> EXPR[0] = 1 PROMPT> EXPR.a |= empty diff --git a/pkg/scalar/scalar.go b/pkg/scalar/scalar.go index 4401b344..a443e09b 100644 --- a/pkg/scalar/scalar.go +++ b/pkg/scalar/scalar.go @@ -49,7 +49,7 @@ type S struct { Sym any SymDisplay DisplayFormat Description string - Unknown bool + Gap bool } func (s S) Value() any {