lib: Try to open 5424 log destination when changing log threshold

When changing the log threshold (prio_min) using zlog_5424_apply_meta(), try
to open the log destination using zlog_5424_open() if we haven't done so
before. Without this, we might never open the destination at all, because
when zlog_5424_apply_dst() gets called (which so far was the only initial
caller of zlog_5424_open()), chances are that prio_min is still at its
initial value of ZLOG_DISABLED, causing it to skip the call to
zlog_5424_open().

Signed-off-by: Martin Buck <mb-tmp-tvguho.pbz@gromit.dyndns.org>
This commit is contained in:
Martin Buck 2025-01-06 12:47:33 +01:00
parent 21fe1f4d83
commit 9951da394a

View file

@ -1076,9 +1076,17 @@ bool zlog_5424_apply_dst(struct zlog_cfg_5424 *zcf)
bool zlog_5424_apply_meta(struct zlog_cfg_5424 *zcf)
{
int fd;
frr_with_mutex (&zcf->cfg_mtx) {
if (zcf->active)
zlog_5424_cycle(zcf, zcf->active->fd);
fd = zcf->active->fd;
else if (zcf->prio_min != ZLOG_DISABLED)
fd = zlog_5424_open(zcf, -1);
else
fd = -1;
if (fd >= 0)
zlog_5424_cycle(zcf, fd);
}
return true;