Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

dpns_readdirxp(3) [debian man page]

DPNS_READDIRXP(3)					      DPNS Library Functions						 DPNS_READDIRXP(3)

NAME
dpns_readdirxp - read DPNS directory opened by dpns_opendir in the name server SYNOPSIS
#include <sys/types.h> #include "dpns_api.h" struct dpns_direnrep *dpns_readdirxp (dpns_DIR *dirp, char *pattern, char *se) DESCRIPTION
dpns_readdirxp reads the DPNS directory opened by dpns_opendir in the name server. It does restricted pattern matching on basename. This routine returns a pointer to a structure containing the current directory entry (basename, guid and filesize) and the replica information. struct dpns_rep_info { u_signed64 fileid; char status; char *host; char *sfn; }; struct dpns_direnrep { u_signed64 fileid; char guid[CA_MAXGUIDLEN+1]; mode_t filemode; u_signed64 filesize; int nbreplicas; struct dpns_rep_info *rep; /* array of replica info structures */ unsigned short d_reclen; /* length of this entry */ char d_name[1]; /* basename in variable length */ }; dpns_readdirxp 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 dpns_opendir. pattern allows to restrict the listing to entries having the basename starting with this pattern. 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 dpns_readdirxp returns a null pointer both at the end of the directory and on error, an application wishing to check for error situa- tions should set serrno to 0, then call dpns_readdirxp, 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 pattern exceeds CA_MAXNAMELEN or the length of se exceeds CA_MAXHOSTNAMELEN. SECOMERR Communication error. ENSNACT Name server is not running or is being shutdown. SEE ALSO
dpns_closedir(3), dpns_opendir(3), dpns_rewinddir(3) AUTHOR
LCG Grid Deployment Team DPNS
$Date$ DPNS_READDIRXP(3)

Check Out this Related Man Page

LFC_GETREPLICA(3)					       LFC Library Functions						 LFC_GETREPLICA(3)

NAME
lfc_getreplica - get the replica entries associated with a LFC file in the name server SYNOPSIS
#include <sys/types.h> #include "lfc_api.h" int lfc_getreplica (const char *path, const char *guid, const char *se, int *nbentries, struct lfc_filereplica **rep_entries) DESCRIPTION
lfc_getreplica gets the replica entries associated with a LFC file in the name server. The file can be specified by path name or by guid. If both are given, they must point at the same file. path specifies the logical pathname relative to the current LFC directory or the full LFC pathname. guid specifies the Grid Unique IDentifier. 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_filereplica structures allocated by the API. The client application is responsible for freeing the array when not needed anymore. struct lfc_filereplica { u_signed64 fileid; u_signed64 nbaccesses; time_t atime; /* last access to replica */ time_t ptime; /* replica pin time */ char status; char f_type; /* 'V' for Volatile, 'P' for Permanent */ char poolname[CA_MAXPOOLNAMELEN+1]; char host[CA_MAXHOSTNAMELEN+1]; char fs[80]; 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 file does not exist. EACCES Search permission is denied on a component of the path prefix. ENOMEM Memory could not be allocated for unmarshalling the reply. EFAULT path and guid are NULL pointers or nbentries or rep_entries is a NULL pointer. ENOTDIR A component of path prefix is not a directory. EINVAL The length of guid exceeds CA_MAXGUIDLEN or the length of se exceeds CA_MAXHOSTNAMELEN or path and guid are both given and they point at a different file. 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. 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: 2006/04/26 10:12:35 $ LFC_GETREPLICA(3)
Man Page