summaryrefslogtreecommitdiffstats
path: root/server/providers/proxy.c
diff options
context:
space:
mode:
authorStephen Gallagher <sgallagh@redhat.com>2009-03-18 12:19:23 -0400
committerStephen Gallagher <sgallagh@redhat.com>2009-03-20 10:59:12 -0400
commit76c4a8cfaf29778423ac28d1088ca4e0a20e8b91 (patch)
tree35e1f2e785f32f46b496b00b6b4a4c7a71106bf8 /server/providers/proxy.c
parent907fd320aa244809ac4d8b831699b2c3d862ce11 (diff)
downloadsssd-76c4a8cfaf29778423ac28d1088ca4e0a20e8b91.tar.gz
sssd-76c4a8cfaf29778423ac28d1088ca4e0a20e8b91.tar.xz
sssd-76c4a8cfaf29778423ac28d1088ca4e0a20e8b91.zip
Enable autoreconnection of Data Provider Backends to the Data Provider
Diffstat (limited to 'server/providers/proxy.c')
-rw-r--r--server/providers/proxy.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/server/providers/proxy.c b/server/providers/proxy.c
index 4b2ed7d65..cc1da1691 100644
--- a/server/providers/proxy.c
+++ b/server/providers/proxy.c
@@ -85,8 +85,8 @@ static int proxy_internal_conv(int num_msg, const struct pam_message **msgm,
switch( msgm[i]->msg_style ) {
case PAM_PROMPT_ECHO_OFF:
DEBUG(4, ("Conversation message: %s.\n", msgm[i]->msg));
- reply[i].resp_retcode = 0;
- reply[i].resp = strdup(auth_data->authtok);
+ reply[i].resp_retcode = 0;
+ reply[i].resp = strdup(auth_data->authtok);
break;
default:
DEBUG(1, ("Conversation style %d not supported.\n",
@@ -1050,10 +1050,17 @@ static void proxy_get_account_info(struct be_req *req)
}
}
+static void proxy_shutdown(struct be_req *req)
+{
+ /* TODO: Clean up any internal data */
+ req->fn(req, EOK, NULL);
+}
+
struct be_mod_ops proxy_mod_ops = {
.check_online = proxy_check_online,
.get_account_info = proxy_get_account_info,
- .pam_handler = proxy_pam_handler
+ .pam_handler = proxy_pam_handler,
+ .finalize = proxy_shutdown
};
static void *proxy_dlsym(void *handle, const char *functemp, char *libname)