Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

lfc_readdirxr(3) [debian man page]

LFC_READDIRXR(3)					       LFC Library Functions						  LFC_READDIRXR(3)

NAME
lfc_readdirxr - read LFC directory opened by lfc_opendir in the name server SYNOPSIS
#include <sys/types.h> #include "lfc_api.h" struct lfc_direnrep *lfc_readdirxr (lfc_DIR *dirp, char *se) DESCRIPTION
lfc_readdirxr reads the LFC directory opened by lfc_opendir in the name server. This routine returns a pointer to a structure containing the current directory entry (basename, guid and filesize) and the replica information. struct lfc_rep_info { u_signed64 fileid; char status; char *host; char *sfn; }; struct lfc_direnrep { u_signed64 fileid; char guid[CA_MAXGUIDLEN+1]; mode_t filemode; u_signed64 filesize; int nbreplicas; struct lfc_rep_info *rep; /* array of replica info structures */ unsigned short d_reclen; /* length of this entry */ char d_name[1]; /* basename in variable length */ }; lfc_readdirxr caches a variable number of such entries, depending on the filename size, to minimize the number of requests to the name server. dirp specifies the pointer value returned by lfc_opendir. se allows to restrict the replica entries to a given SE. RETURN VALUE
This routine returns a pointer to a structure containing the current directory entry if the operation was successful or NULL if the end of the directory was reached or if the operation failed. When the end of the directory is encountered, serrno is not changed. If the operation failed, serrno is set appropriately. As lfc_readdirxr returns a null pointer both at the end of the directory and on error, an application wishing to check for error situations should set serrno to 0, then call lfc_readdirxr, then check serrno and if it is non-zero, assume an error has occurred. ERRORS
EBADF File descriptor in DIR structure is invalid. ENOMEM Memory could not be allocated for unmarshalling the reply. EFAULT dirp is a NULL pointer. EINVAL The length of se exceeds CA_MAXHOSTNAMELEN. SECOMERR Communication error. ENSNACT Name server is not running or is being shutdown. SEE ALSO
lfc_closedir(3), lfc_opendirg(3), lfc_rewinddir(3) AUTHOR
LCG Grid Deployment Team LFC
$Date$ LFC_READDIRXR(3)

Check Out this Related Man Page

LFC_GETREPLICAS(3)					       LFC Library Functions						LFC_GETREPLICAS(3)

NAME
lfc_getreplicas - get the replica entries associated with a list of GUIDs SYNOPSIS
#include <sys/types.h> #include "lfc_api.h" int lfc_getreplicas (int nbguids, const char **guids, const char *se, int *nbentries, struct lfc_filereplicas **rep_entries) DESCRIPTION
lfc_getreplicas gets the replica entries associated with a list of GUIDs. nbguids specifies the number of guids in the array guids. guids specifies the list of Grid Unique IDentifiers. se allows to restrict the replica entries to a given SE. nbentries will be set to the number of entries in the array of replicas. rep_entries will be set to the address of an array of lfc_filereplicas structures allocated by the API. The client application is responsible for freeing the array when not needed anymore. struct lfc_filereplicas { char guid[CA_MAXGUIDLEN+1]; int errcode; u_signed64 filesize; time_t ctime; /* GUID creation time */ char csumtype[3]; char csumvalue[33]; time_t r_ctime; /* replica creation time */ time_t r_atime; /* last access to replica */ char status; char host[CA_MAXHOSTNAMELEN+1]; char sfn[CA_MAXSFNLEN+1]; }; RETURN VALUE
This routine returns 0 if the operation was successful or -1 if the operation failed. In the latter case, serrno is set appropriately. ERRORS
ENOENT The named guid does not exist. ENOMEM Memory could not be allocated for marshalling the request or unmarshalling the reply. EFAULT guids, nbentries or rep_entries is a NULL pointer. EINVAL nbguids is not strictly positive, the length of one of the guids exceeds CA_MAXGUIDLEN or the length of se exceeds CA_MAXHOST- NAMELEN. SENOSHOST Host unknown. SENOSSERV Service unknown. SEINTERNAL Database error. SECOMERR Communication error. ENSNACT Name server is not running or is being shutdown. SEE ALSO
Castor_limits(4), lfc_chdir(3) AUTHOR
LCG Grid Deployment Team LFC
$Date: 2010-09-13 07:52:37 +0200 (Mon, 13 Sep 2010) $ LFC_GETREPLICAS(3)
Man Page