summaryrefslogtreecommitdiffstats
path: root/server/sbus
diff options
context:
space:
mode:
authorSimo Sorce <idra@samba.org>2009-01-14 15:52:48 -0500
committerSimo Sorce <idra@samba.org>2009-01-14 15:52:48 -0500
commitf52c3c6a93f673ba422f5eee1788e2f5b70b3a6a (patch)
treece9816cc678402cd90d796ffeca6e273de7fd487 /server/sbus
parent2a729edfe36c7519c48b9b4225fc84be6775da08 (diff)
downloadsssd-f52c3c6a93f673ba422f5eee1788e2f5b70b3a6a.tar.gz
sssd-f52c3c6a93f673ba422f5eee1788e2f5b70b3a6a.tar.xz
sssd-f52c3c6a93f673ba422f5eee1788e2f5b70b3a6a.zip
Add code to make it easier to reconnect in case the server
is not available immediately or drops the dbus connection. First step is the nss connection to the data provider.
Diffstat (limited to 'server/sbus')
-rw-r--r--server/sbus/sssd_dbus.h1
-rw-r--r--server/sbus/sssd_dbus_connection.c6
2 files changed, 7 insertions, 0 deletions
diff --git a/server/sbus/sssd_dbus.h b/server/sbus/sssd_dbus.h
index cf59a22f9..51a16e203 100644
--- a/server/sbus/sssd_dbus.h
+++ b/server/sbus/sssd_dbus.h
@@ -89,6 +89,7 @@ void sbus_conn_set_private_data(struct sbus_conn_ctx *conn_ctx, void *pvt_data);
void *sbus_conn_get_private_data(struct sbus_conn_ctx *conn_ctx);
int sbus_conn_add_method_ctx(struct sbus_conn_ctx *conn_ctx,
struct sbus_method_ctx *method_ctx);
+bool sbus_conn_disconnecting(struct sbus_conn_ctx *conn_ctx);
/* Default message handler
* Should be usable for most cases */
diff --git a/server/sbus/sssd_dbus_connection.c b/server/sbus/sssd_dbus_connection.c
index 81d8aee1b..2d2758146 100644
--- a/server/sbus/sssd_dbus_connection.c
+++ b/server/sbus/sssd_dbus_connection.c
@@ -620,3 +620,9 @@ void *sbus_conn_get_private_data(struct sbus_conn_ctx *conn_ctx)
{
return conn_ctx->pvt_data;
}
+
+bool sbus_conn_disconnecting(struct sbus_conn_ctx *conn_ctx)
+{
+ if (conn_ctx->disconnect == 1) return true;
+ return false;
+}