Print

Print


Hi,

Now that I have an libXrdPosixPreload.so to use, I am running into 
problems getting this to work.  I am trying to set it up to support a 
gridftp server but I thought I would first start with a presumably 
simpler case.  I just want to use "ls" against a file.  The README file 
for XrdPosix implies that this should work.

I have a file available in the name space that can be copied back to the 
client machine, via our redirector:

[mcguigan@gk01 ~]$ /opt/xrootd/bin/xrdcp 
root://xrdb.local:1094//xrd/test1/100mb /tmp/wood
[xrootd] Total 95.37 MB |====================| 100.00 % [115.2 MB/s]



I created the following xrdrun.sh file:

#!/bin/sh
export XROOTD_VMP='xrd.local:1094:/xroot/=/xrd/'
export LD_LIBRARY_PATH=/opt/xrootd/lib/
export LD_DEBUG=libs
export LD_PRELOAD=/opt/xrootd/lib/libXrdPosixPreload.so
export XRDPOSIX_DEBUG=3
$*

Shouldn't this allow me to do:
./xrdrun.sh ls /xroot/test1/100mb
./xrdrun.sh ls root://xrdb.local:1094//xrd/test1/100mb


I receive the message "No such file or directory error" from the ls.

With the LD_DEBUG statement I can see that the pre-load library is being 
loaded and initialized just prior to ls being loaded.  Also, if I 
malform the VMP environment varialble, I will get an Invalid map message 
from XrdPosix.  I don't get any information by setting XRDPOSIX_DEBUG.

Should this work?

How can I debug this?  I tried rebuilding the XrdPosix libraries with a 
couple of very simple output statements in XrdPosixXrootPath::URL  but I 
get seg faults when I try to use them.

I am working on SL4.5 X86_64.

Any advice is greatly appreciated.

Patrick