This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Add SILENT_NO_TAINT_SUPPORT to S_Internals_V ()
[perl5.git] / nostdio.h
1 /*    nostdio.h
2  *
3  *    Copyright (C) 1996, 2000, 2001, 2005, by Larry Wall and others
4  *
5  *    You may distribute under the terms of either the GNU General Public
6  *    License or the Artistic License, as specified in the README file.
7  *
8  */
9
10 /*
11  * Strong denial of stdio - make all stdio calls (we can think of) errors
12  */
13 /* This is a 1st attempt to stop other include files pulling
14    in real <stdio.h>.
15    A more ambitious set of possible symbols can be found in
16    sfio.h (inside an _cplusplus gard).
17    It is completely pointless as we have already included it ourselves.
18 */
19
20 #if !defined(_STDIO_H) && !defined(FILE) && !defined(_STDIO_INCLUDED) && !defined(__STDIO_LOADED)
21 #define _STDIO_H
22 #define _STDIO_INCLUDED
23 #define __STDIO_LOADED
24 struct _FILE;
25 #define FILE struct _FILE
26 #endif
27
28 #ifndef EBCDIC
29
30 #define _CANNOT "CANNOT"
31
32 #undef clearerr
33 #undef fclose
34 #undef fdopen
35 #undef feof
36 #undef ferror
37 #undef fflush
38 #undef fgetc
39 #undef fgetpos
40 #undef fgets
41 #undef fileno
42 #undef flockfile
43 #undef fopen
44 #undef fprintf
45 #undef fputc
46 #undef fputs
47 #undef fread
48 #undef freopen
49 #undef fscanf
50 #undef fseek
51 #undef fsetpos
52 #undef ftell
53 #undef ftrylockfile
54 #undef funlockfile
55 #undef fwrite
56 #undef getc
57 #undef getc_unlocked
58 #undef getw
59 #undef pclose
60 #undef popen
61 #undef putc
62 #undef putc_unlocked
63 #undef putw
64 #undef rewind
65 #undef setbuf
66 #undef setvbuf
67 #undef stderr
68 #undef stdin
69 #undef stdout
70 #undef tmpfile
71 #undef ungetc
72 #undef vfprintf
73 #undef printf
74
75 #define fprintf    _CANNOT _fprintf_
76 #define printf     _CANNOT _printf_
77 #define stdin      _CANNOT _stdin_
78 #define stdout     _CANNOT _stdout_
79 #define stderr     _CANNOT _stderr_
80 #ifndef OS2
81 #define tmpfile()  _CANNOT _tmpfile_
82 #endif
83 #define fclose(f)  _CANNOT _fclose_
84 #define fflush(f)  _CANNOT _fflush_
85 #define fopen(p,m)  _CANNOT _fopen_
86 #define freopen(p,m,f)  _CANNOT _freopen_
87 #define setbuf(f,b)  _CANNOT _setbuf_
88 #define setvbuf(f,b,x,s)  _CANNOT _setvbuf_
89 #define fscanf  _CANNOT _fscanf_
90 #define vfprintf(f,fmt,a)  _CANNOT _vfprintf_
91 #define fgetc(f)  _CANNOT _fgetc_
92 #define fgets(s,n,f)  _CANNOT _fgets_
93 #define fputc(c,f)  _CANNOT _fputc_
94 #define fputs(s,f)  _CANNOT _fputs_
95 #define getc(f)  _CANNOT _getc_
96 #define putc(c,f)  _CANNOT _putc_
97 #ifndef OS2
98 #define ungetc(c,f)  _CANNOT _ungetc_
99 #endif
100 #define fread(b,s,c,f)  _CANNOT _fread_
101 #define fwrite(b,s,c,f)  _CANNOT _fwrite_
102 #define fgetpos(f,p)  _CANNOT _fgetpos_
103 #define fseek(f,o,w)  _CANNOT _fseek_
104 #define fsetpos(f,p)  _CANNOT _fsetpos_
105 #define ftell(f)  _CANNOT _ftell_
106 #define rewind(f)  _CANNOT _rewind_
107 #define clearerr(f)  _CANNOT _clearerr_
108 #define feof(f)  _CANNOT _feof_
109 #define ferror(f)  _CANNOT _ferror_
110 #define __filbuf(f)  _CANNOT __filbuf_
111 #define __flsbuf(c,f)  _CANNOT __flsbuf_
112 #define _filbuf(f)  _CANNOT _filbuf_
113 #define _flsbuf(c,f)  _CANNOT _flsbuf_
114 #define fdopen(fd,p)  _CANNOT _fdopen_
115 #define fileno(f)  _CANNOT _fileno_
116 #if defined(SFIO_VERSION) && SFIO_VERSION < 20000101L
117 #define flockfile(f)  _CANNOT _flockfile_
118 #define ftrylockfile(f)  _CANNOT _ftrylockfile_
119 #define funlockfile(f)  _CANNOT _funlockfile_
120 #endif
121 #define getc_unlocked(f)  _CANNOT _getc_unlocked_
122 #define putc_unlocked(c,f)  _CANNOT _putc_unlocked_
123 #define popen(c,m)  _CANNOT _popen_
124 #define getw(f)  _CANNOT _getw_
125 #define putw(v,f)  _CANNOT _putw_
126 #ifndef OS2
127 #define pclose(f)  _CANNOT _pclose_
128 #endif
129
130 #endif /*not define EBCDIC */
131
132 /*
133  * ex: set ts=8 sts=4 sw=4 et:
134  */