13e12c5d1SDavid du Colombier #include "lib.h" 23e12c5d1SDavid du Colombier #include <unistd.h> 33e12c5d1SDavid du Colombier #include <errno.h> 43e12c5d1SDavid du Colombier #include "sys9.h" 53e12c5d1SDavid du Colombier 63e12c5d1SDavid du Colombier /* 73e12c5d1SDavid du Colombier * BUG: errno mapping 83e12c5d1SDavid du Colombier */ 93e12c5d1SDavid du Colombier off_t lseek(int d,off_t offset,int whence)103e12c5d1SDavid du Colombierlseek(int d, off_t offset, int whence) 113e12c5d1SDavid du Colombier { 12*d9306527SDavid du Colombier long long n; 13219b2ee8SDavid du Colombier int flags; 143e12c5d1SDavid du Colombier 15219b2ee8SDavid du Colombier flags = _fdinfo[d].flags; 16219b2ee8SDavid du Colombier if(flags&(FD_BUFFERED|FD_BUFFEREDX|FD_ISTTY)) { 17219b2ee8SDavid du Colombier errno = ESPIPE; 18219b2ee8SDavid du Colombier return -1; 19219b2ee8SDavid du Colombier } 20*d9306527SDavid du Colombier n = _SEEK(d, offset, whence); 213e12c5d1SDavid du Colombier if(n < 0) 223e12c5d1SDavid du Colombier _syserrno(); 233e12c5d1SDavid du Colombier return n; 243e12c5d1SDavid du Colombier } 25