diff --git a/lib/kafs/afssys.c b/lib/kafs/afssys.c index 51d421a21..4a1a9fb43 100644 --- a/lib/kafs/afssys.c +++ b/lib/kafs/afssys.c @@ -4,6 +4,7 @@ RCSID("$Id$"); #include +#include #include #include #include @@ -140,7 +141,13 @@ int aix_setup(void) Setpag = aix_setpag; #else void *ptr; - ptr = dlopen(LIBDIR "/afslib.so", 0); + char path[MaxPathLen], *p; + if((p = getenv("AFSLIBPATH")) != NULL) + strcpy(path, p); + else + sprintf(path, "%s/afslib.so", LIBDIR); + + ptr = dlopen(path, 0); if(ptr){ Setpag = (int (*)(void))dlsym(ptr, "aix_setpag"); Pioctl = (int (*)(char*, int, void*, int))dlsym(ptr, "aix_pioctl");