#include "stdio_impl.h" static off_t retneg1(FILE *f, off_t off, int whence) { errno = ESPIPE; return -1; } off_t __stdio_seek(FILE *f, off_t off, int whence) { off_t ret; #ifdef SYS__llseek if (syscall(SYS__llseek, f->fd, off>>32, off, &ret, whence)<0) ret = -1; #else ret = syscall(SYS_lseek, f->fd, off, whence); #endif /* Detect unseekable files and optimize future failures out */ if (ret < 0 && errno == ESPIPE) f->seek = retneg1; return ret; }