Debian Patches
Status for librist/0.2.18+dfsg-1
| Patch | Description | Author | Forwarded | Bugs | Origin | Last update |
|---|---|---|---|---|---|---|
| system_cJSON.patch | Ensure to only reference system cJSON during build =================================================================== |
Florian Ernst <florian@debian.org> | not-needed | |||
| expect_multicast_tests_to_fail.patch | We cannot assume to have multicast traffic allowed in the build hosts =================================================================== |
Florian Ernst <florian@debian.org> | not-needed | |||
| 28b1cfc617d12a605a34ea9060102334cd86fe95.patch | fix(receiver): clear stale clock-drift samples on a framing-baseline reset (#218) When an Advanced flow upgrades from Main to Advanced wire framing mid-stream, the two framings carry source_time in different timestamp domains, so the switch resets the flow timing baseline. That reset re-derived time_offset but left the clock-drift sample buffer full of stale Main-domain samples. The next median recalculation then jumped the offset by several seconds and released the whole receiver buffer at once, overflowing the data-out fifo. Because test_send_receive treats any ERROR-level log as fatal at 0% loss, the single "Rist data out fifo queue overflow" line failed the advanced+unicast+client tests, most reproducibly on slower build hosts. Clear the drift samples on the baseline reset, matching the existing clock-wrap reset path. Thanks to Florian Ernst for the detailed report and build logs. |
Sergio Ammirata <sergio@ammirata.net> | yes | 2026-06-26 | ||
| 9791e5817d5deecdde5e8a5350ad32e8898c5d44.patch | fix(ristsender): split the usage string under the C99 4095-char limit (#219) Adding --blind-send to the help text pushed the single usage string literal past the 4095-character limit C99 requires a compiler to support, so a -Wpedantic -std=c99 -Werror build failed with -Woverlength-strings. Split the help text into two literals printed back to back; the output is unchanged. Thanks to Florian Ernst for the report. |
Sergio Ammirata <sergio@ammirata.net> | yes | 2026-06-26 | ||
| 9e0fe492c29c1f8ce762af959a281d431bfe32fc.patch | rist: make recovery-depth maximum platform-aware (fix 32-bit test) recovery-depth N sizes the Advanced retransmission ring to UINT16_SIZE << N packets. RIST_RECOVERY_DEPTH_MAX is 16, i.e. 2^32 packets - the full 32-bit sequence space. The ring is two parallel arrays (one rist_buffer* and one uint32_t per slot), so 2^32 slots are only addressable when size_t is 64 bits. On a 32-bit size_t the slot count overflows, rist_recovery_depth_apply() correctly refused it (-2), and rist_recovery_depth_set() returned failure for the documented maximum. The recovery_depth unit test, which expects set(200) to clamp to the maximum and succeed, therefore failed on 32-bit targets; its own DEPTH_PKTS(MAX) expectation also overflowed to 0. Add rist_recovery_depth_platform_max() in rist-private.h: the largest exponent whose ring (UINT16_SIZE << depth) fits SIZE_MAX / (sizeof(ptr) + sizeof(u32)). On LP64 this is RIST_RECOVERY_DEPTH_MAX; on a 32-bit size_t it resolves lower (depth 12). rist_recovery_depth_to_packets() now clamps to it - covering both the public setter and the ?recovery-depth= / config apply path - so the result is always representable. The setter logs when a request is capped. The unit test uses the same shared helper for its expectation, so it tracks whatever the platform supports. apply()'s representability/OOM guard is kept as a safety net. No change on 64-bit, where the maximum is unchanged. Fixes #222. |
Sergio Ammirata <sergio@ammirata.net> | yes | 2026-06-29 |
All known versions for source package 'librist'
- 0.2.18+dfsg-1 (forky, sid)
- 0.2.11+dfsg-1 (trixie)
- 0.2.7+dfsg-1 (bookworm)
