lfc_getreplicasl(3) get the replica entries associated with a list of path names

SYNOPSIS

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

int lfc_getreplicasl (int nbfiles, const char **paths, const char *se, int *nbentries, struct lfc_filereplicas **rep_entries)

DESCRIPTION

lfc_getreplicasl gets the replica entries associated with a list of path names.
nbfiles
specifies the number of path names in the array paths.
paths
specifies the list of logical path names relative to the current LFC directory or the list of full LFC path names.
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 file does not exist.
EACCES
Search permission is denied on a component of the path prefix.
ENOMEM
Memory could not be allocated for marshalling the request or unmarshalling the reply.
EFAULT
paths, nbentries or rep_entries is a NULL pointer.
EINVAL
nbfiles is not strictly positive or the length of se exceeds CA_MAXHOSTNAMELEN.
ENAMETOOLONG
The length of path exceeds CA_MAXPATHLEN or the length of a path component exceeds CA_MAXNAMELEN.
SENOSHOST
Host unknown.
SENOSSERV
Service unknown.
SEINTERNAL
Database error.
SECOMERR
Communication error.
ENSNACT
Name server is not running or is being shutdown.

AUTHOR

LCG Grid Deployment Team