ehlo,

Some messages did not have errno or name of problematic file.
There was also improper use of negative value.
The function strerror was called with -1 instead of errno.

LS
>From 7a27caa69292dbf5564f2d55f17722e03089daed Mon Sep 17 00:00:00 2001
From: Lukas Slebodnik <[email protected]>
Date: Mon, 25 Jul 2016 09:11:08 +0200
Subject: [PATCH] Amend debug messages after failure of unlink

Some messages did not have errno or name of problematic file.
There was also improper use of negative value.
The function strerror was called with -1 instead of errno
---
 src/providers/ipa/ipa_init.c            | 5 +++--
 src/responder/common/responder_common.c | 3 ++-
 src/responder/secrets/local.c           | 1 +
 src/sbus/sssd_dbus_server.c             | 9 +++++----
 src/tools/files.c                       | 3 ++-
 src/tools/tools_mc_util.c               | 7 ++++---
 src/util/util.c                         | 6 ++++--
 7 files changed, 21 insertions(+), 13 deletions(-)

diff --git a/src/providers/ipa/ipa_init.c b/src/providers/ipa/ipa_init.c
index 
5afda75cd614c66b7575fd28d725f5b38be4167f..ca99200a1ba1d9508ac0affffecaa08149552fee
 100644
--- a/src/providers/ipa/ipa_init.c
+++ b/src/providers/ipa/ipa_init.c
@@ -440,9 +440,10 @@ static void cleanup_ipa_preauth_indicator(void)
 
     ret = unlink(PAM_PREAUTH_INDICATOR);
     if (ret != EOK) {
+        ret = errno;
         DEBUG(SSSDBG_OP_FAILURE,
-              "Failed to remove preauth indicator file [%s].\n",
-              PAM_PREAUTH_INDICATOR);
+              "Failed to remove preauth indicator file [%s] %d [%s].\n",
+              PAM_PREAUTH_INDICATOR, ret, sss_strerror(ret));
     }
 }
 
diff --git a/src/responder/common/responder_common.c 
b/src/responder/common/responder_common.c
index 
02a64368cad60990436497865aa0c772a39cde5a..7f6264ae70e5073063b5cfcd73098eefad2ce653
 100644
--- a/src/responder/common/responder_common.c
+++ b/src/responder/common/responder_common.c
@@ -629,7 +629,8 @@ int create_pipe_fd(const char *sock_name, int *_fd, mode_t 
umaskval)
     if (ret != 0 && errno != ENOENT) {
         ret = errno;
         DEBUG(SSSDBG_MINOR_FAILURE,
-              "Cannot remove old socket (errno=%d), bind might fail!\n", ret);
+              "Cannot remove old socket (errno=%d [%s]), bind might fail!\n",
+              ret, sss_strerror(ret));
     }
 
     if (bind(fd, (struct sockaddr *)&addr, sizeof(addr)) == -1) {
diff --git a/src/responder/secrets/local.c b/src/responder/secrets/local.c
index 
2a85ac06945322265fbd1012c9697728c37b77a0..470aec0e195a54dd2af2b929ff1b7a304331a214
 100644
--- a/src/responder/secrets/local.c
+++ b/src/responder/secrets/local.c
@@ -627,6 +627,7 @@ int generate_master_key(const char *filename, size_t size)
         ret = unlink(filename);
         /* non-fatal failure */
         if (ret != EOK) {
+            ret = errno;
             DEBUG(SSSDBG_MINOR_FAILURE,
                   "Failed to remove file: %s - %d [%s]!\n",
                   filename, ret, sss_strerror(ret));
diff --git a/src/sbus/sssd_dbus_server.c b/src/sbus/sssd_dbus_server.c
index 
0a1cace415b3514a6904e92a2d879538ce51a593..6cc4172a07118ff99bb6f122c3a1de25cee18c8c
 100644
--- a/src/sbus/sssd_dbus_server.c
+++ b/src/sbus/sssd_dbus_server.c
@@ -103,8 +103,9 @@ create_socket_symlink(const char *filename, const char 
*symlink_filename)
         ret = unlink(symlink_filename);
         if (ret != 0) {
             ret = errno;
-            DEBUG(SSSDBG_CRIT_FAILURE, "Cannot remove old symlink: 
[%d][%s].\n",
-                      ret, strerror(ret));
+            DEBUG(SSSDBG_CRIT_FAILURE,
+                  "Cannot remove old symlink '%s': [%d][%s].\n",
+                  symlink_filename, ret, strerror(ret));
             return EIO;
         }
         errno = 0;
@@ -351,8 +352,8 @@ done:
         if (tmp_ret != EOK) {
             tmp_ret = errno;
             DEBUG(SSSDBG_MINOR_FAILURE,
-                  "Failed to remove symbolic link: %d [%s]!\n",
-                  tmp_ret, sss_strerror(tmp_ret));
+                  "Failed to remove symbolic link '%s': %d [%s]!\n",
+                  symlink_filename, tmp_ret, sss_strerror(tmp_ret));
         }
     }
     talloc_free(tmp_ctx);
