SYNOPSIS
#include <sys/types.h>#include "lfc_api.h"
int lfc_delfilesbypattern (const char *path, const char *pattern, int force, int *nbstatuses, struct lfc_filestatus **statuses)
DESCRIPTION
lfc_delfilesbypattern deletes the file entries selected by pattern matching on basename. If replicas exist and the force argument is not zero, all replicas are first removed.- path
- specifies the logical pathname relative to the current LFC directory or the full LFC pathname.
- pattern
- allows to restrict the list of files to be deleted to entries having the basename starting with this pattern. pattern should be terminated by a %.
- 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 lfc_filestatus structures allocated by the API. The client application is responsible for freeing the array when not needed anymore.
struct lfc_filestatus { char name[CA_MAXNAMELEN+1]; int errcode; };
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 directory does not exist.
- EACCES
-
Search permission is denied on a component of the
path
prefix 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
- path, pattern, nbstatuses or statuses is a NULL pointer.
- EEXIST
- File has replicas and force is zero.
- ENOTDIR
- A component of path prefix is not a directory.
- ENAMETOOLONG
- The length of path exceeds CA_MAXPATHLEN or the length of a path component exceeds CA_MAXNAMELEN.
- EINVAL
- The length of pattern exceeds CA_MAXNAMELEN.
- SENOSSERV
- Service unknown.
- SEINTERNAL
- Database error.
- SECOMERR
- Communication error.
- ENSNACT
- Name server is not running or is being shutdown.
AUTHOR
LCG Grid Deployment Team