1
1
mirror of https://github.com/wader/fq.git synced 2024-12-29 16:42:06 +03:00
Commit Graph

82 Commits

Author SHA1 Message Date
Mattias Wadman
725c8e83ab macho: Split into macho/macho_fat, fix offset issue and add string decoding
Split fat macho into own decoder macho_fat. This also fixes issue with section
offset etc not being correct as they are from the start of each embedded file.

Make all address and offset field be in hex.

Decode __cstring, __ustring and __cfstring sections.

Fix LC_ENCRYPTION_INFO_64 missing pading issue.

Skip ranging for __bss and __common as they dont have any data in the file.

Simplifed magic handling a bit and add symbols.

Simplified state struct field, had redudant struct.
2022-08-02 14:36:53 +02:00
Mattias Wadman
f247edb592 doc: Update README demo a bit with new features 2022-07-29 16:34:27 +02:00
Mattias Wadman
c27646a689 doc: Update and shorten README.md a bit 2022-07-23 22:50:33 +02:00
Mattias Wadman
cae288e6be format,intepr: Refactor json, yaml, etc into formats also move out related functions
json, yaml, toml, xml, html, csv are now normal formats and most of them also particiate
in probing (not html and csv).

Also fixes a bunch of bugs in to/fromxml, to/fromjq etc.
2022-07-23 21:48:45 +02:00
Mattias Wadman
64f3e5c717 fairplay: Add basic SPC decoder and PSSH system id 2022-07-07 17:11:55 +02:00
Mattias Wadman
417255b72b bitcoin: Add blkdat, block, transcation and script decoder 2022-07-04 09:59:51 +02:00
Mattias Wadman
3570f1f048 doc: Add more related tools 2022-06-21 18:10:23 +02:00
Mattias Wadman
3b717c3ba4 interp: Add to/from<encoding> for some common serialzations, encodings and hashes
Add toxml/fromxml for XML encoding, mighe be lossy on ordering
fromxml has {seq:bool} to add #seq attributes to improve ordering
toxml has {indent:number} to choose space indent depth

Add tojson, same as in jq but also has {indent:number} options

Add toyaml/fromyaml for YAML

Add totoml/fromtoml for TOML

Add tojq/fromjq for jq-flavored JSON (optional quotes for keys, comments and trailing commas support)

Add tocsv/fromcsv for CSV
formcvs takes {comma:string, comment:string} for custom separtor and comment character

Rename/split hex into tohex/fromhex
Rename/split base64 into tobase64/frombase64
tobase64/frombase64 takes {encoding:string} option for base64 flavour (std, url, rawstd, rawurl)

Add to/from<format> urlpath, urlquery, url, xmlentities, base64, hex

Add to<hash> md4, md5, sha1, sha256, sha512, sha3_224, sha3_256, sha3_384, sha3_512

Add to/from<encoding> iso8859-1, utf8, utf16, utf16le, utf16be
2022-05-28 16:31:20 +02:00
Mattias Wadman
e641274487 zip: Add zip64 support and uncompress option
{uncompress:boolean} uncompress and probe, default true
2022-05-26 12:46:50 +02:00
Mattias Wadman
a980656c15 doc: go 1.18 and improve intro text a bit 2022-05-23 21:57:45 +02:00
Herby Gillot
6e7267d2b0
readme: add MacPorts install details
https://ports.macports.org/port/fq/
2022-05-02 06:57:31 -04:00
Mattias Wadman
f4480c6fe5 decode,interp: Support for format specific options
interp: Refactor format help and also include options
interp: Add -o name=@path to load file content as value (not documented yet, might change)
interp,decode: Expose decode out value as _out (might change)
interp: Refactor foramts.jq into format_{decode,func,include}.jq
interp: Refactor torepr into _format_func for generic format function overloading
interp: Refactor -o options parsing to be more generic and collect unknowns options to be used as format options
decode of decode alises
func for format overloaded functions
include for format specific jq functions (also _help, torepr etc)
flac_frame: Add bits_per_sample option
mp3: Add max_unique_header_config and max_sync_seek options
mp4: Add decode_samples and allow_truncate options
avc_au: Has length_size option
hevc_au: Has length_size option
aac_frame: Has object_typee option
doc: Rewrite format doc generation, less hack more jq
2022-05-01 17:08:30 +02:00
Mattias Wadman
e8dc7112b6 ipv6,icmpv6: Add decoder
Refactor to use groups between network layers to make them less coupled and reusable:
link_frame (ethernet etc)
inet_packet (ipv4,ipv6 etc)
ip_packet (tcp packet (not stream), udp segment etc)

