[SSSD] [PATCHES] Format string issues

Lukas Slebodnik lslebodn at redhat.com
Thu Jul 18 15:07:12 UTC 2013


ehlo,

Few weeks ago, I sent a big patch with fixed format string issues.
I didn't catch few things. Three patches are attached. ((Review should be
easier with separated patches.)
I can squash them into one packet, if it will be problem.

LS
-------------- next part --------------
>From c8dd4509e76c9ec46e578efa000091d444593cc7 Mon Sep 17 00:00:00 2001
From: Lukas Slebodnik <lslebodn at redhat.com>
Date: Wed, 17 Jul 2013 16:43:16 +0200
Subject: [PATCH 1/3] Fix clang format string warning.

warning: format string is not a string literal (potentially insecure)
[-Wformat-security]
---
 src/tests/debug-tests.c | 2 +-
 src/util/debug.c        | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/tests/debug-tests.c b/src/tests/debug-tests.c
index a751d836c22c6547eaaea7ab8d9e1364be27fa97..f73f9bd7e9b15a711a44cb9757de033a8e4fffff 100644
--- a/src/tests/debug-tests.c
+++ b/src/tests/debug-tests.c
@@ -222,7 +222,7 @@ int test_helper_debug_check_message(int level, int msgmode)
     }
 
     if (msgmode == 0) {
-        DEBUG(level, (body));
+        DEBUG(level, ("%s", body));
     } else {
         DEBUG_MSG(level, __FUNCTION__, "some error");
     }
diff --git a/src/util/debug.c b/src/util/debug.c
index 3bf5e75af0d7024ee7322f0c3574669a3e8bb4c0..324f0daebc7b4e34bbb191d907f4756a23067d6e 100644
--- a/src/util/debug.c
+++ b/src/util/debug.c
@@ -274,5 +274,5 @@ int rotate_debug_files(void)
 
 void talloc_log_fn(const char *message)
 {
-    DEBUG(SSSDBG_FATAL_FAILURE, (message));
+    DEBUG(SSSDBG_FATAL_FAILURE, ("%s", message));
 }
-- 
1.8.3.1

-------------- next part --------------
>From dbf4eb733b8d0fa595cf4e55016d30671891b2b6 Mon Sep 17 00:00:00 2001
From: Lukas Slebodnik <lslebodn at redhat.com>
Date: Sat, 13 Jul 2013 16:11:03 +0200
Subject: [PATCH 2/3] Use functionm ldb_dn_get_linearized to format struct
 ldb_dn

---
 src/db/sysdb_upgrade.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/src/db/sysdb_upgrade.c b/src/db/sysdb_upgrade.c
index 6f7ac393cb0c0dd2591883b0dffc0a0101e376cc..3c23babe3dbf462f38b00ee874c566ab03e7c4de 100644
--- a/src/db/sysdb_upgrade.c
+++ b/src/db/sysdb_upgrade.c
@@ -1387,7 +1387,8 @@ int sysdb_upgrade_13(struct sysdb_ctx *sysdb, const char **ver)
             ret = ldb_delete(sysdb->ldb, res->msgs[j]->dn);
             if (ret) {
                 DEBUG(SSSDBG_OP_FAILURE,
-                      ("Failed to delete %s\n", res->msgs[j]->dn));
+                      ("Failed to delete %s\n",
+                       ldb_dn_get_linearized(res->msgs[j]->dn)));
                 continue;
             }
         }
@@ -1478,7 +1479,8 @@ int sysdb_upgrade_14(struct sysdb_ctx *sysdb, const char **ver)
             ret = ldb_delete(sysdb->ldb, res->msgs[i]->dn);
             if (ret) {
                 DEBUG(SSSDBG_OP_FAILURE,
-                      ("Failed to delete %s\n", res->msgs[i]->dn));
+                      ("Failed to delete %s\n",
+                       ldb_dn_get_linearized(res->msgs[i]->dn)));
                 ret = EIO;
                 goto done;
             }
@@ -1502,7 +1504,8 @@ int sysdb_upgrade_14(struct sysdb_ctx *sysdb, const char **ver)
             ret = ldb_delete(sysdb->ldb, res->msgs[i]->dn);
             if (ret) {
                 DEBUG(SSSDBG_OP_FAILURE,
-                      ("Failed to delete %s\n", res->msgs[i]->dn));
+                      ("Failed to delete %s\n",
+                       ldb_dn_get_linearized(res->msgs[i]->dn)));
                 ret = EIO;
                 goto done;
             }
-- 
1.8.3.1

-------------- next part --------------
>From 0c9a843b8740972d1cccccb68389b45536d51ae1 Mon Sep 17 00:00:00 2001
From: Lukas Slebodnik <lslebodn at redhat.com>
Date: Wed, 17 Jul 2013 17:05:39 +0200
Subject: [PATCH 3/3] Add mising argument required by format string

---
 src/providers/krb5/krb5_common.c | 5 +++--
 src/util/sss_krb5.c              | 2 +-
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/providers/krb5/krb5_common.c b/src/providers/krb5/krb5_common.c
index 3bbf6f20a4cbe4b7abf28de5b4d9c18036166ac0..55908f9703e1cd961882823da97c292aa46e964d 100644
--- a/src/providers/krb5/krb5_common.c
+++ b/src/providers/krb5/krb5_common.c
@@ -923,8 +923,9 @@ errno_t krb5_get_simple_upn(TALLOC_CTX *mem_ctx, struct krb5_ctx *krb5_ctx,
      */
     ret = sss_parse_name(tmp_ctx, dom->names, username, &domname, &name);
     if (ret != EOK) {
-        DEBUG(SSSDBG_OP_FAILURE, ("Could not parse %s into name and " \
-                                  "domain components, login might fail\n"));
+        DEBUG(SSSDBG_OP_FAILURE,
+              ("Could not parse [%s] into name and "
+               "domain components, login might fail\n", username));
         name = discard_const(username);
     }
 
diff --git a/src/util/sss_krb5.c b/src/util/sss_krb5.c
index 204e0c2a062c9c89a623e7ff31d30b04c9056f8e..b871b13c33e601513d3d9ea49cfa2c7aca0cf886 100644
--- a/src/util/sss_krb5.c
+++ b/src/util/sss_krb5.c
@@ -640,7 +640,7 @@ errno_t check_fast(const char *str, bool *use_fast)
         *use_fast = true;
     } else {
         sss_log(SSS_LOG_ALERT, "Unsupported value [%s] for option krb5_use_fast,"
-                               "please use never, try, or demand.\n");
+                               "please use never, try, or demand.\n", str);
         return EINVAL;
     }
 
-- 
1.8.3.1



More information about the sssd-devel mailing list