summaryrefslogtreecommitdiffstats
path: root/src/providers/proxy/proxy_init.c
diff options
context:
space:
mode:
authorSumit Bose <sbose@redhat.com>2010-10-13 10:51:50 +0200
committerStephen Gallagher <sgallagh@redhat.com>2010-10-25 07:06:42 -0400
commitd7dc57bcc2468bee756bcd568daee0644e5b888d (patch)
tree5e205c695449cd621e2c982a69f89b59f5fb4cbc /src/providers/proxy/proxy_init.c
parent18a45c63a7902251a0d0b92f78f78eb7d26a0046 (diff)
downloadsssd-d7dc57bcc2468bee756bcd568daee0644e5b888d.tar.gz
sssd-d7dc57bcc2468bee756bcd568daee0644e5b888d.tar.xz
sssd-d7dc57bcc2468bee756bcd568daee0644e5b888d.zip
Add netgroups infrastructure to proxy provider
Diffstat (limited to 'src/providers/proxy/proxy_init.c')
-rw-r--r--src/providers/proxy/proxy_init.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/providers/proxy/proxy_init.c b/src/providers/proxy/proxy_init.c
index 47c9e8111..de1904c79 100644
--- a/src/providers/proxy/proxy_init.c
+++ b/src/providers/proxy/proxy_init.c
@@ -207,6 +207,28 @@ int sssm_proxy_id_init(struct be_ctx *bectx,
"full groups enumeration!\n", libname));
}
+ ctx->ops.setnetgrent = proxy_dlsym(handle, "_nss_%s_setnetgrent", libname);
+ if (!ctx->ops.setnetgrent) {
+ DEBUG(0, ("Failed to load _nss_%s_setnetgrent, error: %s. "
+ "The library does not support netgroups.\n", libname,
+ dlerror()));
+ }
+
+ ctx->ops.getnetgrent_r = proxy_dlsym(handle, "_nss_%s_getnetgrent_r",
+ libname);
+ if (!ctx->ops.getgrent_r) {
+ DEBUG(0, ("Failed to load _nss_%s_getnetgrent_r, error: %s. "
+ "The library does not support netgroups.\n", libname,
+ dlerror()));
+ }
+
+ ctx->ops.endnetgrent = proxy_dlsym(handle, "_nss_%s_endnetgrent", libname);
+ if (!ctx->ops.endnetgrent) {
+ DEBUG(0, ("Failed to load _nss_%s_endnetgrent, error: %s. "
+ "The library does not support netgroups.\n", libname,
+ dlerror()));
+ }
+
*ops = &proxy_id_ops;
*pvt_data = ctx;
ret = EOK;