summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOndrej Kos <okos@redhat.com>2013-08-05 16:34:33 +0200
committerJakub Hrozek <jhrozek@redhat.com>2013-08-24 18:19:20 +0200
commitf88f09876e2018bd08e19d84ad1ab66f72cac8fd (patch)
tree56b0f98c30031ec3dc5b3e04c1dfe32dbdeacb92
parent728a1812b7c5f70febb522342c5b357da598acfe (diff)
downloadsssd-f88f09876e2018bd08e19d84ad1ab66f72cac8fd.tar.gz
sssd-f88f09876e2018bd08e19d84ad1ab66f72cac8fd.tar.bz2
sssd-f88f09876e2018bd08e19d84ad1ab66f72cac8fd.zip
DP: Notify propperly when removing PAC responder
Adds pac_cli be_client structure pointer, to indetify and log the PAC responder termination correctly.
-rw-r--r--src/providers/data_provider_be.c5
-rw-r--r--src/providers/dp_backend.h1
2 files changed, 5 insertions, 1 deletions
diff --git a/src/providers/data_provider_be.c b/src/providers/data_provider_be.c
index ae9ba81c..912b4191 100644
--- a/src/providers/data_provider_be.c
+++ b/src/providers/data_provider_be.c
@@ -2063,6 +2063,9 @@ static int be_client_destructor(void *ctx)
} else if (becli->bectx->ssh_cli == becli) {
DEBUG(SSSDBG_TRACE_FUNC, ("Removed SSH client\n"));
becli->bectx->ssh_cli = NULL;
+ } else if (becli->bectx->pac_cli == becli) {
+ DEBUG(SSSDBG_TRACE_FUNC, ("Removed PAC client\n"));
+ becli->bectx->pac_cli = NULL;
} else {
DEBUG(SSSDBG_CRIT_FAILURE, ("Unknown client removed ...\n"));
}
@@ -2118,7 +2121,7 @@ static int client_registration(DBusMessage *message,
} else if (strcasecmp(cli_name, "SSH") == 0) {
becli->bectx->ssh_cli = becli;
} else if (strcasecmp(cli_name, "PAC") == 0) {
- /* no need to set becli */
+ becli->bectx->pac_cli = becli;
} else {
DEBUG(1, ("Unknown client! [%s]\n", cli_name));
}
diff --git a/src/providers/dp_backend.h b/src/providers/dp_backend.h
index e07b4e64..76590a39 100644
--- a/src/providers/dp_backend.h
+++ b/src/providers/dp_backend.h
@@ -137,6 +137,7 @@ struct be_ctx {
struct be_client *sudo_cli;
struct be_client *autofs_cli;
struct be_client *ssh_cli;
+ struct be_client *pac_cli;
struct loaded_be loaded_be[BET_MAX];
struct bet_info bet_info[BET_MAX];