From b6b8c447f9f73b367a790dea846921672dce4cb6 Mon Sep 17 00:00:00 2001 From: Stefan Schubert Date: Fri, 28 Sep 2018 15:15:38 +0200 Subject: [PATCH 1/2] reduce risk of race condition between getenv and setenv --- liby2util-r/src/y2log.cc | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/liby2util-r/src/y2log.cc b/liby2util-r/src/y2log.cc index bba33ef92..aa263316b 100644 --- a/liby2util-r/src/y2log.cc +++ b/liby2util-r/src/y2log.cc @@ -88,6 +88,9 @@ static bool log_to_syslog = false; static bool log_all_variable = false; static bool log_simple = false; +// read getenv only once to reduce chance for race condition with setenv set by another thread +static bool y2log_should_be_buffered = getenv (Y2LOG_VAR_ONCRASH) != NULL; + static FILE *Y2LOG_STDERR = stderr; /* Default output */ /* static prototypes */ @@ -605,7 +608,7 @@ bool get_log_debug() bool should_be_buffered () { - return getenv (Y2LOG_VAR_ONCRASH) != NULL; + return y2log_should_be_buffered; } // stores a few strings. can append one. can return all. old are forgotten. From dc7adc29dd506cf327a60e36c3bf9f0b801c11c2 Mon Sep 17 00:00:00 2001 From: Stefan Schubert Date: Fri, 28 Sep 2018 16:49:03 +0200 Subject: [PATCH 2/2] packaging --- VERSION | 2 +- package/yast2-core.changes | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/VERSION b/VERSION index 91c7b938e..d4971aa65 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -2.17.47 +2.17.48 diff --git a/package/yast2-core.changes b/package/yast2-core.changes index 2191cd0d4..973cacb56 100644 --- a/package/yast2-core.changes +++ b/package/yast2-core.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Fri Sep 28 16:47:42 CEST 2018 - schubi@suse.de + +- Reduced risk of race condition between getenv and setenv while + logging (bsc#1103076) +- 2.17.48 + ------------------------------------------------------------------- Mon Nov 7 12:51:20 UTC 2016 - jreidinger@suse.com