1 /* Skipping input from a FILE stream. 2 Copyright (C) 2007-2021 Free Software Foundation, Inc. 3 4 This file is free software: you can redistribute it and/or modify 5 it under the terms of the GNU Lesser General Public License as 6 published by the Free Software Foundation; either version 2.1 of the 7 License, or (at your option) any later version. 8 9 This file is distributed in the hope that it will be useful, 10 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 GNU Lesser General Public License for more details. 13 14 You should have received a copy of the GNU Lesser General Public License 15 along with this program. If not, see <https://www.gnu.org/licenses/>. */ 16 17 #include <stddef.h> 18 #include <stdio.h> 19 20 #ifdef __cplusplus 21 extern "C" { 22 #endif 23 24 /* Assuming the stream STREAM is open for reading: 25 26 Read and discard OFFSET bytes from STREAM. 27 28 freadseek (STREAM, OFFSET) is the same as 29 fseek (STREAM, OFFSET, SEEK_CUR), except that the latter does not work 30 on non-seekable input streams (such as pipes). 31 32 Upon success, return 0. 33 Upon premature end of stream, return 0 (like fseek does). 34 Upon error, set the error indicator in the stream and return EOF. 35 36 STREAM must not be wide-character oriented. */ 37 38 extern int freadseek (FILE *stream, size_t offset); 39 40 #ifdef __cplusplus 41 } 42 #endif