summaryrefslogtreecommitdiff
path: root/gnulib/doc/posix-functions/lseek.texi
diff options
context:
space:
mode:
Diffstat (limited to 'gnulib/doc/posix-functions/lseek.texi')
m---------gnulib0
-rw-r--r--gnulib/doc/posix-functions/lseek.texi34
2 files changed, 34 insertions, 0 deletions
diff --git a/gnulib b/gnulib
deleted file mode 160000
-Subproject 443bc5ffcf7429e557f4a371b0661abe98ddbc1
diff --git a/gnulib/doc/posix-functions/lseek.texi b/gnulib/doc/posix-functions/lseek.texi
new file mode 100644
index 0000000..1c87759
--- /dev/null
+++ b/gnulib/doc/posix-functions/lseek.texi
@@ -0,0 +1,34 @@
+@node lseek
+@section @code{lseek}
+@findex lseek
+
+POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/lseek.html}
+
+Gnulib module: lseek
+
+Portability problems fixed by Gnulib:
+@itemize
+@item
+On platforms where @code{off_t} is a 32-bit type, @code{lseek} does not work
+correctly with files larger than 2 GB. (Cf. @code{AC_SYS_LARGEFILE}.)
+@item
+This function mistakenly succeeds on pipes on some platforms: mingw, MSVC 9, BeOS.
+@end itemize
+
+Portability problems not fixed by Gnulib:
+@itemize
+@item
+POSIX does not specify which file descriptors support seeking and which don't.
+In practice, regular files and block devices support seeking, and ttys, pipes,
+and most character devices don't support it.
+@item
+When the third argument is invalid, POSIX says that @code{lseek} should set
+@code{errno} to @code{EINVAL} and return -1, but in this situation a
+@code{SIGSYS} signal is raised on some platforms:
+IRIX 6.5.
+@item
+When the @code{lseek} function fails, POSIX says that the file offset remains
+unchanged. But on some platforms, attempting to set a negative file offset
+fails and sets the file offset to 0:
+BeOS.
+@end itemize