SYNOPSIS

#include <sys/types.h>

#include "dpm_api.h"

int dpm_abortfiles (char *r_token, int nbsurls, char **surls, int *nbreplies, struct dpm_filestatus **filestatuses)

DESCRIPTION

dpm_abortfiles aborts a set of file requests. File requests in status DPM_QUEUED are removed from the queue of pending requests, the ones in status DPM_READY or DPM_DONE are released (unpinned).

The input arguments are:

r_token

specifies the token returned by a previous get/put/copy request.

nbsurls

specifies the number of files to be aborted.

surls

specifies the array of file names.

The output arguments are:

nbreplies

will be set to the number of replies in the array of file statuses.

filestatuses

will be set to the address of an array of dpm_filestatus structures allocated by the API. The client application is responsible for freeing the array when not needed anymore.

struct dpm_filestatus {
	char		*surl;
	int		status;
	char		*errstring;
};

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

File does not exist.

EACCES

Permission denied.

EFAULT

r_token, surls, nbreplies or filestatuses is a NULL pointer.

ENOMEM

Memory could not be allocated for marshalling the request.

EINVAL

nbsurls is not strictly positive, the token is not known or all file requests have errors.

ENAMETOOLONG

The length of the surl exceeds CA_MAXSFNLEN.

SENOSHOST

Host unknown.

SEINTERNAL

Database error.

SECOMERR

Communication error.