[Hamlib-developer] [Hamlib/Hamlib] c0adbb: fix(ctl): bound command parser inputs
Library to control radio transceivers and receivers
Brought to you by:
n0nb
|
From: Nate B. <no...@gi...> - 2026-07-31 17:34:21
|
Branch: refs/heads/master Home: https://github.com/Hamlib/Hamlib Commit: c0adbb27bbd5178832dc135633a0e66cb83c4521 https://github.com/Hamlib/Hamlib/commit/c0adbb27bbd5178832dc135633a0e66cb83c4521 Author: David Christle <dch...@us...> Date: 2026-07-27 (Mon, 27 Jul 2026) Changed paths: M tests/ampctl_parse.c M tests/rigctl_parse.c M tests/rotctl_parse.c Log Message: ----------- fix(ctl): bound command parser inputs Reject stream read errors instead of synthesizing empty commands, validate raw hexadecimal command syntax without reading past its terminator, and keep fixed-size command and description inputs within their actual capacities. Commit: b9b972378f9fbb1b79579d4d1671b713c3786831 https://github.com/Hamlib/Hamlib/commit/b9b972378f9fbb1b79579d4d1671b713c3786831 Author: David Christle <dch...@us...> Date: 2026-07-27 (Mon, 27 Jul 2026) Changed paths: M amplifiers/gemini/gemini.c M amplifiers/gemini/gemini.h M rigs/gomspace/gs100.c M rigs/icom/icom.c M rigs/icom/icom.h Log Message: ----------- fix(backends): validate bounded parser fields Stop Icom tuning-step lookup at each table sentinel and bound Gemini status fields without letting truncated scans cancel valid matches. Parse GS100 newline-delimited response lines until its exact non-terminated prompt while enforcing response and line-count limits. Commit: 86dcae5fd6e852ecea3eb9710b4b7ea92ecd4c7f https://github.com/Hamlib/Hamlib/commit/86dcae5fd6e852ecea3eb9710b4b7ea92ecd4c7f Author: David Christle <dch...@us...> Date: 2026-07-27 (Mon, 27 Jul 2026) Changed paths: M src/misc.c Log Message: ----------- fix(core): handle missing band metadata Check for the BANDSELECT opening delimiter before advancing into the band list in both numeric and string lookup paths. Commit: d60beb2e638ada12fba55a3ef14d35ed9fb9106c https://github.com/Hamlib/Hamlib/commit/d60beb2e638ada12fba55a3ef14d35ed9fb9106c Author: David Christle <dch...@us...> Date: 2026-07-27 (Mon, 27 Jul 2026) Changed paths: M rigs/yaesu/ftx1/ftx1.h M rigs/yaesu/ftx1/ftx1_audio.c M rigs/yaesu/ftx1/ftx1_clarifier.c M rigs/yaesu/ftx1/ftx1_ext.c Log Message: ----------- fix(ftx1): validate physical-device replies Require exact clarifier and extended-menu response structure, validate numeric conversions and terminators, and reject signed or out-of-range meter values. Commit: 5293dbb8558031f7e2a47aa49b4e4c9b23eb097d https://github.com/Hamlib/Hamlib/commit/5293dbb8558031f7e2a47aa49b4e4c9b23eb097d Author: David Christle <dch...@us...> Date: 2026-07-27 (Mon, 27 Jul 2026) Changed paths: M tests/.gitignore M tests/Makefile.am A tests/testbandmetadata.c A tests/testctlbounds.sh A tests/testctlparser.c A tests/testftx1parsers.c A tests/testgeministatus.c A tests/testgs100.c A tests/testicomts.c Log Message: ----------- test(parsers): add boundary regressions Exercise command stream failures, hexadecimal byte formats, backend truncation and framing, metadata absence, and physical-device reply boundaries with focused valid and malformed cases. Ignore the generated test binaries and harness logs. Commit: 3afe2133a1ef1010478ace1d8c2bb89ff831b70a https://github.com/Hamlib/Hamlib/commit/3afe2133a1ef1010478ace1d8c2bb89ff831b70a Author: David Christle <dch...@us...> Date: 2026-07-27 (Mon, 27 Jul 2026) Changed paths: M rigs/yaesu/ftx1/ftx1_audio.c Log Message: ----------- refactor(ftx1): simplify S-meter parsing Suppress the unused P1 conversion result while retaining the response-digit validation performed by the conversion. Commit: 560a44d844d12b5e91110102bd39df1f38086b8b https://github.com/Hamlib/Hamlib/commit/560a44d844d12b5e91110102bd39df1f38086b8b Author: David Christle <dch...@us...> Date: 2026-07-27 (Mon, 27 Jul 2026) Changed paths: M tests/ampctl_parse.c Log Message: ----------- fix(ampctl): bound escaped command parsing Stop binary command decoding at the documented escape boundary and use the conversion endpoint to advance. This avoids reading beyond a terminated command while preserving valid escaped bytes. Commit: 7e53a7da3177bec5526174c9523acfe3d7f6d323 https://github.com/Hamlib/Hamlib/commit/7e53a7da3177bec5526174c9523acfe3d7f6d323 Author: David Christle <dch...@us...> Date: 2026-07-27 (Mon, 27 Jul 2026) Changed paths: M amplifiers/expert/expert.c Log Message: ----------- fix(expert): validate status antenna fields Validate input and transmit-antenna digits against each model's declared capabilities before constructing antenna masks. Return a protocol error for malformed status fields. Commit: 489ca77a04e3622e57917e4061e4fa480a9cf238 https://github.com/Hamlib/Hamlib/commit/489ca77a04e3622e57917e4061e4fa480a9cf238 Author: David Christle <dch...@us...> Date: 2026-07-29 (Wed, 29 Jul 2026) Changed paths: M src/misc.c M tests/testbandmetadata.c Log Message: ----------- fix(core): return generic band for missing metadata Band-name callers treat successful lookups as printable strings. Return BANDGEN when granularity metadata has no band list instead of propagating NULL into formatting paths. Commit: 1f804d4da78954a4413c81d92ace81eec120f569 https://github.com/Hamlib/Hamlib/commit/1f804d4da78954a4413c81d92ace81eec120f569 Author: David Christle <dch...@us...> Date: 2026-07-29 (Wed, 29 Jul 2026) Changed paths: M rigs/yaesu/ftx1/ftx1.h M rigs/yaesu/ftx1/ftx1_audio.c M tests/testftx1parsers.c Log Message: ----------- fix(ftx1): validate S-meter response framing Require the response command, VFO selector, numeric payload, and terminator to match the requested S-meter frame. Reject malformed or mismatched replies without changing the output value. Commit: faefdac4ab8bf6d990b41469cad8692e8544f1af https://github.com/Hamlib/Hamlib/commit/faefdac4ab8bf6d990b41469cad8692e8544f1af Author: David Christle <dch...@us...> Date: 2026-07-29 (Wed, 29 Jul 2026) Changed paths: M tests/rotctl_parse.c M tests/testctlbounds.sh Log Message: ----------- fix(rotctl): bound escaped command parsing Stop parsing when an escape is missing or consumes no input, and count only successfully decoded bytes. This avoids the extra strtol call beyond the command terminator while preserving valid raw commands. Commit: 04f13b4a015bbfc3c30daf11fc5ef5a2dae71124 https://github.com/Hamlib/Hamlib/commit/04f13b4a015bbfc3c30daf11fc5ef5a2dae71124 Author: Nate Bargmann <n0...@n0...> Date: 2026-07-29 (Wed, 29 Jul 2026) Changed paths: M amplifiers/expert/expert.c M amplifiers/gemini/gemini.c M amplifiers/gemini/gemini.h M rigs/gomspace/gs100.c M rigs/icom/icom.c M rigs/icom/icom.h M rigs/yaesu/ftx1/ftx1.h M rigs/yaesu/ftx1/ftx1_audio.c M rigs/yaesu/ftx1/ftx1_clarifier.c M rigs/yaesu/ftx1/ftx1_ext.c M src/misc.c M tests/.gitignore M tests/Makefile.am M tests/ampctl_parse.c M tests/rigctl_parse.c M tests/rotctl_parse.c A tests/testbandmetadata.c A tests/testctlbounds.sh A tests/testctlparser.c A tests/testftx1parsers.c A tests/testgeministatus.c A tests/testgs100.c A tests/testicomts.c Log Message: ----------- Merge GitHub PR #2112 Commit: 1f88c4b64dd5b0010677c80460439fbe050519a5 https://github.com/Hamlib/Hamlib/commit/1f88c4b64dd5b0010677c80460439fbe050519a5 Author: Nate Bargmann <n0...@n0...> Date: 2026-07-31 (Fri, 31 Jul 2026) Changed paths: M NEWS Log Message: ----------- Update NEWS for PRs applied to master only Compare: https://github.com/Hamlib/Hamlib/compare/9415c552b0f5...1f88c4b64dd5 To unsubscribe from these emails, change your notification settings at https://github.com/Hamlib/Hamlib/settings/notifications |