LSEEK(2)	    UNIX Programmer's Manual		 LSEEK(2)


NAME
     lseek - move read/write pointer

SYNOPSIS
     #include <sys/file.h>

     #define L_SET   0 /* set the seek pointer */
     #define L_INCR  1 /* increment the seek pointer */
     #define L_XTND  2 /* extend the file size */

     pos = lseek(d, offset, whence)
     off_t pos;
     int d;
     off_t offset;
     int whence;

DESCRIPTION
     The descriptor d refers to a file or device open for reading
     and/or writing.  Lseek sets the file pointer of d as fol-
     lows:

	  If whence is L_SET, the pointer is set to offset bytes.

	  If whence is L_INCR, the pointer is set to its current
	  location plus offset.

	  If whence is L_XTND, the pointer is set to the size of
	  the file plus offset.

     Upon successful completion, the resulting pointer location
     as measured in bytes from beginning of the file is returned.
     Some devices are incapable of seeking.  The value of the
     pointer associated with such a device is undefined.

NOTES
     Seeking far beyond the end of a file, then writing, creates
     a gap or "hole", which occupies no physical space and reads
     as zeros.

RETURN VALUE
     Upon successful completion, the current file pointer value
     is returned.  Otherwise, a value of -1 is returned and errno
     is set to indicate the error.

ERRORS
     Lseek will fail and the file pointer will remain unchanged
     if:

     [EBADF]	    Fildes is not an open file descriptor.

     [ESPIPE]	    Fildes is associated with a pipe or a socket.


Printed 11/26/99	February 24, 1986			1


LSEEK(2)	    UNIX Programmer's Manual		 LSEEK(2)


     [EINVAL]	    Whence is not a proper value.

SEE ALSO
     dup(2), open(2)

BUGS
     This document's use of whence is incorrect English, but
     maintained for historical reasons.


Printed 11/26/99	February 24, 1986			2


 
Generated: 2016-12-26
Generated by man2html V0.25
page hit count: 900
Valid CSS Valid XHTML 1.0 Strict