fsetpos64—restore position of a large stream or file ¶Synopsis
#include <stdio.h>
int fsetpos64(FILE *fp, const _fpos64_t *pos);
int _fsetpos64_r(struct _reent *ptr, FILE *fp,
const _fpos64_t *pos);
Description
Objects of type FILE can have a “position” that records how much
of the file your program has already read. Many of the stdio functions
depend on this position, and many change it as a side effect.
You can use fsetpos64 to return the large file identified by fp to a
previous position *pos (after first recording it with fgetpos64).
See fseeko64 for a similar facility.
Returns
fgetpos64 returns 0 when successful. If fgetpos64 fails, the
result is 1. The reason for failure is indicated in errno:
either ESPIPE (the stream identified by fp doesn’t support
64-bit repositioning) or EINVAL (invalid file position).
Portability
fsetpos64 is a glibc extension.
Supporting OS subroutines required: close, fstat, isatty,
lseek64, read, sbrk, write.