TRUNCATE(2)

TRUNCATE(2)

times Home Page System Calls Index ulimit


NAME
       truncate,  ftruncate  -  truncate  a  file  to a specified
       length

SYNOPSIS
       #include <<unistd.h>>

       int truncate(const char *path, size_t length);
       int ftruncate(int fd, size_t length);

DESCRIPTION
       Truncate causes the file named by path or referenced by fd
       to  be  truncated to at most length bytes in size.  If the
       file previously was larger than this size, the extra  data
       is  lost.  With ftruncate, the file must be open for writ-
       ing.

RETURN VALUE
       On success, zero is returned.  On error, -1  is  returned,
       and errno is set appropriately.

ERRORS
       For truncate:

       ENOTDIR A component of the path prefix is not a directory.

       EINVAL  The pathname contains a character with  the  high-
               order bit set.

       ENAMETOOLONG
               A component of a pathname exceeded 255 characters,
               or an entire path name exceeded 1023 characters.

       ENOENT  The named file does not exist.

       EACCES  Search permission is denied for a component of the
               path prefix.

       EACCES  The named file is not writable by the user.

       ELOOP   Too many symbolic links were encountered in trans-
               lating the pathname.

       EISDIR  The named file is a directory.

       EROFS   The named file resides on a read-only file system.

       ETXTBSY The  file  is  a pure procedure (shared text) file
               that is being executed.

       EIO     An I/O error occurred updating the inode.

       EFAULT  Path  points  outside  the   process's   allocated
               address space.

       For Ftruncate:

       EBADF   The fd is not a valid descriptor.

       EINVAL  The fd references a socket, not a file.

       EINVAL  The fd is not open for writing.

CONFORMING TO
       4.4BSD,  SVr4  (these function calls first appeared in BSD
       4.2).  SVr4 documents additional truncate error conditions
       EINTR,  EMFILE,  EMULTIHP,  ENAMETOOLONG, ENFILE, ENOLINK,
       ENOTDIR.  SVr4 ftruncate documents additional  EAGAIN  and
       EINTR error conditions.

BUGS
       These calls should be generalized to allow ranges of bytes
       in a file to be discarded.

SEE ALSO
       open(2) 

times Home Page System Calls Index ulimit