Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

lfc_registerfiles(3) [debian man page]

LFC_REGISTERFILES(3)					       LFC Library Functions					      LFC_REGISTERFILES(3)

NAME
lfc_registerfiles - register list of files with their corresponding replica entry SYNOPSIS
#include <sys/types.h> #include "lfc_api.h" int lfc_registerfiles (int nbfiles, struct lfc_filereg *files, int *nbstatuses, int **statuses) DESCRIPTION
lfc_registerfiles registers a list of files with their corresponding replica entry. If the lfn is already registered, the guid is optional and only the replica is added (after checking that filesize and possibly checksum match). If the lfn is not registered yet, the guid is mandatory for the LFC. The lfn and the replica get registered. nbfiles specifies the number of files in the array files. files is a pointer to an array of lfc_filereg structures provided by the application. struct lfc_filereg { char *lfn; char *guid; mode_t mode; u_signed64 size; char *csumtype; char *csumvalue; char *server; char *sfn; }; nbstatuses will be set to the number of replies in the array of statuses. statuses will be set to the address of an array of integer statuses allocated by the API. The client application is responsible for freeing the array when not needed anymore. Individual statuses are 0 if the operation was successful or set to the serrno value in case of error. 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 A component of lfn prefix does not exist or lfn is a null pathname. E2BIG Request too large (max 1 MB). ENOMEM Memory could not be allocated for marshalling the request or unmarshalling the reply. EACCES Search permission is denied on a component of the lfn prefix or the file does not exist and write permission on the parent directory is denied or write permission on the file itself is denied. EFAULT files, nbstatuses or statuses is a NULL pointer. EEXIST The sfn exists already. ENOTDIR A component of lfn prefix is not a directory. EISDIR The lfn exists already and is not a regular file. EINVAL nbfiles is not strictly positive, the length of one of the guids exceeds CA_MAXGUIDLEN or the length of server exceeds CA_MAX- HOSTNAMELEN or lfn and guid are both given and they point at a different file. ENOSPC The name server database is full. ENAMETOOLONG The length of lfn exceeds CA_MAXPATHLEN or the length of an lfn component exceeds CA_MAXNAMELEN or the length of sfn exceeds CA_MAXSFNLEN. 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_addreplica(3), lfc_creatg(3), lfc_setfsize(3) AUTHOR
LCG Grid Deployment Team LFC
$Date: 2010-09-14 13:37:49 +0200 (Tue, 14 Sep 2010) $ LFC_REGISTERFILES(3)

Check Out this Related Man Page

LFC_GETREPLICAX(3)					       LFC Library Functions						LFC_GETREPLICAX(3)

NAME
lfc_getreplicax - get the replica entries associated with a LFC file in the name server SYNOPSIS
#include <sys/types.h> #include "lfc_api.h" int lfc_getreplicax (const char *path, const char *guid, const char *se, int *nbentries, struct lfc_filereplicax **rep_entries) DESCRIPTION
lfc_getreplicax 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_filereplicax structures allocated by the API. The client application is responsible for freeing the array when not needed anymore. struct lfc_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), lfc_chdir(3) AUTHOR
LCG Grid Deployment Team LFC
$Date: 2006/12/01 09:19:37 $ LFC_GETREPLICAX(3)
Man Page