[S] Change in libosmocore[master]: logging_gsmtap: Temporarily disable logging when sending the logs
laforge has submitted this change. ( https://gerrit.osmocom.org/c/libosmocore/+/34966?usp=email ) Change subject: logging_gsmtap: Temporarily disable logging when sending the logs ...................................................................... logging_gsmtap: Temporarily disable logging when sending the logs This avoids an infinite recursion when sending a gsmtap log message causes a log message. Temporarily set target->loglevel higher than LOGL_FATAL, which effectively disables logging for that target. Other targets like stderr will still log this message so there is still an indication that something went wrong. Change-Id: I19203cadbad6019a3834793b8ac816d903fe088e Related: OS#6213 --- M src/core/logging_gsmtap.c 1 file changed, 22 insertions(+), 0 deletions(-) Approvals: laforge: Looks good to me, approved Jenkins Builder: Verified diff --git a/src/core/logging_gsmtap.c b/src/core/logging_gsmtap.c index dfd059b..7775c27 100644 --- a/src/core/logging_gsmtap.c +++ b/src/core/logging_gsmtap.c @@ -65,6 +65,7 @@ struct timeval tv; int rc; const char *file_basename; + unsigned int _level; /* get timestamp ASAP */ osmo_gettimeofday(&tv, NULL); @@ -114,7 +115,11 @@ } msgb_put(msg, rc); + /* Ensure that any error occurring when sending the log message doesn't cause infinite recursion */ + _level = target->loglevel; + target->loglevel = UINT8_MAX; rc = gsmtap_sendmsg(target->tgt_gsmtap.gsmtap_inst, msg); + target->loglevel = _level; if (rc) msgb_free(msg); } -- To view, visit https://gerrit.osmocom.org/c/libosmocore/+/34966?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-Change-Id: I19203cadbad6019a3834793b8ac816d903fe088e Gerrit-Change-Number: 34966 Gerrit-PatchSet: 3 Gerrit-Owner: daniel <dwillmann@sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: arehbein <arehbein@sysmocom.de> Gerrit-Reviewer: laforge <laforge@osmocom.org> Gerrit-Reviewer: osmith <osmith@sysmocom.de> Gerrit-CC: fixeria <vyanitskiy@sysmocom.de> Gerrit-MessageType: merged
participants (1)
-
laforge