Open a directory
#include <sys/types.h>
#include "rfio_api.h"
RDIR *rfio_opendir (const char *path);
rfio_opendir opens a directory to be used in subsequent rfio_readdir operations. A RDIR structure and a buffer to cache the directory entries are allocated in the client API.
path
specifies the logical pathname relative to the current directory or the full pathname.
For LCG directories, a multi-threaded application will need to initialize itself the Cthread (LCG Thread Interface) library ; this is done by including "shift/Cthread_api.h" and calling the function Cthread_init() at the beginning. Otherwise accessing LCG directories will not be thread-safe. See Cthread(3).
This routine returns a pointer to be used in the subsequent directory function calls if the operation was successful or NULL if the operation failed. In the latter case, serrno is set appropriately.
ENOENT
A component of path prefix does not exist or path is a null pathname.
EACCES
Search permission is denied on a component of the path prefix or read permission is denied on path.
EFAULT
path is a NULL pointer.
ENOTDIR
A component of path prefix is not a directory.
ENAMETOOLONG
The length of path exceeds CA_MAXPATHLEN or the length of a path component exceeds CA_MAXNAMELEN.
SENOSHOST
Host unknown.
SENOSSERV
Service unknown.
SECOMERR
Communication error.
LCG Grid Deployment Team