sos/sos-sosreport-do-not-make-logging-calls-after-oserror.patch
Bryn M. Reeves 89b86368f8 Update spec file for sos-3.2-1
Update sos in rawhide to the upstream 3.2 release and additional
patches including the fix for CVE-2015-7529.
2015-12-16 15:53:30 +00:00

42 lines
1.5 KiB
Diff

From ed44939d5988098feb3f3ddededd68a0a4b9a9df Mon Sep 17 00:00:00 2001
From: "Bryn M. Reeves" <bmr@redhat.com>
Date: Tue, 13 Jan 2015 17:26:33 +0000
Subject: [PATCH] [sosreport] do not make logging calls after OSError
Following an OSError during archive setup the logging subsystem
is potentially in an inconsistent or unusable state (e.g. due to
a readonly file system error).
Use the print function directly since we just need to report the
error and exit.
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
---
sos/sosreport.py | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/sos/sosreport.py b/sos/sosreport.py
index 2a16555..3c0397c 100644
--- a/sos/sosreport.py
+++ b/sos/sosreport.py
@@ -1091,10 +1091,13 @@ class SoSReport(object):
self._make_archive_paths()
return
except (OSError, IOError) as e:
+ # we must not use the logging subsystem here as it is potentially
+ # in an inconsistent or unreliable state (e.g. an EROFS for the
+ # file system containing our temporary log files).
if e.errno in fatal_fs_errors:
- self.ui_log.error("")
- self.ui_log.error(" %s while setting up archive" % e.strerror)
- self.ui_log.error("")
+ print("")
+ print(" %s while setting up archive" % e.strerror)
+ print("")
else:
raise e
except Exception as e:
--
1.9.3