Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ lseek(2) — NEWS-os 5.0.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

creat(2)

dup(2)

fcntl(2)

open(2)



lseek(2)                  SYSTEM CALLS                   lseek(2)



NAME
     lseek - move read/write file pointer

SYNOPSIS
     #include <sys/types.h>
     #include <unistd.h>

     offt lseek (int fildes, offt offset, int whence);

DESCRIPTION
     fildes is a file descriptor returned  from  a  creat,  open,
     dup,  or  fcntl  system  call.   lseek sets the file pointer
     associated with fildes as follows:

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

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

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

     On success, lseek returns the resulting pointer location, as
     measured in bytes from the beginning of the file.  Note that
     if fildes is a remote file descriptor and  offset  is  nega-
     tive, lseek returns the file pointer even if it is negative.

     lseek allows the file pointer to be set beyond the  existing
     data  in  the file. If data are later written at this point,
     subsequent reads in the gap between the previous end of data
     and  the  newly  written  data  will return bytes of value 0
     until data are written into the gap.

     lseek fails and the file pointer remains unchanged if one or
     more of the following are true:

     EBADF          fildes is not an open file descriptor.

     ESPIPE         fildes is associated with a pipe or fifo.

     EINVAL         whence  is   not   SEEKSET,   SEEKCUR,   or
                    SEEKEND.   The  process  also  gets a SIGSYS
                    signal.

     EINVAL         fildes is not a remote file  descriptor,  and
                    the resulting file pointer would be negative.

     Some devices are incapable of seeking.   The  value  of  the
     file pointer associated with such a device is undefined.





                                                                1





lseek(2)                  SYSTEM CALLS                   lseek(2)



SEE ALSO
     creat(2), dup(2), fcntl(2), open(2).

DIAGNOSTICS
     Upon successful completion, a non-negative integer  indicat-
     ing  the file pointer value is returned.  Otherwise, a value
     of -1 is returned and errno is set to indicate the error.
















































                                                                2



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026