Changeset 8b863a62 in mainline for uspace/lib/posix/include/posix/stdio.h
- Timestamp:
- 2014-04-16T17:14:06Z (12 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- f857e8b
- Parents:
- dba3e2c (diff), 70b570c (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)links above to see all the changes relative to each parent. - File:
-
- 1 edited
-
uspace/lib/posix/include/posix/stdio.h (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/posix/include/posix/stdio.h
rdba3e2c r8b863a62 37 37 #define POSIX_STDIO_H_ 38 38 39 #ifndef __POSIX_DEF__ 40 #define __POSIX_DEF__(x) x 41 /* DEBUG macro does not belong to POSIX stdio.h. Its unconditional 42 * definition in the native stdio.h causes unexpected behaviour of 43 * applications which uses their own DEBUG macro (e.g. debugging 44 * output is printed even if not desirable). */ 45 #undef DEBUG 46 #endif 47 39 48 #include "stddef.h" 40 49 #include "unistd.h" … … 55 64 #define EOF (-1) 56 65 66 /** Size of buffers used in stdio header. */ 57 67 #define BUFSIZ 4096 58 #define SEEK_SET 0 59 #define SEEK_CUR 1 60 #define SEEK_END 268 69 /** Maximum size in bytes of the longest filename. */ 70 #define FILENAME_MAX 4096 61 71 62 72 typedef struct _IO_FILE FILE; … … 108 118 extern size_t fwrite(const void *, size_t, size_t, FILE *); 109 119 110 extern int fseek(FILE *, off64_t, int);111 120 extern void rewind(FILE *); 112 extern off64_t ftell(FILE *);113 121 extern int feof(FILE *); 114 122 extern int fileno(FILE *); … … 119 127 120 128 extern void setvbuf(FILE *, void *, int, size_t); 121 129 extern void setbuf(FILE *, void *); 122 130 123 131 /* POSIX specific stuff. */ … … 126 134 #undef L_ctermid 127 135 #define L_ctermid PATH_MAX 128 extern char * posix_ctermid(char *s);136 extern char *__POSIX_DEF__(ctermid)(char *s); 129 137 130 138 /* Error Recovery */ 131 extern void posix_clearerr(FILE *stream);139 extern void __POSIX_DEF__(clearerr)(FILE *stream); 132 140 133 141 /* Input/Output */ 134 142 #undef putc 135 143 #define putc fputc 136 extern int posix_fputs(const char *restrict s, FILE *restrict stream);144 extern int __POSIX_DEF__(fputs)(const char *restrict s, FILE *restrict stream); 137 145 #undef getc 138 146 #define getc fgetc 139 extern int posix_ungetc(int c, FILE *stream);140 extern ssize_t posix_getdelim(char **restrict lineptr, size_t *restrict n,147 extern int __POSIX_DEF__(ungetc)(int c, FILE *stream); 148 extern ssize_t __POSIX_DEF__(getdelim)(char **restrict lineptr, size_t *restrict n, 141 149 int delimiter, FILE *restrict stream); 142 extern ssize_t posix_getline(char **restrict lineptr, size_t *restrict n,150 extern ssize_t __POSIX_DEF__(getline)(char **restrict lineptr, size_t *restrict n, 143 151 FILE *restrict stream); 144 152 145 153 /* Opening Streams */ 146 extern FILE * posix_freopen(const char *restrict filename,154 extern FILE *__POSIX_DEF__(freopen)(const char *restrict filename, 147 155 const char *restrict mode, FILE *restrict stream); 148 156 149 157 /* Error Messages */ 150 extern void posix_perror(const char *s);158 extern void __POSIX_DEF__(perror)(const char *s); 151 159 152 160 /* File Positioning */ 153 typedef struct _posix_fpos posix_fpos_t; 154 extern int posix_fsetpos(FILE *stream, const posix_fpos_t *pos); 155 extern int posix_fgetpos(FILE *restrict stream, posix_fpos_t *restrict pos); 156 extern int posix_fseek(FILE *stream, long offset, int whence); 157 extern int posix_fseeko(FILE *stream, posix_off_t offset, int whence); 158 extern long posix_ftell(FILE *stream); 159 extern posix_off_t posix_ftello(FILE *stream); 161 typedef struct { 162 off64_t offset; 163 } __POSIX_DEF__(fpos_t); 164 165 extern int __POSIX_DEF__(fsetpos)(FILE *stream, const __POSIX_DEF__(fpos_t) *pos); 166 extern int __POSIX_DEF__(fgetpos)(FILE *restrict stream, __POSIX_DEF__(fpos_t) *restrict pos); 167 extern int __POSIX_DEF__(fseek)(FILE *stream, long offset, int whence); 168 extern int __POSIX_DEF__(fseeko)(FILE *stream, __POSIX_DEF__(off_t) offset, int whence); 169 extern long __POSIX_DEF__(ftell)(FILE *stream); 170 extern __POSIX_DEF__(off_t) __POSIX_DEF__(ftello)(FILE *stream); 160 171 161 172 /* Flushing Buffers */ 162 extern int posix_fflush(FILE *stream);173 extern int __POSIX_DEF__(fflush)(FILE *stream); 163 174 164 175 /* Formatted Output */ 165 extern int posix_dprintf(int fildes, const char *restrict format, ...)176 extern int __POSIX_DEF__(dprintf)(int fildes, const char *restrict format, ...) 166 177 PRINTF_ATTRIBUTE(2, 3); 167 extern int posix_vdprintf(int fildes, const char *restrict format, va_list ap);168 extern int posix_sprintf(char *restrict s, const char *restrict format, ...)178 extern int __POSIX_DEF__(vdprintf)(int fildes, const char *restrict format, va_list ap); 179 extern int __POSIX_DEF__(sprintf)(char *restrict s, const char *restrict format, ...) 169 180 PRINTF_ATTRIBUTE(2, 3); 170 extern int posix_vsprintf(char *restrict s, const char *restrict format, va_list ap);181 extern int __POSIX_DEF__(vsprintf)(char *restrict s, const char *restrict format, va_list ap); 171 182 172 183 /* Formatted Input */ 173 extern int posix_fscanf(184 extern int __POSIX_DEF__(fscanf)( 174 185 FILE *restrict stream, const char *restrict format, ...); 175 extern int posix_vfscanf(186 extern int __POSIX_DEF__(vfscanf)( 176 187 FILE *restrict stream, const char *restrict format, va_list arg); 177 extern int posix_scanf(const char *restrict format, ...);178 extern int posix_vscanf(const char *restrict format, va_list arg);179 extern int posix_sscanf(188 extern int __POSIX_DEF__(scanf)(const char *restrict format, ...); 189 extern int __POSIX_DEF__(vscanf)(const char *restrict format, va_list arg); 190 extern int __POSIX_DEF__(sscanf)( 180 191 const char *restrict s, const char *restrict format, ...); 181 extern int posix_vsscanf(192 extern int __POSIX_DEF__(vsscanf)( 182 193 const char *restrict s, const char *restrict format, va_list arg); 183 194 184 195 /* File Locking */ 185 extern void posix_flockfile(FILE *file);186 extern int posix_ftrylockfile(FILE *file);187 extern void posix_funlockfile(FILE *file);188 extern int posix_getc_unlocked(FILE *stream);189 extern int posix_getchar_unlocked(void);190 extern int posix_putc_unlocked(int c, FILE *stream);191 extern int posix_putchar_unlocked(int c);196 extern void __POSIX_DEF__(flockfile)(FILE *file); 197 extern int __POSIX_DEF__(ftrylockfile)(FILE *file); 198 extern void __POSIX_DEF__(funlockfile)(FILE *file); 199 extern int __POSIX_DEF__(getc_unlocked)(FILE *stream); 200 extern int __POSIX_DEF__(getchar_unlocked)(void); 201 extern int __POSIX_DEF__(putc_unlocked)(int c, FILE *stream); 202 extern int __POSIX_DEF__(putchar_unlocked)(int c); 192 203 193 204 /* Deleting Files */ 194 extern int posix_remove(const char *path);205 extern int __POSIX_DEF__(remove)(const char *path); 195 206 196 207 /* Renaming Files */ 197 extern int posix_rename(const char *old, const char *new);208 extern int __POSIX_DEF__(rename)(const char *oldname, const char *newname); 198 209 199 210 /* Temporary Files */ 200 211 #undef L_tmpnam 201 212 #define L_tmpnam PATH_MAX 202 extern char *posix_tmpnam(char *s); 203 extern char *posix_tempnam(const char *dir, const char *pfx); 204 extern FILE *posix_tmpfile(void); 205 206 #ifndef LIBPOSIX_INTERNAL 207 /* DEBUG macro does not belong to POSIX stdio.h. Its unconditional 208 * definition in the native stdio.h causes unexpected behaviour of 209 * applications which uses their own DEBUG macro (e.g. debugging 210 * output is printed even if not desirable). */ 211 #undef DEBUG 212 213 #define ctermid posix_ctermid 214 215 #define clearerr posix_clearerr 216 217 #define fputs posix_fputs 218 #define ungetc posix_ungetc 219 #define getdelim posix_getdelim 220 #define getline posix_getline 221 222 #define freopen posix_freopen 223 224 #define perror posix_perror 225 226 #define fpos_t posix_fpos_t 227 #define fsetpos posix_fsetpos 228 #define fgetpos posix_fgetpos 229 #define fseek posix_fseek 230 #define fseeko posix_fseeko 231 #define ftell posix_ftell 232 #define ftello posix_ftello 233 234 #define fflush posix_fflush 235 236 #define dprintf posix_dprintf 237 #define vdprintf posix_vdprintf 238 #define sprintf posix_sprintf 239 #define vsprintf posix_vsprintf 240 241 #define fscanf posix_fscanf 242 #define vfscanf posix_vfscanf 243 #define vscanf posix_vscanf 244 #define scanf posix_scanf 245 #define sscanf posix_sscanf 246 #define vsscanf posix_vsscanf 247 248 #define flockfile posix_flockfile 249 #define ftrylockfile posix_ftrylockfile 250 #define funlockfile posix_funlockfile 251 252 #define getc_unlocked posix_getc_unlocked 253 #define getchar_unlocked posix_getchar_unlocked 254 #define putc_unlocked posix_putc_unlocked 255 #define putchar_unlocked posix_putchar_unlocked 256 257 #define remove posix_remove 258 259 #define rename posix_rename 260 261 #define tmpnam posix_tmpnam 262 #define tempnam posix_tempnam 263 #define tmpfile posix_tmpfile 264 #endif 213 extern char *__POSIX_DEF__(tmpnam)(char *s); 214 extern char *__POSIX_DEF__(tempnam)(const char *dir, const char *pfx); 215 extern FILE *__POSIX_DEF__(tmpfile)(void); 216 265 217 266 218 #endif /* POSIX_STDIO_H_ */
Note:
See TracChangeset
for help on using the changeset viewer.
