+};\r
+\r
+/******************************************************************************/\r
+/* Internal functions */\r
+/******************************************************************************/\r
+\r
+/* The worker for all printf() type of functions. The pointer spec should point\r
+ to the introducing '%' of a conversion specifier. The status structure is to\r
+ be that of the current printf() function, of which the members n, s, stream\r
+ and arg will be preserved; i will be updated; and all others will be trashed\r
+ by the function.\r
+ Returns a pointer to the first character not parsed as conversion specifier.\r
+*/\r
+const char * _PDCLIB_print( const char * spec, struct _PDCLIB_status_t * status );\r
+\r
+/* The worker for all scanf() type of functions. The pointer spec should point\r
+ to the introducing '%' of a conversion specifier. The status structure is to\r
+ be that of the current scanf() function, of which the member stream will be\r
+ preserved; n, i, and s will be updated; and all others will be trashed by\r
+ the function.\r
+ Returns a pointer to the first character not parsed as conversion specifier,\r
+ or NULL in case of error.\r
+ FIXME: Should distinguish between matching and input error\r
+*/\r
+const char * _PDCLIB_scan( const char * spec, struct _PDCLIB_status_t * status );\r
+\r
+/* Parsing any fopen() style filemode string into a number of flags. */\r
+unsigned int _PDCLIB_filemode( const char * mode );\r
+\r
+/* Sanity checking and preparing of read buffer, should be called first thing \r
+ by any stdio read-data function.\r
+ Returns 0 on success, EOF on error.\r
+ On error, EOF / error flags and errno are set appropriately.\r
+*/\r
+int _PDCLIB_prepread( _PDCLIB_file_t * stream );\r
+\r
+/* Sanity checking, should be called first thing by any stdio write-data\r
+ function.\r
+ Returns 0 on success, EOF on error.\r
+ On error, error flags and errno are set appropriately.\r
+*/\r
+int _PDCLIB_prepwrite( _PDCLIB_file_t * stream );\r
+\r
+/* Closing all streams on program exit */\r
+void _PDCLIB_closeall( void );\r