Returns a pointer to the stream handle if successfull, NULL otherwise.
*/
-FILE * fopen( const char * _PDCLIB_restrict filename, const char * _PDCLIB_restrict mode ) _PDCLIB_nothrow;
+FILE * fopen( const char * _PDCLIB_restrict filename,
+ const char * _PDCLIB_restrict mode ) _PDCLIB_nothrow;
/* Creates a stream connected to the file descriptor \p fd with mode \p mode.
Mode must match the mode with which the file descriptor was opened.
*/
-FILE * _PDCLIB_fdopen( _PDCLIB_fd_t fd, int mode, const char* filename ) _PDCLIB_nothrow;
+FILE * _PDCLIB_fvopen( _PDCLIB_fd_t fd, const _PDCLIB_fileops_t * ops,
+ int mode, const char * filename ) _PDCLIB_nothrow;
/* Close any file currently associated with the given stream. Open the file
identified by the given filename with the given mode (equivalent to fopen()),
/* Equivalent to fgetc( stdin ). */
int getchar( void ) _PDCLIB_nothrow;
+#if _PDCLIB_C_MAX(1999)
/* Read characters from given stream into the array s, stopping at \n or EOF.
The string read is terminated with \0. Returns s if successful. If EOF is
encountered before any characters are read, the contents of s are unchanged,
and NULL is returned. If a read error occurs, the contents of s are indeter-
minate, and NULL is returned.
+
+ This function is dangerous and has been a great source of security
+ vulnerabilities. Do not use it. It was removed by C11.
*/
-char * gets( char * s ) _PDCLIB_nothrow;
+char * gets( char * s ) _PDCLIB_DEPRECATED _PDCLIB_nothrow;
+#endif
/* Equivalent to fputc( c, stream ), but may be overloaded by a macro that
evaluates its parameter more than once.
void clearerr_unlocked(FILE *stream);
int feof_unlocked(FILE *stream);
int ferror_unlocked(FILE *stream);
-int fileno_unlocked(FILE *stream);
int fflush_unlocked(FILE *stream);
int fgetc_unlocked(FILE *stream);
int fputc_unlocked(int c, FILE *stream);
int fsetpos_unlocked( FILE * stream, const fpos_t * pos ) _PDCLIB_nothrow;
long int ftell_unlocked( FILE * stream ) _PDCLIB_nothrow;
int fseek_unlocked( FILE * stream, long int offset, int whence ) _PDCLIB_nothrow;
+void rewind_unlocked( FILE * stream ) _PDCLIB_nothrow;
int puts_unlocked( const char * s ) _PDCLIB_nothrow;
int ungetc_unlocked( int c, FILE * stream ) _PDCLIB_nothrow;