[fix](trx-server): inherit global [audio].listen for per-rig audio listeners
In multi-rig mode, each RigInstanceConfig.audio.listen defaulted to 127.0.0.1 independently of the global [audio] listen setting, causing per-rig audio ports to bind to localhost only and refuse connections from remote clients. Fix by passing cli.listen.or(Some(cfg.audio.listen)) as the listen override, so the global address is always the fallback when --listen is not supplied on the CLI. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> Signed-off-by: Stan Grams <sjg@haxx.space>
This commit is contained in:
@@ -870,6 +870,8 @@ async fn main() -> DynResult<()> {
|
|||||||
}));
|
}));
|
||||||
|
|
||||||
// Spawn audio stack.
|
// Spawn audio stack.
|
||||||
|
// listen_override priority: --listen CLI flag > global [audio].listen > per-rig default.
|
||||||
|
let audio_listen_override = cli.listen.or(Some(cfg.audio.listen));
|
||||||
let audio_handles = spawn_rig_audio_stack(
|
let audio_handles = spawn_rig_audio_stack(
|
||||||
rig_cfg,
|
rig_cfg,
|
||||||
state_rx.clone(),
|
state_rx.clone(),
|
||||||
@@ -878,7 +880,7 @@ async fn main() -> DynResult<()> {
|
|||||||
callsign.clone(),
|
callsign.clone(),
|
||||||
latitude,
|
latitude,
|
||||||
longitude,
|
longitude,
|
||||||
cli.listen,
|
audio_listen_override,
|
||||||
sdr_pcm_rx,
|
sdr_pcm_rx,
|
||||||
);
|
);
|
||||||
task_handles.extend(audio_handles);
|
task_handles.extend(audio_handles);
|
||||||
|
|||||||
Reference in New Issue
Block a user