[PATCH 38/47] libsemanage: avoid strerror(3)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Christian Göttsche <cgzones@xxxxxxxxxxxxxx>

Use the %m printf modifier to format errno in a thread safe way.

Signed-off-by: Christian Göttsche <cgzones@xxxxxxxxxxxxxx>
---
 libsemanage/src/debug.c          | 6 ++++--
 libsemanage/src/semanage_store.c | 4 ++--
 2 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/libsemanage/src/debug.c b/libsemanage/src/debug.c
index 1e375694..a2708279 100644
--- a/libsemanage/src/debug.c
+++ b/libsemanage/src/debug.c
@@ -79,8 +79,10 @@ void semanage_msg_default_handler(void *varg __attribute__ ((unused)),
 	vfprintf(stream, fmt, ap);
 	va_end(ap);
 
-	if (errsv && errsv != ENOMEM)
-		fprintf(stream, " (%s).", strerror(errsv));
+	if (errsv && errsv != ENOMEM) {
+		errno = errsv;
+		fprintf(stream, " (%m).");
+	}
 
 	fprintf(stream, "\n");
 }
diff --git a/libsemanage/src/semanage_store.c b/libsemanage/src/semanage_store.c
index 98ef2524..68bc8c41 100644
--- a/libsemanage/src/semanage_store.c
+++ b/libsemanage/src/semanage_store.c
@@ -739,8 +739,8 @@ static int semanage_rename(semanage_handle_t * sh, const char *src, const char *
 		return retval;
 
 	/* we can't use rename() due to filesystem limitation, lets try to copy files manually */
-	WARN(sh, "WARNING: rename(%s, %s) failed: %s, fall back to non-atomic semanage_copy_dir_flags()",
-		 src, dst, strerror(errno));
+	WARN(sh, "WARNING: rename(%s, %s) failed: %m, fall back to non-atomic semanage_copy_dir_flags()",
+		 src, dst);
 	if (semanage_copy_dir_flags(src, dst, 1) == -1) {
 		return -1;
 	}
-- 
2.45.2





[Index of Archives]     [Selinux Refpolicy]     [Linux SGX]     [Fedora Users]     [Fedora Desktop]     [Yosemite Photos]     [Yosemite Camping]     [Yosemite Campsites]     [KDE Users]     [Gnome Users]

  Powered by Linux