dpm_copy man page

DPM_COPY(3)                  DPM Library Functions                 DPM_COPY(3)

      dpm_copy - copy a set of existing files

      [1m#include <sys/types.h>[0m
      [1m#include "dpm_api.h"[0m

      [1mint  dpm_copy  (int  [4m[22mnbreqfiles[24m[1m, struct dpm_copyfilereq *[4m[22mreqfiles[24m[1m, char[0m
      [1m*[4m[22mu_token[24m[1m, int [4m[22mflags[24m[1m, time_t [4m[22mretrytime[24m[1m, char *[4m[22mr_token[24m[1m,  int  *[4m[22mnbreplies[24m[1m,[0m
      [1mstruct dpm_copyfilestatus **[4m[22mfilestatuses[24m[1m)[0m

      [1mdpm_copy [22mcopies a set of existing files.

      The input arguments are:

             specifies the number of files belonging to the request.

             specifies  the  array  of  file requests (dpm_copyfilereq struc-

      struct dpm_copyfilereq {
           char      *from_surl;
           char      *to_surl;
           time_t    lifetime;
           char      f_type;
           char      s_token[CA_MAXDPMTOKENLEN+1];
           char      ret_policy;
           char      ac_latency;
           int       flags;

             specifies the user  provided  description  associated  with  the

      [4mflags[24m  if set to non zero, it allows to overwrite an existing file.

             This field is currently ignored.

      The output arguments are:

             Address  of a buffer to receive the system allocated token.  The
             buffer must be at least CA_MAXDPMTOKENLEN+1 characters long.

             will be set to the number of replies in the array of  file  sta-

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

      struct dpm_copyfilestatus {
           char      *from_surl;
           char      *to_surl;
           u_signed64     filesize;
           int       status;
           char      *errstring;
           time_t    f_lifetime;

      This  routine  returns  0  if the operation was successful or -1 if the
      operation failed. In the latter case, [1mserrno [22mis set appropriately.

      [1mEFAULT       [4m[22mreqfiles[24m, [4mr_token[24m, [4mnbreplies[24m or  [4mfilestatuses[24m  is  a  NULL

      [1mENOMEM       [22mMemory could not be allocated for marshalling the request.

      [1mEINVAL       [4m[22mnbreqfiles[24m  is  not  strictly  positive, the length of the
                   user request description is greater than 255 or  all  file
                   requests have errors.

      [1mSENOSHOST    [22mHost unknown.

      [1mSEINTERNAL   [22mDatabase error.

      [1mSECOMERR     [22mCommunication error.

LCG                      $Date: 2006/12/20 15:21:57 $              DPM_COPY(3)