Changeset 11124 in ntrip for trunk/BNC/tests/README.md
- Timestamp:
- Oct 24, 2026, 10:10:29 PM (4 days ago)
- File:
-
- 1 edited
-
trunk/BNC/tests/README.md (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/BNC/tests/README.md
r11087 r11124 28 28 | `tools/fakecaster.py` | local Ntrip caster recording an upload as a BNC raw file (case key `fakecaster`) | 29 29 | `tools/bncraw.py` | `info` (streams, time span, RTCM3 message types) and `slice` for raw captures | 30 | `tools/mkcrafted.py` | writes `data/crafted_limits.raw`: crafted frames at the upper field limits | 31 | `tools/ssr_harness.sh` | builds `tools/ssr_harness.cpp` with the SSR decoders under ASan/UBSan and runs it | 30 32 | `work/` | scratch output, not versioned | 31 33 … … 90 92 'QC Bias File' (code bias check against the other ACs and the file). 91 93 94 * `decoder_limits`: crafted, CRC-valid frames from `tools/mkcrafted.py` 95 using the largest values the formats allow: VTEC with degree/order 16 96 (IGS-SSR 4076/201 and RTCM-SSR 1264, 2 and 4 layers) and RTCM 1300/1301/1302 97 with 31-character names, listed by the RTCM scan in the log. The 98 coefficients are C(d,o) = (100*d+o)/200 TECU and S = -C, both `.ssr` files 99 are identical apart from the station ID. These frames overflowed the 100 coefficient and name arrays; the 4-layer VTEC crashed BNC. 101 102 ## Sanitizer check of the SSR decoders 103 104 ``` 105 tests/tools/ssr_harness.sh # crafted_limits.raw 106 tests/tools/ssr_harness.sh tests/data/*.raw # real captures 107 ``` 108 109 In BNC all SSR target structs are members of one `RTCM3coDecoder` object, 110 so a write beyond one struct corrupts the next member without any 111 AddressSanitizer report. The harness decodes every frame with all three 112 format classes into separately allocated structs, so ASan reports it. It 113 also covers the new RTCM-SSR metadata (message 60 in 114 `crafted_limits.raw`: 7 entries with additional parameters of 40 and 0 bits, 115 and 31 entries, which must be rejected), which `RTCM3Decoder.cpp` does not 116 dispatch at present. Exit code 0 only without sanitizer errors. 117 92 118 ## Adding a replay case 93 119
Note:
See TracChangeset
for help on using the changeset viewer.
