NAME
dpns_setfsize - set filesize for a regular file; set also last
modification time to the current time
SYNOPSIS
#include <sys/types.h>
#include "dpns_api.h"
int dpns_setfsize (const char *path, struct dpns_fileid *file_uniqueid,
u_signed64 filesize)
int dpns_setfsizec (const char *path, struct dpns_fileid
*file_uniqueid, u_signed64 filesize, const char *csumtype, char
*csumvalue)
DESCRIPTION
dpns_setfsize sets the filesize for a regular file; set also the last
modification time to the current time. This function should only be
called by the stager after the last write operation has been performed
on the file. The file can be identified by path name or by
file_uniqueid. If both are specified, file_uniqueid is used.
path specifies the logical pathname relative to the current DPNS
directory or the full DPNS pathname.
csumtype
specifies the type of checksum. Valid types are:
CS standard 32 bits checksum
AD Adler 32 bits checksum
MD MD5 128 bits checksum
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 path prefix does not exist or path is a
null pathname.
EACCES Search permission is denied on a component of the path
prefix or the caller effective user ID does not match the
owner ID of the file or write permission on the file
itself is denied.
EFAULT path and file_uniqueid are NULL pointers.
ENOTDIR A component of path prefix is not a directory.
EISDIR The file is not a regular file.
EINVAL The length of the csumtype exceeds 2 or csumtype is an
unknown type or the length of the csumvalue exceeds 32.
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), dpns_chdir(3), dpns_statg(3)
AUTHOR
LCG Grid Deployment Team