]> git.decadent.org.uk Git - nfs-utils.git/blobdiff - utils/mountd/cache.c
mountd: Report the absolute path used to load the junction plug-in
[nfs-utils.git] / utils / mountd / cache.c
index c13f305ea2f49fe9c8dd0fb60632a22ac34c3a83..3853bb68cb661b4d4b779935f9ddaecd75639a37 100644 (file)
@@ -29,7 +29,6 @@
 #include "nfslib.h"
 #include "exportfs.h"
 #include "mountd.h"
-#include "xmalloc.h"
 #include "fsloc.h"
 #include "pseudoflavors.h"
 
@@ -827,6 +826,7 @@ lookup_export(char *dom, char *path, struct addrinfo *ai)
 
 #ifdef HAVE_NFS_PLUGIN_H
 #include <dlfcn.h>
+#include <link.h>
 #include <nfs-plugin.h>
 
 /*
@@ -1091,6 +1091,7 @@ static struct exportent *lookup_junction(char *dom, const char *pathname,
                struct addrinfo *ai)
 {
        struct exportent *exp;
+       struct link_map *map;
        void *handle;
 
        handle = dlopen("libnfsjunct.so", RTLD_NOW);
@@ -1098,6 +1099,11 @@ static struct exportent *lookup_junction(char *dom, const char *pathname,
                xlog(D_GENERAL, "%s: dlopen: %s", __func__, dlerror());
                return NULL;
        }
+
+       if (dlinfo(handle, RTLD_DI_LINKMAP, &map) == 0)
+               xlog(D_GENERAL, "%s: loaded plug-in %s",
+                       __func__, map->l_name);
+
        (void)dlerror();        /* Clear any error */
 
        exp = invoke_junction_ops(handle, dom, pathname, ai);