SYNOPSIS

#include <sys/types.h>

#include "rfio_api.h"

RDIR *rfio_opendir (const char *path);

DESCRIPTION

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.

NOTES

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).

RETURN VALUE

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.

ERRORS

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.

RELATED TO rfio_opendir…

AUTHOR

LCG Grid Deployment Team