diff options
author | Jakub Hrozek <jhrozek@redhat.com> | 2012-03-30 21:15:30 +0200 |
---|---|---|
committer | Stephen Gallagher <sgallagh@redhat.com> | 2012-04-05 15:21:34 -0700 |
commit | 6e8b4d412a9a28bb79f575b9970c3fd7876609ac (patch) | |
tree | 0aa8d4c81777b13771459124fe5116bac00dd486 /src/providers/data_provider_be.c | |
parent | 7dee0a3366c21ad06720176ca8aef8d6a6f0da90 (diff) | |
download | sssd-6e8b4d412a9a28bb79f575b9970c3fd7876609ac.tar.gz sssd-6e8b4d412a9a28bb79f575b9970c3fd7876609ac.tar.xz sssd-6e8b4d412a9a28bb79f575b9970c3fd7876609ac.zip |
Catch cases where D-Bus connection is NULL
https://fedorahosted.org/sssd/ticket/1270
Diffstat (limited to 'src/providers/data_provider_be.c')
-rw-r--r-- | src/providers/data_provider_be.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/providers/data_provider_be.c b/src/providers/data_provider_be.c index 2bc1930ca..473d83aca 100644 --- a/src/providers/data_provider_be.c +++ b/src/providers/data_provider_be.c @@ -349,6 +349,11 @@ static void acctinfo_callback(struct be_req *req, } dbus_conn = sbus_get_connection(req->becli->conn); + if (!dbus_conn) { + DEBUG(SSSDBG_CRIT_FAILURE, ("D-BUS not connected\n")); + return; + } + dbus_connection_send(dbus_conn, reply, NULL); dbus_message_unref(reply); @@ -592,6 +597,11 @@ static void be_pam_handler_callback(struct be_req *req, } dbus_conn = sbus_get_connection(req->becli->conn); + if (!dbus_conn) { + DEBUG(SSSDBG_CRIT_FAILURE, ("D-BUS not connected\n")); + return; + } + dbus_connection_send(dbus_conn, reply, NULL); dbus_message_unref(reply); @@ -751,6 +761,11 @@ static void be_sudo_handler_reply(struct sbus_connection *conn, dp_err, dp_ret, errstr ? errstr : "<NULL>")); dbus_conn = sbus_get_connection(conn); + if (!dbus_conn) { + DEBUG(SSSDBG_CRIT_FAILURE, ("D-BUS not connected\n")); + return; + } + dbus_connection_send(dbus_conn, reply, NULL); dbus_message_unref(reply); } @@ -1139,6 +1154,11 @@ static void be_autofs_handler_callback(struct be_req *req, } dbus_conn = sbus_get_connection(req->becli->conn); + if (!dbus_conn) { + DEBUG(SSSDBG_CRIT_FAILURE, ("D-BUS not connected\n")); + return; + } + dbus_connection_send(dbus_conn, reply, NULL); dbus_message_unref(reply); |