Provided by: libdpm-dev_1.13.0-1_amd64 bug

NAME

       dpns_getreplicax - get the replica entries associated with a DPNS file in the name server

SYNOPSIS

       #include <sys/types.h>
       #include "dpns_api.h"

       int  dpns_getreplicax (const char *path, const char *guid, const char *se, int *nbentries,
       struct dpns_filereplicax **rep_entries)

DESCRIPTION

       dpns_getreplicax gets the replica entries associated with a DPNS 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 DPNS directory or the full
              DPNS 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 dpns_filereplicax structures allocated by
              the  API.  The  client  application  is  responsible for freeing the array when not
              needed anymore.

       struct dpns_filereplicax {
            u_signed64     fileid;
            u_signed64     nbaccesses;
            time_t         ctime;         /* replica creation time */
            time_t         atime;         /* last access to replica */
            time_t         ptime;         /* replica pin time */
            time_t         ltime;         /* replica lifetime */
            char      r_type;        /* 'P' for Primary, 'S' for Secondary */
            char      status;
            char      f_type;        /* 'V' for Volatile, 'P' for Permanent */
            char      setname[37];
            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), dpns_chdir(3)

AUTHOR

       LCG Grid Deployment Team