off_t lseek(int fd, off_t offset, int whence) { Descriptor* descriptor = get_descriptor(fd); if (descriptor == NULL) RETURN_AND_SET_ERRNO(B_FILE_ERROR); status_t error = descriptor->Seek(offset, whence); if (error != B_OK) RETURN_AND_SET_ERRNO(B_FILE_ERROR); return descriptor->Offset(); }