First public contribution.
3 * Portions Copyright (c) 1990-1999 Nokia Corporation and/or its subsidiary(-ies).
8 * Copyright (c) 1990 The Regents of the University of California.
11 * Redistribution and use in source and binary forms are permitted
12 * provided that the above copyright notice and this paragraph are
13 * duplicated in all such forms and that any documentation,
14 * advertising materials, and other materials related to such
15 * distribution and use acknowledge that the software was developed
16 * by the University of California, Berkeley. The name of the
17 * University may not be used to endorse or promote products derived
18 * from this software without specific prior written permission.
19 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
20 * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
21 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
23 * Based on @(#)stdio.h 5.3 (Berkeley) 3/15/86
39 #include <sys/reent.h>
41 #define _stdin_r(x) (&((x)->_sf[0]))
42 #define _stdout_r(x) (&((x)->_sf[1]))
43 #define _stderr_r(x) (&((x)->_sf[2]))
46 Reentrant versions of the <stdio.h> functions
48 IMPORT_C void _cleanup_r (struct _reent *);
49 IMPORT_C FILE * _fdopen_r (struct _reent *, int, const char *);
50 IMPORT_C FILE * _wfdopen_r (struct _reent *, int, const wchar_t *);
51 IMPORT_C FILE * _fopen_r (struct _reent *, const char *, const char *);
52 IMPORT_C FILE * _wfopen_r (struct _reent *, const wchar_t *, const wchar_t *);
53 IMPORT_C int _getchar_r (struct _reent *);
54 IMPORT_C char * _gets_r (struct _reent *, char *);
55 IMPORT_C int _iprintf_r (struct _reent *, const char *, ...);
56 IMPORT_C int _mkstemp_r (struct _reent *, char *);
57 IMPORT_C char * _mktemp_r (struct _reent *, char *);
58 IMPORT_C void _perror_r (struct _reent *, const char *);
59 IMPORT_C int _printf_r (struct _reent *, const char *, ...);
60 IMPORT_C int _putchar_r (struct _reent *, int);
61 IMPORT_C int _puts_r (struct _reent *, const char *);
62 IMPORT_C int _scanf_r (struct _reent *, const char *, ...);
63 IMPORT_C int _sprintf_r (struct _reent *, char *, const char *, ...);
64 IMPORT_C char * _tempnam_r (struct _reent *, char *, char *);
65 IMPORT_C FILE * _tmpfile_r (struct _reent *);
66 IMPORT_C char * _tmpnam_r (struct _reent *, char *);
67 IMPORT_C wchar_t * _wtmpnam_r (struct _reent *, wchar_t *);
68 IMPORT_C int _vfprintf_r (struct _reent *, FILE *, const char *, __e32_va_list);
69 IMPORT_C int _popen3_r (struct _reent *, const char *cmd, const char *mode, char** envp, int fids[3]);
70 IMPORT_C int _wpopen3_r (struct _reent *, const wchar_t *cmd, const wchar_t *mode, wchar_t** envp, int fids[3]);
75 #endif /* _STDIO_H_ */