Changeset 11130 in ntrip for trunk/BNC/tests/README.md
- Timestamp:
- Oct 28, 2026, 9:32:30 AM (2 weeks ago)
- File:
-
- 1 edited
-
trunk/BNC/tests/README.md (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/BNC/tests/README.md
r11127 r11130 31 31 | `tools/ssr_harness.sh` | builds `tools/ssr_harness.cpp` with the SSR decoders under ASan/UBSan and runs it | 32 32 | `tools/ssl_check.py` | TLS checks of the Ntrip 2s client and upload (not part of `run_tests.py`) | 33 | `tools/net_check.py` | UDP/RTP sender filter and upload status checks on loopback (not part of `run_tests.py`) | 33 34 | `work/` | scratch output, not versioned | 34 35 … … 100 101 coefficients are C(d,o) = (100*d+o)/200 TECU and S = -C, both `.ssr` files 101 102 are identical apart from the station ID. These frames overflowed the 102 coefficient and name arrays; the 4-layer VTEC crashed BNC. 103 coefficient and name arrays; the 4-layer VTEC crashed BNC. Also two RTCM 104 1033: a complete one and one whose receiver descriptor length runs beyond 105 the message (rejected; before, stale buffer content was logged). 106 107 * `rawfile_hostile`: raw file with hostile chunk headers from 108 `tools/mkcrafted.py --rawfile`: the station ID `../ESCAPE0` must give 109 `Output/.._ESCAPE0_*.ssr` (no file outside the output directory), a chunk 110 header announcing 2000000000 bytes is rejected with a log message. 103 111 104 112 ## Sanitizer check of the SSR decoders … … 115 123 also covers the new RTCM-SSR metadata (message 60 in 116 124 `crafted_limits.raw`: 7 entries with additional parameters of 40 and 0 bits, 117 and 31 entries, which must be rejected), which `RTCM3Decoder.cpp` does not 118 dispatch at present. Every decoded VTEC and metadata message is encoded 119 again with the `Make*` function of the same class and decoded once more; the 120 result must be identical. Exit code 0 only without sanitizer errors and 125 and 31 entries, which must be rejected) and satellite antenna messages 126 (BDS with mask bits in all four 16-bit quarters, GPS with shared blocks), 127 which `RTCM3Decoder.cpp` does not dispatch at present. Every decoded VTEC, metadata and antenna message is 128 encoded again with the `Make*` function of the same class and decoded once 129 more; the result must be identical, for the antenna messages also the bytes. Exit code 0 only without sanitizer errors and 121 130 differences. 122 131 … … 135 144 certificate for another host name (rejected) and a client certificate 136 145 required by the caster, with and without `sslIgnoreErrors`. Takes about 3 min. 146 147 ## Network check 148 149 ``` 150 tests/tools/net_check.py [--bnc PATH] 151 ``` 152 153 Runs BNC live against fake servers on loopback addresses (no root needed). 154 A second sender on another address sends spoofed datagrams to BNC's port: in 155 the modes 'U' (Ntrip 2 UDP) and 'R' (RTSP/RTP) and in 'UN' with a sender 156 address in the URL, BNC's raw output must contain only the server's data; 157 'UN' with 127.0.0.1 accepts any sender, as before. An Ntrip 1 caster sending an endless 158 response header is cut off, a normal Ntrip 1 stream still works. An upload 159 answered with `HTTP/1.1 401` and a header containing `200` must be reported 160 as broken. Takes about 2 min. 137 161 138 162 ## Adding a replay case
Note:
See TracChangeset
for help on using the changeset viewer.