diff --git a/src/tools/files.c b/src/tools/files.c
index 
5364f5c0dd53aad71452e18b8d7f1f04532132a4..8f1aa68beeb2676b56733f49550de170b404c789
 100644
--- a/src/tools/files.c
+++ b/src/tools/files.c
@@ -225,7 +225,8 @@ static int remove_tree_with_ctx(TALLOC_CTX *mem_ctx,
             if (ret != 0) {
                 ret = errno;
                 DEBUG(SSSDBG_CRIT_FAILURE,
-                        "Removing file failed: [%d][%s]\n", ret, 
strerror(ret));
+                      "Removing file failed '%s': [%d][%s]\n",
+                      result->d_name, ret, strerror(ret));
                 goto fail;
             }
         }
diff --git a/src/tools/tools_mc_util.c b/src/tools/tools_mc_util.c
index 
ce899eb3c674afe8271be526dc83aa909cbecf89..2516a1981ddd965d4cae8c469ed79aaef8fa7193
 100644
--- a/src/tools/tools_mc_util.c
+++ b/src/tools/tools_mc_util.c
@@ -117,10 +117,11 @@ done:
         if (ret == EOK) {
             pret = unlink(mc_filename);
             if (pret == -1) {
+                pret = errno;
                 DEBUG(SSSDBG_MINOR_FAILURE,
-                      "Failed to unlink file %s. "
-                       "Will be unlinked later by sssd_nss.\n",
-                       mc_filename);
+                      "Failed to unlink file %s, %d [%s]. "
+                      "Will be unlinked later by sssd_nss.\n",
+                      mc_filename, pret, strerror(pret));
             }
         }
     }
diff --git a/src/util/util.c b/src/util/util.c
index 
89abfe734873161008dc9a7a42e7a87364f8074a..d4878bfaf4f0e92672756f12137d79ec65ef48f6
 100644
--- a/src/util/util.c
+++ b/src/util/util.c
@@ -990,13 +990,15 @@ static int unlink_dbg(const char *filename)
 
     ret = unlink(filename);
     if (ret != 0) {
-        if (errno == 2) {
+        ret = errno;
+        if (ret == ENOENT) {
             DEBUG(SSSDBG_TRACE_INTERNAL,
                   "File already removed: [%s]\n", filename);
             return 0;
         } else {
             DEBUG(SSSDBG_CRIT_FAILURE,
-                  "Cannot remove temporary file [%s]\n", filename);
+                  "Cannot remove temporary file [%s] %d [%s]\n",
+                  filename, ret, strerror(ret));
             return -1;
         }
     }
-- 
2.7.4

_______________________________________________
sssd-devel mailing list
[email protected]
https://lists.fedorahosted.org/admin/lists/[email protected]

Reply via email to