Rename data to payload as i think it makes more sense for network data
2022-04-03 17:43:51 +02:00
Mattias Wadman
d8aaf30345 rtmp,amf0: Add decoders
Basic RTMP support, used via tcp_stream group (pcap etc) or manually.
Basic AMF0 support, mostly what is used in RTMP.
2022-04-01 13:07:20 +02:00
Mattias Wadman
74978c9d08 hevc: Add hevc_vps, hevc_sps and hevc_pps decoders
Some extensions and other things still missing
2022-03-24 18:56:56 +01:00
Mattias Wadman
c53bd77718 doc: Add bts2022 video 2022-03-09 22:13:25 +01:00
Mattias Wadman
b97776c9e3 doc: Add fq bts2022 presentation 2022-03-08 18:20:18 +01:00
Mattias Wadman
758b2d0e34 doc: Regenerate after macho merge 2022-02-28 10:28:21 +01:00
siddik.acil
2e7767cd05 macho: remake docs 2022-02-21 20:33:30 +01:00
Mattias Wadman
d334c2d4ea doc: Add href in supported format list 2022-02-19 01:33:45 +01:00
Mattias Wadman
a202df9aa8 doc: Improve and fix some typos 2022-02-17 22:51:05 +01:00
Mattias Wadman
c6a90cfc1d doc,asn1_ber: Add more documentation 2022-02-16 20:02:23 +01:00
Mattias Wadman
9ec1d35777 doc: Improve project description 2022-02-16 18:45:18 +01:00
Mattias Wadman
68ba2e810e doc: Add CHANGES.md documenting release changes 2022-02-13 23:36:11 +01:00
Mattias Wadman
0955262817 doc: Add snappy license 2022-02-13 15:52:55 +01:00
Xentripetal
9636613ec6 Merge branch 'master' of https://github.com/wader/fq into avro 2022-02-12 22:16:50 -06:00
Mattias Wadman
039f3c4a5d
Merge pull request #137 from thushan/update-readme-for-scoop
Adds Windows Scoop instructions for fq in README.
2022-02-10 12:48:33 +01:00
Mattias Wadman
06b67e4b59 doc: Add more license details
Related to #137
2022-02-10 12:38:46 +01:00
Thushan Fernando
ae4a6243fc
Adds Windows Scoop instructions for fq. 2022-02-10 21:57:41 +11:00
Xentripetal
5b11385ea4 Pull latest from wader 2022-02-07 17:35:33 -06:00
Mattias Wadman
0829c167cc asn1_ber: Add decoder
Basic support, can also do CER and DER but without any extra validation.
No schema support.

Redo format doc.md usage a bit, now format/<dir>/<format>.md instead.

Related to #20
2022-02-06 22:13:03 +01:00
Mattias Wadman
c52a1a2364 doc: Use f($a; $b) instead of jq f/2 notation
Also some general polish
2022-01-27 09:55:45 +01:00
Mattias Wadman
49c90f89b2 doc: Add macOS security notes and move supported format up a bit 2022-01-22 11:49:31 +01:00
Xentripetal
6e1f338ac3 Pull latest from wader 2022-01-19 19:39:12 -06:00
Mattias Wadman
8e9700d0bd doc: Improve readme a bit and add torepr example 2022-01-15 19:26:58 +01:00
Xentripetal
788fd0258f Pull latest from wader 2022-01-13 20:59:56 -06:00
Mattias Wadman
8092151e52
Merge pull request #77 from wader/formats-sorts
formats: Sort and make lists less likely to cause collision
2022-01-12 18:42:05 +01:00
Mattias Wadman
729a6cae1e formats: Sort and make lists less likely to cause collision 2022-01-12 18:35:28 +01:00
Mattias Wadman
59b88034d4 doc: Document dev dependencies and related PRs/issues etc 2022-01-12 18:29:33 +01:00
Mattias Wadman
0b0f28e966 cbor: Add decoder
Does not decode sematic tag types
Also fixes broken float16 support

Fixes #71
2022-01-12 17:56:03 +01:00
Mattias Wadman
a6bf62ce19 msgpack: Add decoder
Fixes #25
2022-01-10 19:33:09 +01:00
Mattias Wadman
af8e7efc61 bencode: Add decoder
Closes #63
2022-01-10 10:52:14 +01:00
Mattias Wadman
0c1716beab doc: Add alpine and go run 2022-01-09 17:02:20 +01:00
Mattias Wadman
628f0f403d bson: Add decoder
Only supports basic types for now
2022-01-06 00:51:37 +01:00
Mattias Wadman
681dbc26b7 elf,ar: Add ar decoder, improved elf decoder
Add x86, 386, arm64, arm v6, arm v7 linux elf test files
2022-01-05 22:05:09 +01:00
Mattias Wadman
b9aef39ed4 pcap,pcapng,bsd_loopback_frame: Add decoder, refactor link frame into a group
Also fix incorrect struct name s/UDPDatagramIn/UDPPayloadIn/
2022-01-03 21:06:27 +01:00
Xentripetal
27789f2da5 Regenerate docs 2021-12-29 16:30:55 -06:00
Orhun Parmaksız
625a1dbe53
doc: Update instructions to mention AUR (VCS) package
A new package has been created in the AUR for building
and installing `fq` from the latest git source:
<https://aur.archlinux.org/packages/fq-git/>

Signed-off-by: Orhun Parmaksız <orhunparmaksiz@gmail.com>
2021-12-29 14:26:32 +03:00
Orhun Parmaksız
510b5f08be
doc: Update installation instructions for Arch Linux
`fq` is now moved to the Arch Linux [community] repository:
<https://archlinux.org/packages/community/x86_64/fq/>

Signed-off-by: Orhun Parmaksız <orhunparmaksiz@gmail.com>
2021-12-29 13:10:57 +03:00
Mattias Wadman
63485efda8 doc: Add hopes, pronounce and some more examples 2021-12-28 23:13:23 +01:00