1#ifndef __SIMPLE_LIBC_STDIO_H__
2#define __SIMPLE_LIBC_STDIO_H__
6#if VSF_LINUX_CFG_RELATIVE_PATH == ENABLED && VSF_LINUX_USE_SIMPLE_LIBC == ENABLED
9# include "../sys/types.h"
24#define __USE_LOCAL_STDBOOL__
27#if __IS_COMPILER_LLVM__
28# pragma clang diagnostic push
29# pragma clang diagnostic ignored "-Wbuiltin-requires-header"
30# pragma clang diagnostic ignored "-Wincompatible-library-redeclaration"
31# pragma clang diagnostic ignored "-Winconsistent-dllimport"
39#if VSF_LINUX_LIBC_CFG_WRAPPER == ENABLED
40#define ferror VSF_LINUX_LIBC_WRAPPER(ferror)
41#define clearerr VSF_LINUX_LIBC_WRAPPER(clearerr)
42#define getc VSF_LINUX_LIBC_WRAPPER(getc)
43#define getchar VSF_LINUX_LIBC_WRAPPER(getchar)
44#define putc VSF_LINUX_LIBC_WRAPPER(putc)
45#define putchar VSF_LINUX_LIBC_WRAPPER(putchar)
46#define ungetc VSF_LINUX_LIBC_WRAPPER(ungetc)
47#define feof VSF_LINUX_LIBC_WRAPPER(feof)
50#define fopen VSF_LINUX_LIBC_WRAPPER(fopen)
51#define fdopen VSF_LINUX_LIBC_WRAPPER(fdopen)
52#define freopen VSF_LINUX_LIBC_WRAPPER(freopen)
53#define fclose VSF_LINUX_LIBC_WRAPPER(fclose)
54#define fileno VSF_LINUX_LIBC_WRAPPER(fileno)
55#define fseek VSF_LINUX_LIBC_WRAPPER(fseek)
56#define fseeko VSF_LINUX_LIBC_WRAPPER(fseeko)
57#define fseeko64 VSF_LINUX_LIBC_WRAPPER(fseeko64)
58#define ftell VSF_LINUX_LIBC_WRAPPER(ftell)
59#define ftello VSF_LINUX_LIBC_WRAPPER(ftello)
60#define ftello64 VSF_LINUX_LIBC_WRAPPER(ftello64)
61#define rewind VSF_LINUX_LIBC_WRAPPER(rewind)
62#define fgetpos VSF_LINUX_LIBC_WRAPPER(fgetpos)
63#define fsetpos VSF_LINUX_LIBC_WRAPPER(fsetpos)
64#define fgetpos64 VSF_LINUX_LIBC_WRAPPER(fgetpos64)
65#define fsetpos64 VSF_LINUX_LIBC_WRAPPER(fsetpos64)
66#define fwrite VSF_LINUX_LIBC_WRAPPER(fwrite)
67#define fread VSF_LINUX_LIBC_WRAPPER(fread)
68#define fflush VSF_LINUX_LIBC_WRAPPER(fflush)
69#define fgetc VSF_LINUX_LIBC_WRAPPER(fgetc)
70#define fgets VSF_LINUX_LIBC_WRAPPER(fgets)
71#define gets VSF_LINUX_LIBC_WRAPPER(gets)
72#define fputc VSF_LINUX_LIBC_WRAPPER(fputc)
73#define fputs VSF_LINUX_LIBC_WRAPPER(fputs)
74#define puts VSF_LINUX_LIBC_WRAPPER(puts)
75#define printf VSF_LINUX_LIBC_WRAPPER(printf)
76#define vprintf VSF_LINUX_LIBC_WRAPPER(vprintf)
77#define vfprintf VSF_LINUX_LIBC_WRAPPER(vfprintf)
78#define vdprintf VSF_LINUX_LIBC_WRAPPER(vdprintf)
79#define fprintf VSF_LINUX_LIBC_WRAPPER(fprintf)
80#define dprintf VSF_LINUX_LIBC_WRAPPER(dprintf)
81#define fiprintf VSF_LINUX_LIBC_WRAPPER(fiprintf)
82#define fscanf VSF_LINUX_LIBC_WRAPPER(fscanf)
83#define vfscanf VSF_LINUX_LIBC_WRAPPER(vfscanf)
84#define perror VSF_LINUX_LIBC_WRAPPER(perror)
85#define setvbuf VSF_LINUX_LIBC_WRAPPER(setvbuf)
86#define rename VSF_LINUX_LIBC_WRAPPER(rename)
87#define renameat VSF_LINUX_LIBC_WRAPPER(renameat)
89#define tmpfile VSF_LINUX_LIBC_WRAPPER(tmpfile)
90#define tmpnam VSF_LINUX_LIBC_WRAPPER(tmpnam)
94#if __VSF_LINUX_LIBC_STDIO_WRAPPER_SNPRINTF == ENABLED
95# define vsnprintf VSF_LINUX_LIBC_WRAPPER(vsnprintf)
96# define snprintf VSF_LINUX_LIBC_WRAPPER(snprintf)
99#if defined(_GNU_SOURCE)
100#define getline VSF_LINUX_LIBC_WRAPPER(getline)
102#elif defined(__WIN__) && !defined(__VSF_APPLET__)
104#define fopen VSF_LINUX_LIBC_WRAPPER(fopen)
105#define freopen VSF_LINUX_LIBC_WRAPPER(freopen)
106#define fclose VSF_LINUX_LIBC_WRAPPER(fclose)
107#define fseek VSF_LINUX_LIBC_WRAPPER(fseek)
108#define ftell VSF_LINUX_LIBC_WRAPPER(ftell)
109#define fflush VSF_LINUX_LIBC_WRAPPER(fflush)
110#define putc VSF_LINUX_LIBC_WRAPPER(putc)
111#define putchar VSF_LINUX_LIBC_WRAPPER(putchar)
112#define fputc VSF_LINUX_LIBC_WRAPPER(fputc)
113#define fprintf VSF_LINUX_LIBC_WRAPPER(fprintf)
114#define vsnprintf VSF_LINUX_LIBC_WRAPPER(vsnprintf)
115#define snprintf VSF_LINUX_LIBC_WRAPPER(snprintf)
122#if __IS_COMPILER_IAR__
124# define _FPOSOFF(__FPOS) (__FPOS)
128# define sprintf_s snprintf
129# define _scprintf printf
131static inline unsigned char swprintf_s(
const wchar_t *c, ...)
135static inline unsigned char _scwprintf(
const wchar_t *c, ...)
141#ifndef __VSF_STDIO_INTERNAL_FILE_NAME
142# define __VSF_STDIO_INTERNAL_FILE_NAME __VSF_STDIO_FILE
150#define stdin __vsf_linux_stdin()
151#define stdout __vsf_linux_stdout()
152#define stderr __vsf_linux_stderr()
168# define FILENAME_MAX 128
171#if VSF_LINUX_APPLET_USE_LIBC_STDIO == ENABLED
256# ifndef __VSF_APPLET__
261#if defined(__VSF_APPLET__) && (defined(__VSF_APPLET_LIB__) || defined(__VSF_APPLET_LINUX_LIBC_STDIO_LIB__))\
262 && VSF_APPLET_CFG_ABI_PATCH != ENABLED && VSF_LINUX_APPLET_USE_LIBC_STDIO == ENABLED
264#ifndef VSF_LINUX_APPLET_LIBC_STDIO_VPLT
265# if VSF_LINUX_USE_APPLET == ENABLED
266# define VSF_LINUX_APPLET_LIBC_STDIO_VPLT \
267 ((vsf_linux_libc_stdio_vplt_t *)(VSF_LINUX_APPLET_VPLT->libc_stdio_vplt))
269# define VSF_LINUX_APPLET_LIBC_STDIO_VPLT \
270 ((vsf_linux_libc_stdio_vplt_t *)vsf_vplt((void *)0))
274#define VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(__NAME) \
275 VSF_APPLET_VPLT_ENTRY_FUNC_ENTRY(VSF_LINUX_APPLET_LIBC_STDIO_VPLT, __NAME)
276#define VSF_LINUX_APPLET_LIBC_STDIO_IMP(...) \
277 VSF_APPLET_VPLT_ENTRY_FUNC_IMP(VSF_LINUX_APPLET_LIBC_STDIO_VPLT, __VA_ARGS__)
291VSF_LINUX_APPLET_LIBC_STDIO_IMP(
perror,
void,
const char *str) {
293 VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
perror)(str);
295VSF_LINUX_APPLET_LIBC_STDIO_IMP(
setbuf,
void,
FILE *f,
char *buf) {
297 VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
setbuf)(f, buf);
299VSF_LINUX_APPLET_LIBC_STDIO_IMP(
setbuffer,
void,
FILE *f,
char *buf,
size_t size) {
305 VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
setlinebuf)(f);
307VSF_LINUX_APPLET_LIBC_STDIO_IMP(
setvbuf,
int,
FILE *f,
char *buf,
int mode,
size_t size) {
309 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
setvbuf)(f, buf, mode,
size);
311VSF_LINUX_APPLET_LIBC_STDIO_IMP(
putchar,
int,
int ch) {
313 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
putchar)(ch);
315VSF_LINUX_APPLET_LIBC_STDIO_IMP(
getchar,
int,
void) {
317 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
getchar)();
319VSF_LINUX_APPLET_LIBC_STDIO_IMP(
fgetc,
int,
FILE *f) {
321 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fgetc)(f);
323VSF_LINUX_APPLET_LIBC_STDIO_IMP(
fputc,
int,
int ch,
FILE *f) {
325 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fputc)(ch, f);
327VSF_LINUX_APPLET_LIBC_STDIO_IMP(
getc,
int,
FILE *f) {
329 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
getc)(f);
331VSF_LINUX_APPLET_LIBC_STDIO_IMP(
putc,
int,
int ch,
FILE *f) {
333 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
putc)(ch, f);
335VSF_LINUX_APPLET_LIBC_STDIO_IMP(
ungetc,
int,
int c,
FILE *f) {
337 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
ungetc)(c, f);
339VSF_LINUX_APPLET_LIBC_STDIO_IMP(
puts,
int,
const char *str) {
341 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
puts)(str);
343VSF_LINUX_APPLET_LIBC_STDIO_IMP(
fputs,
int,
const char *str,
FILE *f) {
345 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fputs)(str, f);
347VSF_LINUX_APPLET_LIBC_STDIO_IMP(
fgets,
char *,
char *str,
int n,
FILE *f) {
349 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fgets)(str, n, f);
351VSF_LINUX_APPLET_LIBC_STDIO_IMP(
vscanf,
int,
const char *
format, va_list ap) {
353 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
vscanf)(
format, ap);
355VSF_LINUX_APPLET_LIBC_STDIO_IMP(
vfscanf,
int,
FILE *f,
const char *
format, va_list ap) {
357 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
vfscanf)(f,
format, ap);
359VSF_LINUX_APPLET_LIBC_STDIO_IMP(
vfprintf,
int,
FILE *f,
const char *
format, va_list ap) {
361 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
vfprintf)(f,
format, ap);
363VSF_LINUX_APPLET_LIBC_STDIO_IMP(
vdprintf,
int,
int fd,
const char *
format, va_list ap) {
365 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
vdprintf)(fd,
format, ap);
367VSF_LINUX_APPLET_LIBC_STDIO_IMP(
vprintf,
int,
const char *
format, va_list ap) {
369 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
vprintf)(
format, ap);
371VSF_LINUX_APPLET_LIBC_STDIO_IMP(
fopen,
FILE *,
const char *filename,
const char *mode) {
373 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fopen)(filename, mode);
375VSF_LINUX_APPLET_LIBC_STDIO_IMP(
fdopen,
FILE *,
int fildes,
const char *mode) {
377 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fdopen)(fildes, mode);
379VSF_LINUX_APPLET_LIBC_STDIO_IMP(
freopen,
FILE *,
const char *filename,
const char *mode,
FILE *f) {
381 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
freopen)(filename, mode, f);
383VSF_LINUX_APPLET_LIBC_STDIO_IMP(
fclose,
int,
FILE *f) {
385 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fclose)(f);
387VSF_LINUX_APPLET_LIBC_STDIO_IMP(
fileno,
int,
FILE *f) {
389 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fileno)(f);
391VSF_LINUX_APPLET_LIBC_STDIO_IMP(
fseek,
int,
FILE *f,
long offset,
int fromwhere) {
393 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fseek)(f,
offset, fromwhere);
397 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fseeko)(f,
offset, fromwhere);
401 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fseeko64)(f,
offset, fromwhere);
403VSF_LINUX_APPLET_LIBC_STDIO_IMP(
ftell,
long,
FILE *f) {
405 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
ftell)(f);
409 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
ftello)(f);
413 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
ftello64)(f);
415VSF_LINUX_APPLET_LIBC_STDIO_IMP(
rewind,
void,
FILE *f) {
417 VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
rewind)(f);
421 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fgetpos)(f, pos);
425 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fsetpos)(f, pos);
429 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fgetpos64)(f, pos);
433 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fsetpos64)(f, pos);
435VSF_LINUX_APPLET_LIBC_STDIO_IMP(
fread,
size_t,
void *ptr,
size_t size,
size_t nmemb,
FILE *f) {
437 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fread)(ptr,
size, nmemb, f);
439VSF_LINUX_APPLET_LIBC_STDIO_IMP(
fwrite,
size_t,
const void *ptr,
size_t size,
size_t nmemb,
FILE *f) {
441 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fwrite)(ptr,
size, nmemb, f);
443VSF_LINUX_APPLET_LIBC_STDIO_IMP(
fflush,
int,
FILE *f) {
445 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fflush)(f);
447VSF_LINUX_APPLET_LIBC_STDIO_IMP(
popen,
FILE *,
const char *command,
const char *
type) {
449 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
popen)(command,
type);
451VSF_LINUX_APPLET_LIBC_STDIO_IMP(
pclose,
int,
FILE *stream) {
453 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
pclose)(stream);
455VSF_LINUX_APPLET_LIBC_STDIO_IMP(
rename,
int,
const char *old_filename,
const char *new_filename) {
457 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
rename)(old_filename, new_filename);
459VSF_LINUX_APPLET_LIBC_STDIO_IMP(
renameat,
int,
int olddirfd,
const char *oldpath,
int newdirfd,
const char *newpath) {
461 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
renameat)(olddirfd, oldpath, newdirfd, newpath);
463VSF_LINUX_APPLET_LIBC_STDIO_IMP(
ferror,
int,
FILE *f) {
465 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
ferror)(f);
467VSF_LINUX_APPLET_LIBC_STDIO_IMP(
clearerr,
void,
FILE *f) {
469 VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
clearerr)(f);
471VSF_LINUX_APPLET_LIBC_STDIO_IMP(
feof,
int,
FILE *f) {
473 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
feof)(f);
475VSF_LINUX_APPLET_LIBC_STDIO_IMP(
vsprintf,
int,
char *str,
const char *
format, va_list ap) {
477 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
vsprintf)(str,
format, ap);
479VSF_LINUX_APPLET_LIBC_STDIO_IMP(
vsnprintf,
int,
char *str,
size_t size,
const char*
format, va_list ap) {
483VSF_LINUX_APPLET_LIBC_STDIO_IMP(
vasprintf,
int,
char **strp,
const char *
format, va_list ap) {
487VSF_LINUX_APPLET_LIBC_STDIO_IMP(
vsscanf,
int,
const char *str,
const char *
format, va_list ap) {
489 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
vsscanf)(str,
format, ap);
491VSF_LINUX_APPLET_LIBC_STDIO_IMP(
remove,
int,
const char *filename) {
493 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
remove)(filename);
495VSF_LINUX_APPLET_LIBC_STDIO_IMP(
tmpfile,
FILE *,
void) {
497 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
tmpfile)();
499VSF_LINUX_APPLET_LIBC_STDIO_IMP(
tmpnam,
char *,
char *str) {
501 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
tmpnam)(str);
503VSF_LINUX_APPLET_LIBC_STDIO_IMP(
getline,
ssize_t,
char **lineptr,
size_t *n,
FILE *f) {
505 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
getline)(lineptr, n, f);
587void perror(
const char *str);
601int puts(
const char *str);
618FILE *
fopen(
const char *filename,
const char *mode);
631size_t fwrite(
const void *ptr,
size_t size,
size_t nmemb,
FILE *f);
641int rename(
const char *old_filename,
const char *new_filename);
642int renameat(
int olddirfd,
const char *oldpath,
int newdirfd,
const char *newpath);
658int remove(
const char *filename);
666static inline int getc_unlocked(
FILE *f) {
669static inline int getchar_unlocked(
void) {
672static inline int putc_unlocked(
int c,
FILE *f){
675static inline int putchar_unlocked(
int c) {
678static inline void clearerr_unlocked(
FILE *f) {
681static inline int feof_unlocked(
FILE *f) {
684static inline int ferror_unlocked(
FILE *f) {
687static inline int fileno_unlocked(
FILE *f) {
690static inline int fflush_unlocked(
FILE *f) {
693static inline int fgetc_unlocked(
FILE *f) {
696static inline int fputc_unlocked(
int ch,
FILE *f) {
699static inline size_t fread_unlocked(
void *ptr,
size_t size,
size_t nmemb,
FILE *f) {
702static inline size_t fwrite_unlocked(
const void *ptr,
size_t size,
size_t nmemb,
FILE *f) {
705static inline int fputs_unlocked(
const char *str,
FILE *f) {
706 return fputs(str, f);
708static inline char * fgets_unlocked(
char *str,
int n,
FILE *f) {
709 return fgets(str, n, f);
711static inline FILE *fopen64(
const char *filename,
const char *mode) {
712 return fopen(filename, mode);
717#if defined(__WIN__) && !defined(__VSF_APPLET__)
719#define _lock_file VSF_LINUX_LIBC_WRAPPER(_lock_file)
720#define _unlock_file VSF_LINUX_LIBC_WRAPPER(_unlock_file)
721#define _get_stream_buffer_pointers VSF_LINUX_LIBC_WRAPPER(_get_stream_buffer_pointers)
722void _lock_file(
FILE *f);
723void _unlock_file(
FILE *f);
724errno_t _get_stream_buffer_pointers(
FILE *f,
char ***base,
char ***ptr,
int **cnt);
732#if __IS_COMPILER_LLVM__
733# pragma clang diagnostic pop
long long off64_t
Definition types.h:97
int ssize_t
Definition types.h:68
long off_t
Definition types.h:95
unsigned long long uint64_t
Definition stdint.h:11
#define vsnprintf
Definition stdio.h:95
#define fopen
Definition stdio.h:50
int vasprintf(char **strp, const char *format, va_list ap)
Definition vsf_linux_glibc_stdio.c:458
#define ftello64
Definition stdio.h:60
#define dprintf
Definition stdio.h:80
#define fread
Definition stdio.h:67
#define tmpnam
Definition stdio.h:90
#define fclose
Definition stdio.h:53
#define fseeko
Definition stdio.h:56
#define vprintf
Definition stdio.h:76
#define ungetc
Definition stdio.h:46
#define fileno
Definition stdio.h:54
void setlinebuf(FILE *f)
Definition vsf_linux_glibc_stdio.c:102
int remove(const char *filename)
Definition vsf_linux_glibc_stdio.c:927
int sprintf(char *str, const char *format,...)
Definition simple_sprintf.c:682
FILE * popen(const char *command, const char *type)
Definition vsf_linux_glibc_stdio.c:811
#define printf
Definition stdio.h:75
#define fscanf
Definition stdio.h:82
#define fiprintf
Definition stdio.h:81
void setbuf(FILE *f, char *buf)
Definition vsf_linux_glibc_stdio.c:87
int vscanf(const char *format, va_list ap)
Definition vsf_linux_glibc_stdio.c:749
#define fputs
Definition stdio.h:73
void setbuffer(FILE *f, char *buf, size_t size)
Definition vsf_linux_glibc_stdio.c:98
#define fflush
Definition stdio.h:68
int scanf(const char *format,...)
Definition vsf_linux_glibc_stdio.c:764
#define vdprintf
Definition stdio.h:78
FILE * __vsf_linux_stderr(void)
Definition vsf_linux_glibc_stdio.c:82
#define freopen
Definition stdio.h:52
#define putchar
Definition stdio.h:45
#define fsetpos64
Definition stdio.h:65
__VSF_VPLT_DECORATOR__ vsf_linux_libc_stdio_vplt_t vsf_linux_libc_stdio_vplt
Definition vsf_linux_glibc_stdio.c:1018
int asprintf(char **strp, const char *format,...)
Definition vsf_linux_glibc_stdio.c:472
#define puts
Definition stdio.h:74
#define fsetpos
Definition stdio.h:63
#define rewind
Definition stdio.h:61
#define tmpfile
Definition stdio.h:89
FILE * __vsf_linux_stdin(void)
Definition vsf_linux_glibc_stdio.c:72
ssize_t getline(char **lineptr, size_t *n, FILE *f)
Definition vsf_linux_glibc_stdio.c:981
#define fseek
Definition stdio.h:55
#define vfscanf
Definition stdio.h:83
#define vfprintf
Definition stdio.h:77
#define perror
Definition stdio.h:84
#define rename
Definition stdio.h:86
#define renameat
Definition stdio.h:87
#define fgetpos
Definition stdio.h:62
#define snprintf
Definition stdio.h:96
#define fgets
Definition stdio.h:70
#define fdopen
Definition stdio.h:51
off64_t fpos64_t
Definition stdio.h:119
int vsprintf(char *str, const char *format, va_list ap)
Definition simple_sprintf.c:673
#define fprintf
Definition stdio.h:79
off64_t fpos_t
Definition stdio.h:118
#define fseeko64
Definition stdio.h:57
int vsscanf(const char *str, const char *format, va_list ap)
Definition simple_sscanf.c:211
FILE * __vsf_linux_stdout(void)
Definition vsf_linux_glibc_stdio.c:77
#define fgetpos64
Definition stdio.h:64
#define feof
Definition stdio.h:47
#define putc
Definition stdio.h:44
#define fgetc
Definition stdio.h:69
#define ferror
Definition stdio.h:40
#define fwrite
Definition stdio.h:66
#define clearerr
Definition stdio.h:41
struct __VSF_STDIO_INTERNAL_FILE_NAME FILE
#define getchar
Definition stdio.h:43
#define getc
Definition stdio.h:42
int sscanf(const char *str, const char *format,...)
Definition simple_sscanf.c:226
#define ftello
Definition stdio.h:59
int pclose(FILE *stream)
Definition vsf_linux_glibc_stdio.c:872
#define fputc
Definition stdio.h:72
#define setvbuf
Definition stdio.h:85
#define ftell
Definition stdio.h:58
int fd
Definition stdio.h:146
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(fsetpos)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(vsnprintf)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(setlinebuf)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(setbuf)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(rewind)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(asprintf)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(rename)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(printf)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(puts)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(vasprintf)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(freopen)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(__vsf_linux_stderr)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(ftello64)
vsf_vplt_info_t info
Definition stdio.h:173
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(fgetpos64)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(getline)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(fwrite)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(setbuffer)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(vdprintf)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(fgetc)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(ferror)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(sprintf)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(getchar)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(tmpfile)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(dprintf)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(fseeko64)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(perror)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(scanf)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(fgets)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(fdopen)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(remove)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(vfscanf)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(fileno)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(vscanf)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(setvbuf)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(getc)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(vsscanf)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(putchar)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(fgetpos)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(sscanf)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(fopen)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(fseeko)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(tmpnam)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(fclose)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(ftell)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(ungetc)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(fflush)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(snprintf)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(fputc)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(vprintf)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(vfprintf)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(ftello)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(popen)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(fprintf)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(renameat)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(pclose)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(fscanf)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(fputs)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(vsprintf)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(clearerr)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(feof)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(fread)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(putc)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(__vsf_linux_stdout)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(fsetpos64)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(fseek)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(__vsf_linux_stdin)
vk_av_control_type_t type
Definition vsf_audio.h:170
#define __VSF_VPLT_DECORATOR__
Definition vsf_cfg.h:93
#define VSF_APPLET_VPLT_ENTRY_FUNC_TRACE()
Definition vsf_cfg.h:165
#define VSF_APPLET_VPLT_FUNC_DECORATOR(__NAME)
Definition vsf_linux_applet_lib.c:1
uint64_t offset
Definition vsf_memfs.h:49
uint32_t size
Definition vsf_memfs.h:50