diff options
Diffstat (limited to 'server/providers/proxy.c')
-rw-r--r-- | server/providers/proxy.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/server/providers/proxy.c b/server/providers/proxy.c index 3252a745..937b1d07 100644 --- a/server/providers/proxy.c +++ b/server/providers/proxy.c @@ -1359,14 +1359,18 @@ int sssm_proxy_init(struct be_ctx *bectx, ret = confdb_get_string(bectx->cdb, ctx, bectx->conf_path, "libName", NULL, &libname); - ret = confdb_get_string(bectx->cdb, ctx, bectx->conf_path, - "libPath", NULL, &libpath); if (ret != EOK) goto done; - if (libpath == NULL || libname == NULL) { + if (libname == NULL) { ret = ENOENT; goto done; } + libpath = talloc_asprintf(ctx, "libnss_%s.so.2", libname); + if (!libpath) { + ret = ENOMEM; + goto done; + } + handle = dlopen(libpath, RTLD_NOW); if (!handle) { DEBUG(0, ("Unable to load %s module with path, error: %s\n", |