From 627d83dff183219826489949cb55ef71945e94ab Mon Sep 17 00:00:00 2001 From: Stephen Gallagher Date: Mon, 23 Jan 2012 22:00:30 -0500 Subject: PROXY: add support for enumerating services --- src/providers/proxy/proxy_init.c | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'src/providers/proxy/proxy_init.c') diff --git a/src/providers/proxy/proxy_init.c b/src/providers/proxy/proxy_init.c index b28e65a57..d43550bfa 100644 --- a/src/providers/proxy/proxy_init.c +++ b/src/providers/proxy/proxy_init.c @@ -259,6 +259,39 @@ int sssm_proxy_id_init(struct be_ctx *bectx, dlerror())); } + ctx->ops.setservent = proxy_dlsym(ctx->handle, + "_nss_%s_setservent", + libname); + if (!ctx->ops.setservent) { + DEBUG(SSSDBG_MINOR_FAILURE, + ("Failed to load _nss_%s_setservent, error: %s. " + "The library does not support services.\n", + libname, + dlerror())); + } + + ctx->ops.getservent_r = proxy_dlsym(ctx->handle, + "_nss_%s_getservent_r", + libname); + if (!ctx->ops.getservent_r) { + DEBUG(SSSDBG_MINOR_FAILURE, + ("Failed to load _nss_%s_getservent_r, error: %s. " + "The library does not support services.\n", + libname, + dlerror())); + } + + ctx->ops.endservent = proxy_dlsym(ctx->handle, + "_nss_%s_endservent", + libname); + if (!ctx->ops.endservent) { + DEBUG(SSSDBG_MINOR_FAILURE, + ("Failed to load _nss_%s_endservent, error: %s. " + "The library does not support services.\n", + libname, + dlerror())); + } + *ops = &proxy_id_ops; *pvt_data = ctx; ret = EOK; -- cgit