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, ...)
143#define stdin __vsf_linux_stdin()
144#define stdout __vsf_linux_stdout()
145#define stderr __vsf_linux_stderr()
161# define FILENAME_MAX 128
164#if VSF_LINUX_APPLET_USE_LIBC_STDIO == ENABLED
249# ifndef __VSF_APPLET__
254#if defined(__VSF_APPLET__) && (defined(__VSF_APPLET_LIB__) || defined(__VSF_APPLET_LINUX_LIBC_STDIO_LIB__))\
255 && VSF_APPLET_CFG_ABI_PATCH != ENABLED && VSF_LINUX_APPLET_USE_LIBC_STDIO == ENABLED
257#ifndef VSF_LINUX_APPLET_LIBC_STDIO_VPLT
258# if VSF_LINUX_USE_APPLET == ENABLED
259# define VSF_LINUX_APPLET_LIBC_STDIO_VPLT \
260 ((vsf_linux_libc_stdio_vplt_t *)(VSF_LINUX_APPLET_VPLT->libc_stdio_vplt))
262# define VSF_LINUX_APPLET_LIBC_STDIO_VPLT \
263 ((vsf_linux_libc_stdio_vplt_t *)vsf_vplt((void *)0))
267#define VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(__NAME) \
268 VSF_APPLET_VPLT_ENTRY_FUNC_ENTRY(VSF_LINUX_APPLET_LIBC_STDIO_VPLT, __NAME)
269#define VSF_LINUX_APPLET_LIBC_STDIO_IMP(...) \
270 VSF_APPLET_VPLT_ENTRY_FUNC_IMP(VSF_LINUX_APPLET_LIBC_STDIO_VPLT, __VA_ARGS__)
284VSF_LINUX_APPLET_LIBC_STDIO_IMP(
perror,
void,
const char *str) {
286 VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
perror)(str);
288VSF_LINUX_APPLET_LIBC_STDIO_IMP(
setbuf,
void,
FILE *f,
char *buf) {
290 VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
setbuf)(f, buf);
292VSF_LINUX_APPLET_LIBC_STDIO_IMP(
setbuffer,
void,
FILE *f,
char *buf,
size_t size) {
298 VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
setlinebuf)(f);
300VSF_LINUX_APPLET_LIBC_STDIO_IMP(
setvbuf,
int,
FILE *f,
char *buf,
int mode,
size_t size) {
302 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
setvbuf)(f, buf, mode,
size);
304VSF_LINUX_APPLET_LIBC_STDIO_IMP(
putchar,
int,
int ch) {
306 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
putchar)(ch);
308VSF_LINUX_APPLET_LIBC_STDIO_IMP(
getchar,
int,
void) {
310 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
getchar)();
312VSF_LINUX_APPLET_LIBC_STDIO_IMP(
fgetc,
int,
FILE *f) {
314 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fgetc)(f);
316VSF_LINUX_APPLET_LIBC_STDIO_IMP(
fputc,
int,
int ch,
FILE *f) {
318 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fputc)(ch, f);
320VSF_LINUX_APPLET_LIBC_STDIO_IMP(
getc,
int,
FILE *f) {
322 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
getc)(f);
324VSF_LINUX_APPLET_LIBC_STDIO_IMP(
putc,
int,
int ch,
FILE *f) {
326 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
putc)(ch, f);
328VSF_LINUX_APPLET_LIBC_STDIO_IMP(
ungetc,
int,
int c,
FILE *f) {
330 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
ungetc)(c, f);
332VSF_LINUX_APPLET_LIBC_STDIO_IMP(
puts,
int,
const char *str) {
334 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
puts)(str);
336VSF_LINUX_APPLET_LIBC_STDIO_IMP(
fputs,
int,
const char *str,
FILE *f) {
338 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fputs)(str, f);
340VSF_LINUX_APPLET_LIBC_STDIO_IMP(
fgets,
char *,
char *str,
int n,
FILE *f) {
342 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fgets)(str, n, f);
344VSF_LINUX_APPLET_LIBC_STDIO_IMP(
vscanf,
int,
const char *
format, va_list ap) {
346 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
vscanf)(
format, ap);
348VSF_LINUX_APPLET_LIBC_STDIO_IMP(
vfscanf,
int,
FILE *f,
const char *
format, va_list ap) {
350 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
vfscanf)(f,
format, ap);
352VSF_LINUX_APPLET_LIBC_STDIO_IMP(
vfprintf,
int,
FILE *f,
const char *
format, va_list ap) {
354 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
vfprintf)(f,
format, ap);
356VSF_LINUX_APPLET_LIBC_STDIO_IMP(
vdprintf,
int,
int fd,
const char *
format, va_list ap) {
358 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
vdprintf)(fd,
format, ap);
360VSF_LINUX_APPLET_LIBC_STDIO_IMP(
vprintf,
int,
const char *
format, va_list ap) {
362 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
vprintf)(
format, ap);
364VSF_LINUX_APPLET_LIBC_STDIO_IMP(
fopen,
FILE *,
const char *filename,
const char *mode) {
366 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fopen)(filename, mode);
368VSF_LINUX_APPLET_LIBC_STDIO_IMP(
fdopen,
FILE *,
int fildes,
const char *mode) {
370 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fdopen)(fildes, mode);
372VSF_LINUX_APPLET_LIBC_STDIO_IMP(
freopen,
FILE *,
const char *filename,
const char *mode,
FILE *f) {
374 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
freopen)(filename, mode, f);
376VSF_LINUX_APPLET_LIBC_STDIO_IMP(
fclose,
int,
FILE *f) {
378 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fclose)(f);
380VSF_LINUX_APPLET_LIBC_STDIO_IMP(
fileno,
int,
FILE *f) {
382 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fileno)(f);
384VSF_LINUX_APPLET_LIBC_STDIO_IMP(
fseek,
int,
FILE *f,
long offset,
int fromwhere) {
386 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fseek)(f,
offset, fromwhere);
390 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fseeko)(f,
offset, fromwhere);
394 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fseeko64)(f,
offset, fromwhere);
396VSF_LINUX_APPLET_LIBC_STDIO_IMP(
ftell,
long,
FILE *f) {
398 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
ftell)(f);
402 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
ftello)(f);
406 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
ftello64)(f);
408VSF_LINUX_APPLET_LIBC_STDIO_IMP(
rewind,
void,
FILE *f) {
410 VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
rewind)(f);
414 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fgetpos)(f, pos);
418 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fsetpos)(f, pos);
422 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fgetpos64)(f, pos);
426 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fsetpos64)(f, pos);
428VSF_LINUX_APPLET_LIBC_STDIO_IMP(
fread,
size_t,
void *ptr,
size_t size,
size_t nmemb,
FILE *f) {
430 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fread)(ptr,
size, nmemb, f);
432VSF_LINUX_APPLET_LIBC_STDIO_IMP(
fwrite,
size_t,
const void *ptr,
size_t size,
size_t nmemb,
FILE *f) {
434 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fwrite)(ptr,
size, nmemb, f);
436VSF_LINUX_APPLET_LIBC_STDIO_IMP(
fflush,
int,
FILE *f) {
438 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
fflush)(f);
440VSF_LINUX_APPLET_LIBC_STDIO_IMP(
popen,
FILE *,
const char *command,
const char *
type) {
442 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
popen)(command,
type);
444VSF_LINUX_APPLET_LIBC_STDIO_IMP(
pclose,
int,
FILE *stream) {
446 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
pclose)(stream);
448VSF_LINUX_APPLET_LIBC_STDIO_IMP(
rename,
int,
const char *old_filename,
const char *new_filename) {
450 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
rename)(old_filename, new_filename);
452VSF_LINUX_APPLET_LIBC_STDIO_IMP(
renameat,
int,
int olddirfd,
const char *oldpath,
int newdirfd,
const char *newpath) {
454 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
renameat)(olddirfd, oldpath, newdirfd, newpath);
456VSF_LINUX_APPLET_LIBC_STDIO_IMP(
ferror,
int,
FILE *f) {
458 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
ferror)(f);
460VSF_LINUX_APPLET_LIBC_STDIO_IMP(
clearerr,
void,
FILE *f) {
462 VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
clearerr)(f);
464VSF_LINUX_APPLET_LIBC_STDIO_IMP(
feof,
int,
FILE *f) {
466 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
feof)(f);
468VSF_LINUX_APPLET_LIBC_STDIO_IMP(
vsprintf,
int,
char *str,
const char *
format, va_list ap) {
470 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
vsprintf)(str,
format, ap);
472VSF_LINUX_APPLET_LIBC_STDIO_IMP(
vsnprintf,
int,
char *str,
size_t size,
const char*
format, va_list ap) {
476VSF_LINUX_APPLET_LIBC_STDIO_IMP(
vasprintf,
int,
char **strp,
const char *
format, va_list ap) {
480VSF_LINUX_APPLET_LIBC_STDIO_IMP(
vsscanf,
int,
const char *str,
const char *
format, va_list ap) {
482 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
vsscanf)(str,
format, ap);
484VSF_LINUX_APPLET_LIBC_STDIO_IMP(
remove,
int,
const char *filename) {
486 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
remove)(filename);
488VSF_LINUX_APPLET_LIBC_STDIO_IMP(
tmpfile,
FILE *,
void) {
490 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
tmpfile)();
492VSF_LINUX_APPLET_LIBC_STDIO_IMP(
tmpnam,
char *,
char *str) {
494 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
tmpnam)(str);
496VSF_LINUX_APPLET_LIBC_STDIO_IMP(
getline,
ssize_t,
char **lineptr,
size_t *n,
FILE *f) {
498 return VSF_LINUX_APPLET_LIBC_STDIO_ENTRY(
getline)(lineptr, n, f);
580void perror(
const char *str);
594int puts(
const char *str);
611FILE *
fopen(
const char *filename,
const char *mode);
624size_t fwrite(
const void *ptr,
size_t size,
size_t nmemb,
FILE *f);
634int rename(
const char *old_filename,
const char *new_filename);
635int renameat(
int olddirfd,
const char *oldpath,
int newdirfd,
const char *newpath);
651int remove(
const char *filename);
659static inline int getc_unlocked(
FILE *f) {
662static inline int getchar_unlocked(
void) {
665static inline int putc_unlocked(
int c,
FILE *f){
668static inline int putchar_unlocked(
int c) {
671static inline void clearerr_unlocked(
FILE *f) {
674static inline int feof_unlocked(
FILE *f) {
677static inline int ferror_unlocked(
FILE *f) {
680static inline int fileno_unlocked(
FILE *f) {
683static inline int fflush_unlocked(
FILE *f) {
686static inline int fgetc_unlocked(
FILE *f) {
689static inline int fputc_unlocked(
int ch,
FILE *f) {
692static inline size_t fread_unlocked(
void *ptr,
size_t size,
size_t nmemb,
FILE *f) {
695static inline size_t fwrite_unlocked(
const void *ptr,
size_t size,
size_t nmemb,
FILE *f) {
698static inline int fputs_unlocked(
const char *str,
FILE *f) {
699 return fputs(str, f);
701static inline char * fgets_unlocked(
char *str,
int n,
FILE *f) {
702 return fgets(str, n, f);
704static inline FILE *fopen64(
const char *filename,
const char *mode) {
705 return fopen(filename, mode);
710#if defined(__WIN__) && !defined(__VSF_APPLET__)
712#define _lock_file VSF_LINUX_LIBC_WRAPPER(_lock_file)
713#define _unlock_file VSF_LINUX_LIBC_WRAPPER(_unlock_file)
714#define _get_stream_buffer_pointers VSF_LINUX_LIBC_WRAPPER(_get_stream_buffer_pointers)
715void _lock_file(
FILE *f);
716void _unlock_file(
FILE *f);
717errno_t _get_stream_buffer_pointers(
FILE *f,
char ***base,
char ***ptr,
int **cnt);
725#if __IS_COMPILER_LLVM__
726# 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:455
#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:99
int remove(const char *filename)
Definition vsf_linux_glibc_stdio.c:924
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:808
#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:84
int vscanf(const char *format, va_list ap)
Definition vsf_linux_glibc_stdio.c:746
#define fputs
Definition stdio.h:73
void setbuffer(FILE *f, char *buf, size_t size)
Definition vsf_linux_glibc_stdio.c:95
#define fflush
Definition stdio.h:68
int scanf(const char *format,...)
Definition vsf_linux_glibc_stdio.c:761
#define vdprintf
Definition stdio.h:78
FILE * __vsf_linux_stderr(void)
Definition vsf_linux_glibc_stdio.c:79
#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:1015
int asprintf(char **strp, const char *format,...)
Definition vsf_linux_glibc_stdio.c:469
#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:69
ssize_t getline(char **lineptr, size_t *n, FILE *f)
Definition vsf_linux_glibc_stdio.c:978
#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:210
FILE * __vsf_linux_stdout(void)
Definition vsf_linux_glibc_stdio.c:74
#define fgetpos64
Definition stdio.h:64
#define feof
Definition stdio.h:47
#define putc
Definition stdio.h:44
int FILE
Definition stdio.h:141
#define fgetc
Definition stdio.h:69
#define ferror
Definition stdio.h:40
#define fwrite
Definition stdio.h:66
#define clearerr
Definition stdio.h:41
#define getchar
Definition stdio.h:43
#define getc
Definition stdio.h:42
int sscanf(const char *str, const char *format,...)
Definition simple_sscanf.c:225
#define ftello
Definition stdio.h:59
int pclose(FILE *stream)
Definition vsf_linux_glibc_stdio.c:869
#define fputc
Definition stdio.h:72
#define setvbuf
Definition stdio.h:85
#define ftell
Definition stdio.h:58
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:166
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