Skip to content

Globus GridFTP Data Storage Interface (DSI) in POSIX IO functions

License

Notifications You must be signed in to change notification settings

wyang007/gridftp_dsi_posix

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

globus_gridftp_server_posix.c

Auther: Wei Yang (Stanford Linear Accelerator Center, 2007)

Globus Gridftp 4.x Data Storage Interface module using POSIX IO

The following functions are copied from the original globus DSI module for "file"

globus_l_gfs_file_copy_stat()
globus_l_gfs_file_destroy_stat()
globus_l_gfs_file_partition_path()
globus_l_gfs_posix_stat()
globus_l_gfs_file_delete_dir()

How to compile:

This file should be compiled along with the globus 4.0.x source code. Please copy this file to source-trees/gridftp/server/src/dsi_bones and make adjustment to the Makefile. You may want to read the README.txt file in that directory first. It will be compiled to a shared library file libglobus_gridftp_server_posix_gcc32dbg.so.

How to use it with xrootd:

This code does not use any Xrootd specific functions. So it should
work with other types of storage in principle. However, we only
tested it with xrootd. We have used it under vdt1.3.9, 1.6.1 and
OSG 0.4.0, 0.6.

The idea is to overload the Posix IO functions by those provided in
the xrootd Posix interface. To do it, modify VDT's gridftp start up script to something like this:

#!/bin/sh

. /opt/vdt/setup.sh

XRDLIB="/path_to_xrootd_lib_dir" if [ -z "$LD_LIBRARY_PATH" ]; then export LD_LIBRARY_PATH="$XRDLIB" else export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:$XRDLIB" fi export LD_PRELOAD=$XRDLIB/libXrdPosixPreload.so export XROOTD_VMP="host:1094:/path1=/path2"

exec /opt/vdt/globus/sbin/globus-gridftp-server -dsi posix

Note that the option in the last line (-dsi posix) will load libglobus_gridftp_server_posix_gcc32dbg.so, So the .so should be in the search path of LD_LIBRARY_PATH

Please refer to src/XrdPosix/README for description on how to use environment variable XROOTD_VMP

About

Globus GridFTP Data Storage Interface (DSI) in POSIX IO functions

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published