87 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
			
		
		
	
	
			87 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
| .\" Copyright (c) 1980 Regents of the University of California.
 | |
| .\" All rights reserved.  The Berkeley software License Agreement
 | |
| .\" specifies the terms and conditions for redistribution.
 | |
| .\"
 | |
| .\"	@(#)lseek.2	6.3 (Berkeley) 2/24/86
 | |
| .\"
 | |
| .TH LSEEK 2 "February 24, 1986"
 | |
| .UC 4
 | |
| .SH NAME
 | |
| lseek \- move read/write pointer
 | |
| .SH SYNOPSIS
 | |
| .nf
 | |
| .ft B
 | |
| #include <sys/types.h>
 | |
| #include <unistd.h>
 | |
| 
 | |
| .ta +1.8i +0.6i
 | |
| #define SEEK_SET	0	/* offset is absolute */
 | |
| #define SEEK_CUR	1	/* relative to current position */
 | |
| #define SEEK_END	2	/* relative to end of file */
 | |
| 
 | |
| off_t lseek(int d, off_t offset, int whence)
 | |
| .fi
 | |
| .ft R
 | |
| .SH DESCRIPTION
 | |
| The descriptor 
 | |
| .I d
 | |
| refers to a file or device open for reading and/or writing.
 | |
| .B Lseek
 | |
| sets the file pointer of
 | |
| .I d
 | |
| as follows:
 | |
| .IP
 | |
| If
 | |
| .I whence
 | |
| is SEEK_SET, the pointer is set to
 | |
| .I offset
 | |
| bytes.
 | |
| .IP
 | |
| If
 | |
| .I whence
 | |
| is SEEK_CUR, the pointer is set to its current location plus
 | |
| .IR offset .
 | |
| .IP
 | |
| If
 | |
| .I whence
 | |
| is SEEK_END, the pointer is set to the size of the
 | |
| file plus
 | |
| .IR offset .
 | |
| .PP
 | |
| 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.
 | |
| .SH NOTES
 | |
| Seeking far beyond the end of a file, then writing,
 | |
| creates a gap or \*(lqhole\*(rq, which occupies no
 | |
| physical space and reads as zeros.
 | |
| .SH "RETURN VALUE
 | |
| Upon successful completion,
 | |
| the current file pointer value is returned.
 | |
| Otherwise,
 | |
| a value of \-1 is returned and \fBerrno\fP is set to indicate
 | |
| the error.
 | |
| .SH "ERRORS
 | |
| .B Lseek
 | |
| will fail and the file pointer will remain unchanged if:
 | |
| .TP 15
 | |
| [EBADF]
 | |
| .I Fildes
 | |
| is not an open file descriptor.
 | |
| .TP 15
 | |
| [ESPIPE]
 | |
| .I Fildes
 | |
| is associated with a pipe or a socket.
 | |
| .TP 15
 | |
| [EINVAL]
 | |
| .I Whence
 | |
| is not a proper value.
 | |
| .SH "SEE ALSO"
 | |
| .BR fcntl (2),
 | |
| .BR open (2).
 | |
| .SH BUGS
 | |
| This document's use of
 | |
| .I whence
 | |
| is incorrect English, but maintained for historical reasons.
 | 
