#include #include off_t __wasilibc_tell(int fildes) { __wasi_filesize_t offset; __wasi_errno_t error = __wasi_fd_tell(fildes, &offset); if (error != 0) { // lseek returns ESPIPE on when called on a pipe, socket, or fifo, // which on WASI would translate into ENOTCAPABLE. errno = error == ENOTCAPABLE ? ESPIPE : error; return -1; } return offset; }