Blame SOURCES/0100-sbus-check-connection-for-NULL-before-unregister-it.patch

ecf709
From 556eb1200a3754935f573ccffee87554bf9e9296 Mon Sep 17 00:00:00 2001
ecf709
From: Sumit Bose <sbose@redhat.com>
ecf709
Date: Mon, 10 Apr 2017 13:45:27 +0200
ecf709
Subject: [PATCH 100/101] sbus: check connection for NULL before unregister it
ecf709
MIME-Version: 1.0
ecf709
Content-Type: text/plain; charset=UTF-8
ecf709
Content-Transfer-Encoding: 8bit
ecf709
ecf709
There seem to be code paths where the data is a added to the hash before
ecf709
the connection is properly initialized, to avoid core dump during shut
ecf709
down we only call dbus_conection_unregister_object_path() if there is a
ecf709
connection.
ecf709
ecf709
Resolves:
ecf709
https://pagure.io/SSSD/sssd/issue/3367
ecf709
ecf709
Reviewed-by: Pavel Březina <pbrezina@redhat.com>
ecf709
(cherry picked from commit 35186217d44d0138a1aedf7a4db72249b2c40e66)
ecf709
---
ecf709
 src/sbus/sssd_dbus_interface.c | 8 +++++++-
ecf709
 1 file changed, 7 insertions(+), 1 deletion(-)
ecf709
ecf709
diff --git a/src/sbus/sssd_dbus_interface.c b/src/sbus/sssd_dbus_interface.c
ecf709
index 1a11c6abcf23053e3b8c77f4d469d7c202a88eb8..c9007a4814e09e26fedaf605ca7313234d5ebf2c 100644
ecf709
--- a/src/sbus/sssd_dbus_interface.c
ecf709
+++ b/src/sbus/sssd_dbus_interface.c
ecf709
@@ -490,7 +490,13 @@ sbus_opath_hash_delete_cb(hash_entry_t *item,
ecf709
     conn = talloc_get_type(pvt, struct sbus_connection);
ecf709
     path = sbus_opath_get_base_path(NULL, item->key.str);
ecf709
 
ecf709
-    dbus_connection_unregister_object_path(conn->dbus.conn, path);
ecf709
+    /* There seem to be code paths where the data is added to the hash
ecf709
+     * before the connection is properly initialized, to avoid core dump
ecf709
+     * during shut down we only call dbus_connection_unregister_object_path()
ecf709
+     * if there is a connection. */
ecf709
+    if (conn->dbus.conn != NULL) {
ecf709
+        dbus_connection_unregister_object_path(conn->dbus.conn, path);
ecf709
+    }
ecf709
 }
ecf709
 
ecf709
 hash_table_t *
ecf709
-- 
ecf709
2.9.3
ecf709