dpns_delreplicasbysfn(3) delete entries associated with a list of sfns and corresponding lfn if last replica

SYNOPSIS

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

int dpns_delreplicasbysfn (int nbfiles, const char **sfns, const char **guids, int *nbstatuses, int **statuses)

DESCRIPTION

dpns_delreplicasbysfn deletes entries associated with a list of sfns and corresponding lfn if last replica. An extra check may be obtained by specifying a list of guids.
nbfiles
specifies the number of file names in the array sfns.
sfns
specifies either the Site URLs or the Physical File Names for the list of replicas.
guids
specifies the list of Grid Unique IDentifiers (optional). Can be NULL.
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
The named file or replica does not exist.
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 parent directory or write permission is denied on the parent directory or the parent has the sticky bit S_ISVTX set and

the effective user ID of the requestor does not match the owner ID of the file and

the effective user ID of the requestor does not match the owner ID of the directory and

the file is not writable by the requestor and

the requestor does not have ADMIN privilege in the Cupv database.

ENOMEM
Memory could not be allocated for marshalling the request or unmarshalling the reply.
EFAULT
sfns, nbstatuses or statuses is a NULL pointer.
EINVAL
nbfiles is not strictly positive or the length of one of the guids exceeds CA_MAXGUIDLEN.
ENAMETOOLONG
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.

AUTHOR

LCG Grid Deployment Team