fpos_t
int fgetpos(FILE *, fpos_t *);
int fsetpos(FILE *, const fpos_t *);
fpos_t off;
fgetpos(FILE *fp, fpos_t *pos)
return((*pos = ftello(fp)) == (fpos_t)-1);
static fpos_t
fmemopen_seek(void *v, fpos_t off, int whence)
curoff = (*seekfn)(fp->_cookie, (fpos_t)0, SEEK_CUR);
(*seekfn)(fp->_cookie, (fpos_t)offset, whence) == POS_ERR) {
#define POS_ERR (-(fpos_t)1)
fpos_t (*seekfn)(void *, fpos_t, int);
fpos_t target, curoff;
curoff = (*seekfn)(fp->_cookie, (fpos_t)0, SEEK_CUR);
if (curoff == (fpos_t)-1) {
fsetpos(FILE *iop, const fpos_t *pos)
fpos_t pos;
pos = (*fp->_seek)(fp->_cookie, (fpos_t)0, SEEK_CUR);
fpos_t __sseek(void *, fpos_t, int);
static fpos_t
memstream_seek(void *v, fpos_t off, int whence)
static fpos_t
wmemstream_seek(void *v, fpos_t off, int whence)
fpos_t
__sseek(void *cookie, fpos_t offset, int whence)
fpos_t pos;
fpos_t pos;
fpos_t th_ssize_pos;