Commit Graph

1256 Commits

Author SHA1 Message Date
Will Greenberg eb71bf9a00 Update lib/src/gsmtap/parser.rs
Co-authored-by: Brad Warren <bmw@users.noreply.github.com>
2026-07-16 11:54:57 -07:00
Will Greenberg 7df322e5e0 more unrelated clippy changes 2026-07-16 11:54:57 -07:00
Will Greenberg 144df3fde1 appease clippy
annoyingly these changes are totally unrelated to this PR, but our CI
won't pass tests otherwise.
2026-07-16 11:54:57 -07:00
Will Greenberg 6b622eb208 run cargo fmt 2026-07-16 11:54:57 -07:00
Will Greenberg 6d870a7f7b rm is_gsmtap_type
Instead of tracking which types are gsmtap-friendly, just rely on the
parser result.
2026-07-16 11:54:57 -07:00
Will Greenberg f3d694373f Implement review suggestions
Co-authored-by: Brad Warren <bmw@users.noreply.github.com>
2026-07-16 11:54:57 -07:00
Will Greenberg 7e1cd0ce09 appease clippy 2026-07-16 11:54:57 -07:00
Will Greenberg 075ae08ace run cargo fmt 2026-07-16 11:54:57 -07:00
Will Greenberg 396cb58868 Add LL1 Serving Cell Timing messages
This log should provide constant feedback about the serving cell's LTE
timing advance value.
2026-07-16 11:54:57 -07:00
Will Greenberg 1635060295 run cargo fmt 2026-07-16 11:54:57 -07:00
Will Greenberg 00eed6d24b Remove Mac UL/DL message support
These weren't parsing correctly despite the parser seemingly matching
SCATs, so disable these for now. They weren't being used for anything
yet, anyway.
2026-07-16 11:54:57 -07:00
Will Greenberg bbaeebeacc If a Message isn't convertable to GSMTAP, don't try
This also removes the pseudo GSMTAP packets added for measurement
results, since they add a ton of noise to PCAPs. Eventually, we should
keep track of the latest signal for a given PCI, and annotate actual
packets with that value.
2026-07-16 11:54:57 -07:00
Will Greenberg ff290a9d19 hardcode build_log_mask_request() unit test input
Instead of having to change the expected value every time we add a log
type to our list, let's just hardcode it to a known value.
2026-07-16 11:54:57 -07:00
Will Greenberg 967e823805 rm unimplemented diag message format 2026-07-16 11:54:57 -07:00
Will Greenberg 4ecad7f66a run cargo fmt 2026-07-16 11:54:57 -07:00
Will Greenberg 17c301d8e2 appease clippy 2026-07-16 11:54:57 -07:00
Will Greenberg 2d4b36432a add more comments 2026-07-16 11:54:57 -07:00
Will Greenberg 3412e86862 cleanups from rebase 2026-07-16 11:54:57 -07:00
Will Greenberg 724512860d refactors/tweaks 2026-07-16 11:54:57 -07:00
Will Greenberg 7c8d5ebafc run cargo fmt 2026-07-16 11:54:57 -07:00
Will Greenberg 30f663be2f lib: serialize MAC RACH attempts to GSMTAP
This also refactors the gsmtap code into a neater module, and adds MAC
UL & DL logs to our diag capture.
2026-07-16 11:54:57 -07:00
Will Greenberg 64c59d5e08 run cargo fmt 2026-07-16 11:54:57 -07:00
Will Greenberg 71fde4dcdb lib/diag/diaglog: add MAC parsing for RACH attempts
This adds a deku parser for MAC RACH packets, along with some unit tests
adapted from SCAT's parser.
2026-07-16 11:54:57 -07:00
Will Greenberg c30428b188 Update diag log mask for new messages 2026-07-16 11:54:57 -07:00
Will Greenberg ba17c9f9d9 trim test case
These measurement packets are of a fixed length, and the SCAT test case
had excess data
2026-07-16 11:54:57 -07:00
Will Greenberg 6922646a5d lib/gsmtap_parser: downgrade unsupported log to debug msg
Previously this was an error message to help underscore when a device
was sending unexpected messages, but now that we're receiving
measurement logs which have no place in GSMTAP frames, it's expected to
skip some log messages.
2026-07-16 11:54:57 -07:00
Will Greenberg 5def0b388e lib/diag: add ML1 Neighbor cell measurement
This adds support for Neighboring Cells Measurements, and makes some
minor changes to Serving Cell Measurements.
2026-07-16 11:54:57 -07:00
Carlos Guerra d834e1fc51 format fixes for linters to be happy 2026-07-16 11:54:57 -07:00
Carlos Guerra d57b1c937c addressing review comments: minor refactor for optimization, and correction of rrc_rel size 2026-07-16 11:54:57 -07:00
Carlos Guerra a12b6116ad linting and polishing for PR 2026-07-16 11:54:57 -07:00
Carlos Guerra 8fe516c2a6 Collect signal strength and timing advances. LTE serving cell measurements (0xb17f) and RACH Timing Advance (0xb062) 2026-07-16 11:54:57 -07:00
Brad Warren a3cf7ac1ee add note about powershell vs cmd 2026-07-08 11:18:21 -07:00
sawft99 e8d4a489de Update faq.md 2026-07-08 11:18:21 -07:00
David Brungardt 97e7e7c3d0 Change Wording Slightly 2026-07-06 11:13:55 -07:00
David Brungardt 39c183d67f Update FAQ w/ Question About SIM Cards Outside US 2026-07-06 11:13:55 -07:00
Will Greenberg cd28354bec run cargo fmt 2026-06-25 15:45:59 -07:00
Will Greenberg 1e4b812273 lib: refactor gsmtap/gsmtap_parser into a single module
This'll allow us to break out more specific GSMTAP parsing into
submodules more easily.
2026-06-25 15:45:59 -07:00
Will Greenberg 04cf2cbd67 lib/diag.rs refactor
This splits diag.rs, which was growing way too big for my taste, into a
number of submodules. This should help us compartmentalize tests better,
as well as use mod namespaces to shorten our struct/enum names.
2026-06-25 15:45:59 -07:00
Will Greenberg 9627cec737 Refactors in response to review comments
A few minor refactors, and a more major one that renames
RecordingStore's update_entry_qmdl_size to
update_current_entry_qmdl_size, since the only time we're ever updating
an entry's QMDL size is when it's the current one.
2026-06-22 19:40:54 -07:00
Will Greenberg 10f560b5e4 more clippy appeasement 2026-06-22 19:40:54 -07:00
Will Greenberg 88d2725427 fix clippy 2026-06-22 19:40:54 -07:00
Will Greenberg 76ae8fccd9 run cargo fmt 2026-06-22 19:40:54 -07:00
Will Greenberg 94b989c3c0 Add support for compressed QMDL
Major changes:
* QmdlWriter now outputs gzipped QMDL files by default
* QmdlReader renamed to QmdlMessageReader, and reads both compressed and
  uncompressed QMDL. It no longer requires bounding to avoid reading
  partially written files.
2026-06-22 19:40:54 -07:00
Brad Warren f5a0cddc88 improve basic logging 2026-06-18 15:25:12 -07:00
Brad Warren 2702ee0828 add basic logging
Co-authored-by: Will Greenberg <ifnspifn@gmail.com>
2026-06-18 15:25:12 -07:00
Brad Warren 58338850dd move comment to better location 2026-06-18 15:25:12 -07:00
Brad Warren d122ce6e6d convert introspect::Argument::new to ::try_new 2026-06-18 15:25:12 -07:00
Brad Warren 9280067e31 better document the effect of arg_modifiers order 2026-06-18 15:25:12 -07:00
Brad Warren 3b3532d3fd add modifiers.rs 2026-06-18 15:25:12 -07:00
Brad Warren 30c4cb0e0c add basic rayhunter_options endpoint 2026-06-18 15:25:12 -07:00