Static Value-Flow Analysis
Loading...
Searching...
No Matches
extapi.c
Go to the documentation of this file.
1#include <stddef.h>
2
3// Ensure NULL is always defined (but don't redefine)
4#ifndef NULL
5# define NULL ((void *)0)
6#endif
7
8/*
9 Functions with __attribute__((annotate("XXX"))) will be handle by SVF specifcially.
10 Their logical behaviours can't be described by C/C++ language. For example, "malloc()" functionality is to alloc an object to it's return value.
11
12 The description of methodProperties is as follows:
13
14 ALLOC_HEAP_RET, // returns a pointer to a newly allocated heap object
15 ALLOC_HEAP_ARGi // stores a pointer to an allocated object in *argi
16 ALLOC_STACK_RET, // returns a pointer to a newly allocated stack object
17 REALLOC_HEAP_RET,
18 MEMSET, // memcpy() operations
19 MEMCPY, // memset() operations
20 OVERWRITE, // svf function overwrite app function
21 STORE_TOP:Argi+, // store nondeterministic top values through argument i and following arguments
22*/
23__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0")))
24void *malloc(unsigned long size)
25{
26 return NULL;
27}
28
29__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
30void *fopen(const char *voidname, const char *mode)
31{
32 return NULL;
33}
34
35__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
36void *fopen64(const char *voidname, const char *mode)
37{
38 return NULL;
39}
40
41__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
42void *fdopen(int fd, const char *mode)
43{
44 return NULL;
45}
46
47__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
48struct dirent64 *readdir64(void *dirp)
49{
50 return NULL;
51}
52
53__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
54void *tmpvoid64(void)
55{
56 return NULL;
57}
58
59__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0*Arg1")))
60void *calloc(unsigned long nitems, unsigned long size)
61{
62 return NULL;
63}
64
65__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0")))
66void *zmalloc(unsigned long size)
67{
68 return NULL;
69}
70
71__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
72void *gzdopen(int fd, const char *mode)
73{
74 return NULL;
75}
76
77__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
78void *iconv_open(const char *tocode, const char *fromcode)
79{
80 return NULL;
81}
82
83__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0")))
84void *lalloc(unsigned long size, int a)
85{
86 return NULL;
87}
88
89__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0")))
90void *lalloc_clear(unsigned long size, int a)
91{
92 return NULL;
93}
94
95__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
96long *nhalloc(unsigned int a, const char *b, int c)
97{
98 return NULL;
99}
100
101__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0")))
102void *oballoc(unsigned long size)
103{
104 return NULL;
105}
106
107__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
108void *popen(const char *command, const char *type)
109{
110 return NULL;
111}
112
113__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
114void *pthread_getspecific(const char *a, const char *b)
115{
116 return NULL;
117}
118
119__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
120struct dirent *readdir(void *dirp)
121{
122 return NULL;
123}
124
125__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0*Arg1")))
126void* safe_calloc(unsigned nelem, unsigned elsize)
127{
128 return NULL;
129}
130
131__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0")))
132void* safe_malloc(unsigned long size)
133{
134 return NULL;
135}
136
137__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0*Arg1")))
138char* safecalloc(int a, int b)
139{
140 return NULL;
141}
142
143__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0")))
144char* safemalloc(int a, int b)
145{
146 return NULL;
147}
148
149__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
150void *setmntent(const char *voidname, const char *type)
151{
152 return NULL;
153}
154
155__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
156void *shmat(int shmid, const void *shmaddr, int shmflg)
157{
158 return NULL;
159}
160
161__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
162void* __sysv_signal(int a, void *b)
163{
164 return NULL;
165}
166
167__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
168void (*signal(int sig, void (*func)(int)))(int)
169{
170 return NULL;
171}
172
173__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
174char *tempnam(const char *dir, const char *pfx)
175{
176 return NULL;
177}
178
179__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
180void *tmpvoid(void)
181{
182 return NULL;
183}
184
185__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
186void* xcalloc(unsigned long size1, unsigned long size2)
187{
188 return NULL;
189}
190
191__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0")))
192void* xmalloc(unsigned long size)
193{
194 return NULL;
195}
196
197__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0")))
198void *__cxa_allocate_exception(unsigned long size)
199{
200 return NULL;
201}
202
203__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg1")))
204void* aligned_alloc(unsigned long size1, unsigned long size2)
205{
206 return NULL;
207}
208
209__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg1")))
210void* memalign(unsigned long size1, unsigned long size2)
211{
212 return NULL;
213}
214
215__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0")))
216void *valloc(unsigned long size)
217{
218 return NULL;
219}
220
221__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0")))
222void *pvalloc(unsigned long size)
223{
224 return NULL;
225}
226
227__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg1")))
228void *mmap64(void *addr, unsigned long len, int prot, int flags, int fildes, long off)
229{
230 return NULL;
231}
232
233__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
234char *XSetLocaleModifiers(char *a)
235{
236 return NULL;
237}
238
239__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
240char * __strdup(const char * string)
241{
242 return NULL;
243}
244
245__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
246char *crypt(const char *key, const char *salt)
247{
248 return NULL;
249}
250
251__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
252char *dlerror(void)
253{
254 return NULL;
255}
256
257__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
258void *dlopen(const char *voidname, int flags)
259{
260 return NULL;
261}
262
263__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
264const char *gai_strerror(int errcode)
265{
266 return NULL;
267}
268
269__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
270const char *gcry_cipher_algo_name(int errcode)
271{
272 return NULL;
273}
274
275__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
276const char *svfgcry_md_algo_name_(int errcode)
277{
278 return NULL;
279}
280
281__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
282char *getlogin(void)
283{
284 return NULL;
285}
286
287__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
288char *getpass(const char *prompt)
289{
290 return NULL;
291}
292
293__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
294const char * gnutls_strerror(int error)
295{
296 return NULL;
297}
298
299__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
300const char *gpg_strerror(unsigned int a)
301{
302 return NULL;
303}
304
305__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
306const char * gzerror(void* file, int * errnum)
307{
308 return NULL;
309}
310
311__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
312char *inet_ntoa(unsigned int in)
313{
314 return NULL;
315}
316
317__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
318void *initscr(void)
319{
320 return NULL;
321}
322
323__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
324void* llvm_stacksave()
325{
326 return NULL;
327}
328
329__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg1")))
330void *mmap(void *addr, unsigned long len, int prot, int flags, int fildes, long off)
331{
332 return NULL;
333}
334
335__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
336void *newwin(int nlines, int ncols, int begin_y, int begin_x)
337{
338 return NULL;
339}
340
341__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
342char *nl_langinfo(int item)
343{
344 return NULL;
345}
346
347__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
348void *opendir(const char *name)
349{
350 return NULL;
351}
352
353__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
354void *sbrk(long increment)
355{
356 return NULL;
357}
358
359__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
360char *strdup(const char *s)
361{
362 return NULL;
363}
364
365__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
366char *strndup(const char *s, unsigned long n)
367{
368 return NULL;
369}
370
371__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
372char *strerror(int errnum)
373{
374 return NULL;
375}
376
377__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
378char *strsignal(int errnum)
379{
380 return NULL;
381}
382
383__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
384char *textdomain(const char * domainname)
385{
386 return NULL;
387}
388
389__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
390char *tgetstr(char *id, char **area)
391{
392 return NULL;
393}
394
395__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
396char *tigetstr(char *capname)
397{
398 return NULL;
399}
400
401__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
402char *tmpnam(char *s)
403{
404 return NULL;
405}
406
407__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
408char *ttyname(int fd)
409{
410 return NULL;
411}
412
413__attribute__((annotate("REALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
414char *getcwd(char *buf, unsigned long size)
415{
416 return NULL;
417}
418
419__attribute__((annotate("REALLOC_HEAP_RET"), annotate("AllocSize:Arg1")))
420char *mem_realloc(void *ptr, unsigned long size)
421{
422 return NULL;
423}
424
425__attribute__((annotate("REALLOC_HEAP_RET"), annotate("AllocSize:Arg1")))
426char *realloc(void *ptr, unsigned long size)
427{
428 return NULL;
429}
430
431__attribute__((annotate("REALLOC_HEAP_RET"), annotate("AllocSize:Arg1*Arg2")))
432char *reallocarray(void *ptr, unsigned long elems, unsigned long size)
433{
434 return NULL;
435}
436
437__attribute__((annotate("REALLOC_HEAP_RET"), annotate("AllocSize:Arg1")))
438void* safe_realloc(void *p, unsigned long n)
439{
440 return NULL;
441}
442
443__attribute__((annotate("REALLOC_HEAP_RET"), annotate("AllocSize:Arg1*Arg2")))
444void* saferealloc(void *p, unsigned long n1, unsigned long n2)
445{
446 return NULL;
447}
448
449__attribute__((annotate("REALLOC_HEAP_RET"), annotate("AllocSize:UNKNOWN")))
450void* safexrealloc()
451{
452 return NULL;
453}
454
455
456char *strtok(char *str, const char *delim)
457{
458 return str;
459}
460
461char *strtok_r(char *str, const char *delim, char **saveptr)
462{
463 return str;
464}
465
466char* strsep(char** stringp, const char* delim)
467{
468 return *stringp;
469}
470
471__attribute__((annotate("REALLOC_HEAP_RET"), annotate("AllocSize:Arg1")))
472void *xrealloc(void *ptr, unsigned long bytes)
473{
474 return NULL;
475}
476
477// ::operator new (size (unsigned int))
478__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0")))
479void *_Znwj(unsigned int size)
480{
481 return NULL;
482}
483
484// ::operator new (size (unsigned int), nothrow)
485__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0")))
486void *_ZnwjRKSt9nothrow_t(unsigned int size, void *)
487{
488 return NULL;
489}
490
491// ::operator new (size (unsigned int), aligned)
492__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0")))
493void *_ZnwjSt11align_val_t(unsigned int size, unsigned long)
494{
495 return NULL;
496}
497
498// ::operator new (size (unsigned int), aligned, nothrow)
499__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0")))
500void *_ZnwjSt11align_val_tRKSt9nothrow_t(unsigned int size, unsigned long, void *)
501{
502 return NULL;
503}
504
505// ::operator new[] (size (unsigned int))
506__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0")))
507void *_Znaj(unsigned int size)
508{
509 return NULL;
510}
511
512// ::operator new[] (size (unsigned int), nothrow)
513__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0")))
514void *_ZnajRKSt9nothrow_t(unsigned int size, void *)
515{
516 return NULL;
517}
518
519// ::operator new[] (size (unsigned int), aligned)
520__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0")))
521void *_ZnajSt11align_val_t(unsigned int size, unsigned long)
522{
523 return NULL;
524}
525
526// ::operator new[] (size (unsigned int), aligned, nothrow)
527__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0")))
528void *_ZnajSt11align_val_tRKSt9nothrow_t(unsigned int size, unsigned long, void *)
529{
530 return NULL;
531}
532
533// ::operator new (size (size_t))
534__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0")))
535void *_Znwm(unsigned long size)
536{
537 return NULL;
538}
539
540// ::operator new (size (size_t), nothrow)
541__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0")))
542void *_ZnwmRKSt9nothrow_t(unsigned long size, void *)
543{
544 return NULL;
545}
546
547// ::operator new (size (size_t), aligned)
548__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0")))
549void *_ZnwmSt11align_val_t(unsigned long size, unsigned long)
550{
551 return NULL;
552}
553
554// ::operator new (size (size_t), aligned, nothrow)
555__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0")))
556void *_ZnwmSt11align_val_tRKSt9nothrow_t(unsigned long size, unsigned long, void *)
557{
558 return NULL;
559}
560
561// ::operator new[]
562__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0")))
563void *_Znam(unsigned long size)
564{
565 return NULL;
566}
567
568// ::operator new[] (nothrow)
569__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0")))
570void *_ZnamRKSt9nothrow_t(unsigned long size, void *)
571{
572 return NULL;
573}
574
575// ::operator new[] (aligned)
576__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0")))
577void *_ZnamSt11align_val_t(unsigned long size, unsigned long)
578{
579 return NULL;
580}
581
582// ::operator new[] (aligned, nothrow)
583__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0")))
584void *_ZnamSt11align_val_tRKSt9nothrow_t(unsigned long size, unsigned long, void *)
585{
586 return NULL;
587}
588
589__attribute__((annotate("ALLOC_HEAP_ARG0"), annotate("AllocSize:UNKNOWN")))
590int asprintf(char **__restrict strp, const char *__restrict fmt, ...)
591{
592 return 0;
593}
594
595__attribute__((annotate("ALLOC_HEAP_ARG0"), annotate("AllocSize:UNKNOWN")))
596int vasprintf(char **strp, const char *fmt, void* ap)
597{
598 return 0;
599}
600
601__attribute__((annotate("ALLOC_HEAP_ARG0"), annotate("AllocSize:UNKNOWN")))
602int db_create(void **dbp, void *dbenv, unsigned int flags)
603{
604 return 0;
605}
606
607__attribute__((annotate("ALLOC_HEAP_ARG0"), annotate("AllocSize:UNKNOWN")))
608int gnutls_pkcs12_bag_init(void *a)
609{
610 return 0;
611}
612
613__attribute__((annotate("ALLOC_HEAP_ARG0"), annotate("AllocSize:UNKNOWN")))
614int gnutls_pkcs12_init(void *a)
615{
616 return 0;
617}
618
619__attribute__((annotate("ALLOC_HEAP_ARG0"), annotate("AllocSize:UNKNOWN")))
620int gnutls_x509_crt_init(void *a)
621{
622 return 0;
623}
624
625__attribute__((annotate("ALLOC_HEAP_ARG0"), annotate("AllocSize:UNKNOWN")))
626int gnutls_x509_privkey_init(void *a)
627{
628 return 0;
629}
630
631__attribute__((annotate("ALLOC_HEAP_ARG0"), annotate("AllocSize:Arg2")))
632int posix_memalign(void **a, unsigned long b, unsigned long c)
633{
634 return 0;
635}
636
637__attribute__((annotate("ALLOC_HEAP_ARG1"), annotate("AllocSize:UNKNOWN")))
638int scandir(const char *__restrict dirp, struct dirent ***__restrict namelist, int (*filter)(const struct dirent *), int (*compar)(const struct dirent **, const struct dirent **))
639{
640 return 0;
641}
642
643__attribute__((annotate("ALLOC_HEAP_ARG2"), annotate("AllocSize:UNKNOWN")))
644int XmbTextPropertyToTextList(void *a, void *b, char ***c, int *d)
645{
646 return 0;
647}
648
649__attribute__((annotate("MEMCPY")))
650void llvm_memcpy_p0i8_p0i8_i64(char* dst, char* src, int sz, int flag){}
651
652__attribute__((annotate("MEMCPY")))
653void llvm_memcpy_p0_p0_i64(char* dst, char* src, int sz, int flag){}
654
655__attribute__((annotate("MEMCPY")))
656void llvm_memcpy_p0i8_p0i8_i32(char* dst, char* src, int sz, int flag){}
657
658__attribute__((annotate("MEMCPY")))
659void llvm_memcpy_p0_p0_i32(char* dst, char* src, int sz, int flag){}
660
661__attribute__((annotate("MEMCPY")))
662void llvm_memcpy(char* dst, char* src, int sz, int flag){}
663
664__attribute__((annotate("MEMCPY")))
665void llvm_memmove(char* dst, char* src, int sz, int flag){}
666
667__attribute__((annotate("MEMCPY")))
668void llvm_memmove_p0i8_p0i8_i64(char* dst, char* src, int sz, int flag){}
669
670__attribute__((annotate("MEMCPY")))
671void llvm_memmove_p0_p0_i64(char* dst, char* src, int sz, int flag){}
672
673__attribute__((annotate("MEMCPY")))
674void llvm_memmove_p0i8_p0i8_i32(char* dst, char* src, int sz, int flag){}
675
676__attribute__((annotate("MEMCPY")))
677void llvm_memmove_p0_p0_i32(char* dst, char* src, int sz, int flag){}
678
679__attribute__((annotate("MEMCPY")))
680void __memcpy_chk(char* dst, char* src, int sz, int flag){}
681
682__attribute__((annotate("MEMCPY")))
683void *memmove(void *str1, const void *str2, unsigned long n)
684{
685 return NULL;
686}
687
688__attribute__((annotate("MEMCPY")))
689void bcopy(const void *s1, void *s2, unsigned long n){}
690
691__attribute__((annotate("MEMCPY")))
692void *memccpy( void *__restrict dest, const void *__restrict src, int c, unsigned long count)
693{
694 return NULL;
695}
696
697__attribute__((annotate("MEMCPY")))
698void __memmove_chk(char* dst, char* src, int sz){}
699
700__attribute__((annotate("MEMSET")))
701void llvm_memset(char* dst, char elem, int sz, int flag){}
702
703__attribute__((annotate("MEMSET")))
704void llvm_memset_p0i8_i32(char* dst, char elem, int sz, int flag){}
705
706__attribute__((annotate("MEMSET")))
707void llvm_memset_p0_i32(char* dst, char elem, int sz, int flag){}
708
709__attribute__((annotate("MEMSET")))
710void llvm_memset_p0i8_i64(char* dst, char elem, int sz, int flag){}
711
712__attribute__((annotate("MEMSET")))
713void llvm_memset_p0_i64(char* dst, char elem, int sz, int flag){}
714
715__attribute__((annotate("MEMSET")))
716char *__memset_chk(char * dest, int c, unsigned long destlen, int flag)
717{
718 return NULL;
719}
720
721__attribute__((annotate("MEMSET")))
722char *wmemset(wchar_t * dst, wchar_t elem, int sz, int flag) {
723 return NULL;
724}
725
726
727__attribute__((annotate("STRCPY")))
728char * __strcpy_chk(char * dest, const char * src, unsigned long destlen)
729{
730 return NULL;
731}
732
733__attribute__((annotate("STRCAT")))
734char *__strcat_chk(char * dest, const char * src, unsigned long destlen)
735{
736 return NULL;
737}
738
739__attribute__((annotate("STRCAT")))
740wchar_t* __wcscat_chk(wchar_t * dest, const wchar_t * src)
741{
742 return NULL;
743}
744
745__attribute__((annotate("STRCPY")))
746char *stpcpy(char *__restrict dst, const char *__restrict src)
747{
748 return NULL;
749}
750
751__attribute__((annotate("STRCAT")))
752char *strcat(char *dest, const char *src)
753{
754 return NULL;
755}
756
757__attribute__((annotate("STRCAT")))
758char *wcscat(char *dest, const char *src)
759{
760 return NULL;
761}
762
763
764__attribute__((annotate("STRCPY")))
765char *strcpy(char *dest, const char *src)
766{
767 return NULL;
768}
769
770__attribute__((annotate("STRCAT")))
771char *strncat(char *dest, const char *src, unsigned long n)
772{
773 return NULL;
774}
775
776__attribute__((annotate("STRCAT")))
777wchar_t* wcsncat(wchar_t * dest, const wchar_t * src, int n) {
778 return NULL;
779}
780
781__attribute__((annotate("STRCAT")))
782char *__strncat_chk(char *dest, const char *src, unsigned long n)
783{
784 return NULL;
785}
786
787__attribute__((annotate("STRCAT")))
788wchar_t* __wcsncat_chk(wchar_t * dest, const wchar_t * src, int n) {
789 return NULL;
790}
791
792__attribute__((annotate("MEMCPY")))
793char *strncpy(char *dest, const char *src, unsigned long n)
794{
795 return NULL;
796}
797
798__attribute__((annotate("STRCPY")))
799char *wcscpy(wchar_t* dest, const wchar_t* src) {
800 return NULL;
801}
802
803__attribute__((annotate("MEMCPY")))
804unsigned long iconv(void* cd, char **__restrict inbuf, unsigned long *__restrict inbytesleft, char **__restrict outbuf, unsigned long *__restrict outbytesleft)
805{
806 return 0;
807}
808
809__attribute__((annotate("STORE_TOP:Arg1+")))
810int scanf(const char *format, ...)
811{
812 return 0;
813}
814
815__attribute__((annotate("STORE_TOP:Arg1+")))
816int __isoc99_scanf(const char *format, ...)
817{
818 return 0;
819}
820
821__attribute__((annotate("STORE_TOP:Arg2+")))
822int fscanf(void *stream, const char *format, ...)
823{
824 return 0;
825}
826
827__attribute__((annotate("STORE_TOP:Arg2+")))
828int __isoc99_fscanf(void *stream, const char *format, ...)
829{
830 return 0;
831}
832
833__attribute__((annotate("STORE_TOP:Arg2+")))
834int sscanf(const char *str, const char *format, ...)
835{
836 return 0;
837}
838
839__attribute__((annotate("STORE_TOP:Arg2+")))
840int __isoc99_sscanf(const char *str, const char *format, ...)
841{
842 return 0;
843}
844
845__attribute__((annotate("OVERWRITE")))
846void* _ZNSt5arrayIPK1ALm2EE4backEv(void *arg)
847{
848 void* ptr1 = (char*)arg + 0;
849 void* ptr2 = (char*)ptr1 + 0;
850 return ptr2;
851}
852
853__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0")))
854void *SyGetmem(unsigned long size)
855{
856 return NULL;
857}
858
859void * __rawmemchr(const void * s, int c)
860{
861 return (void *)s;
862}
863
864struct jpeg_error_mgr *jpeg_std_error(struct jpeg_error_mgr * a)
865{
866 return a;
867}
868
869char *fgets(char *str, int n, void *stream)
870{
871 return str;
872}
873
874char *fgets_unlocked(char *str, int n, void *stream)
875{
876 return str;
877}
878
879char* gets(char *str)
880{
881 return str;
882}
883
884void *memchr(const void *str, int c, unsigned long n)
885{
886 return (void *)str;
887}
888
889void *memrchr(const void *str, int c, unsigned long n)
890{
891 return (void *)str;
892}
893
894void * mremap(void * old_address, unsigned long old_size, unsigned long new_size, int flags)
895{
896 return old_address;
897}
898
899char *strchr(const char *str, int c)
900{
901 return (char *)str;
902}
903
904char *__strchrnull(const char *s, int c)
905{
906 return (char *)s;
907}
908
909char *strcasestr(const char *haystack, const char *needle)
910{
911 return (char *)haystack;
912}
913
914char* index(const char *s, int c)
915{
916 return (char *)s;
917}
918
919char* rindex(const char *s, int c)
920{
921 return (char *)s;
922}
923
924char *strerror_r(int errnum, char *buf, unsigned long buflen)
925{
926 return buf;
927}
928
929char *strpbrk(const char *str1, const char *str2)
930{
931 return (char *)str1;
932}
933
934char *strptime(const void* s, const void* format, void* tm)
935{
936 return (char *)s;
937}
938
939char *strrchr(const char *str, int c)
940{
941 return (char *)str;
942}
943
944char *strstr(const char *haystack, const char *needle)
945{
946 return (char *)haystack;
947}
948
949char *tmpnam_r(char *s)
950{
951 return s;
952}
953
954int isalnum(int character)
955{
956 return character;
957}
958
959int isalpha(int character)
960{
961 return character;
962}
963
964int isblank(int character)
965{
966 return character;
967}
968
969int iscntrl(int c)
970{
971 return c;
972}
973
974int isdigit(int c)
975{
976 return c;
977}
978
979int isgraph(int c)
980{
981 return c;
982}
983
984int islower( int arg )
985{
986 return arg;
987}
988
989int isprint(int c)
990{
991 return c;
992}
993
994int ispunct(int argument)
995{
996 return argument;
997}
998
999int isspace(char c)
1000{
1001 return c;
1002}
1003
1004int isupper(int c)
1005{
1006 return c;
1007}
1008
1009int isxdigit(int c)
1010{
1011 return c;
1012}
1013
1014char *asctime_r(const void *tm, char *buf)
1015{
1016 return buf;
1017}
1018
1019void *bsearch(const void *key, const void *base, unsigned long nitems, unsigned long size, int (*compar)(const void *, const void *))
1020{
1021 return (void *)base;
1022}
1023
1024struct mntent *getmntent_r(void *fp, struct mntent *mntbuf, char *buf, int buflen)
1025{
1026 return mntbuf;
1027}
1028
1029struct tm *gmtime_r(const void *timer, struct tm *buf)
1030{
1031 return buf;
1032}
1033
1034char * gzgets(void* file, char * buf, int len)
1035{
1036 return buf;
1037}
1038
1039struct tm *localtime_r(const void *timep, struct tm *result)
1040{
1041 return result;
1042}
1043
1044char *realpath(const char *__restrict path, char *__restrict resolved_path)
1045{
1046 return resolved_path;
1047}
1048
1049void* freopen64( const char* voidname, const char* mode, void* fp )
1050{
1051 return fp;
1052}
1053
1054void* freopen(const char* voidname, const char* mode, void* fp)
1055{
1056 return fp;
1057}
1058
1059const char *inet_ntop(int af, const void *__restrict src, char *__restrict dst, unsigned int size)
1060{
1061 return dst;
1062}
1063
1064double strtod(const char *str, char **endptr)
1065{
1066 *endptr = (char *)str;
1067 return 0.0;
1068}
1069
1070double strtod_l(const char *str, char **endptr, void *loc)
1071{
1072 *endptr = (char *)str;
1073 return 0.0;
1074}
1075
1076float strtof(const char *nptr, char **endptr)
1077{
1078 *endptr = (char *)nptr;
1079 return 0.0;
1080}
1081
1082float strtof_l(const char *nptr, char **endptr, void *loc)
1083{
1084 *endptr = (char *)nptr;
1085 return 0.0;
1086}
1087
1088long int strtol(const char *str, char **endptr, int base)
1089{
1090 *endptr = (char *)str;
1091 return 0;
1092}
1093
1094long long strtoll(const char *str, char **endptr, int base)
1095{
1096 *endptr = (char *)str;
1097 return 0;
1098}
1099
1100long double strtold(const char* str, char** endptr)
1101{
1102 *endptr = (char *)str;
1103 return 0.0;
1104}
1105
1106unsigned long int strtoul(const char *str, char **endptr, int base)
1107{
1108 *endptr = (char *)str;
1109 return 0;
1110}
1111
1112unsigned long long strtoull(const char *str, char **endptr, int base)
1113{
1114 *endptr = (char *)str;
1115 return 0;
1116}
1117
1118char *gcvt(double x, int ndigit, char *buf)
1119{
1120 return buf;
1121}
1122
1123void *memmem(const void *haystack, unsigned long haystacklen, const void *needle, unsigned long needlelen)
1124{
1125 return (void *)haystack;
1126}
1127
1128char* ctime_r(const char *timer, char *buf)
1129{
1130 return buf;
1131}
1132
1133int readdir_r(void *__restrict dir, void *__restrict entry, void **__restrict result)
1134{
1135 entry = *result;
1136 return 0;
1137}
1138
1139int getpwnam_r(const char *name, void *pwd, char *buf, unsigned long buflen, void **result)
1140{
1141 *result = pwd;
1142 return 0;
1143}
1144
1145int getpwuid_r(unsigned int uid, void *pwd, char *buf, unsigned long buflen, void **result)
1146{
1147 *result = pwd;
1148 return 0;
1149}
1150
1152{
1153 *arg1 = arg0;
1154}
1155
1156void* __dynamic_cast(void* source, const void* sourceTypeInfo, const void* targetTypeInfo, unsigned long castType)
1157{
1158 return source;
1159}
1160
1161void _ZNSsC1EPKcRKSaIcE(void **arg0, void *arg1)
1162{
1163 *arg0 = arg1;
1164}
1165
1167{
1168 *arg0 = arg1;
1169}
1170
1172char *getenv(const char *name)
1173{
1174 return getenv_global;
1175}
1176
1177unsigned short ctype_b_loc_global[10];
1178const unsigned short **__ctype_b_loc(void)
1179{
1180 return (const unsigned short **)&ctype_b_loc_global;
1181}
1182
1185{
1186 return (int **)&ctype_tolower_loc_global;
1187}
1188
1191{
1192 return (int **)&ctype_toupper_loc_global;
1193}
1194
1197{
1198 return error_global;
1199}
1200
1203{
1204 return h_error_global;
1205}
1206
1208void* __res_state(void)
1209{
1210 return res_state_global;
1211}
1212
1214char *asctime(const void *timeptr)
1215{
1216 return time_global;
1217}
1218
1219char *ctime(const void *timer)
1220{
1221 return time_global;
1222}
1223
1224void *gmtime(const void *timer)
1225{
1226 return time_global;
1227}
1228
1229void *localtime(const void *timer)
1230{
1231 return time_global;
1232}
1233
1235char * bindtextdomain(const char * domainname, const char * dirname)
1236{
1237 return bindtextdomain_global;
1238}
1239
1241char * bind_textdomain_codeset(const char * domainname, const char * codeset)
1242{
1244}
1245
1247char *ctermid(char *s)
1248{
1249 return s ? s : ctermid_global;
1250}
1251
1253char * dcgettext(const char * domainname, const char * msgid, int category)
1254{
1255 return gettext_global;
1256}
1257
1258char * dgettext(const char * domainname, const char * msgid)
1259{
1260 return gettext_global;
1261}
1262
1263char * dngettext(const char * domainname, const char * msgid, const char * msgid_plural, unsigned long int n)
1264{
1265 return gettext_global;
1266}
1267
1268char * gettext(const char * msgid)
1269{
1270 return gettext_global;
1271}
1272
1273char * ngettext(const char * msgid, const char * msgid_plural, unsigned long int n)
1274{
1275 return gettext_global;
1276}
1277
1279void *getgrgid(unsigned int gid)
1280{
1281 return getgrgid_global;
1282}
1283
1285void *getgrnam(const char *name)
1286{
1287 return getgrnam_global;
1288}
1289
1291void *gethostbyaddr(const void *addr, unsigned int len, int type)
1292{
1293 return gethostby_global;
1294}
1295
1296void *gethostbyname(const char *name)
1297{
1298 return gethostby_global;
1299}
1300
1301void *gethostbyname2(const char *name, int af)
1302{
1303 return gethostby_global;
1304}
1305
1307void *getmntent(void *stream)
1308{
1309 return getmntent_global;
1310}
1311
1313void *getprotobyname(const char *name)
1314{
1315 return getproto_global;
1316}
1317
1318void *getprotobynumber(int proto)
1319{
1320 return getproto_global;
1321}
1322
1324void *getpwent(void)
1325{
1326 return getpw_global;
1327}
1328
1329void *getpwnam(const char *name)
1330{
1331 return getpw_global;
1332}
1333
1334void *getpwuid(unsigned int uid)
1335{
1336 return getpw_global;
1337}
1338
1340void *getservbyname(const char *name, const char *proto)
1341{
1342 return getserv_global;
1343}
1344
1345void *getservbyport(int port, const char *proto)
1346{
1347 return getserv_global;
1348}
1349
1351void *getspnam(const char *name)
1352{
1353 return getspnam_global;
1354}
1355
1357const char *gnu_get_libc_version(void)
1358{
1360}
1361
1363const char * gnutls_check_version(const char * req_version)
1364{
1366}
1367
1369void *localeconv(void)
1370{
1371 return localeconv_global;
1372}
1373
1379
1381char *re_comp(const char *regex)
1382{
1383 return re_comp_global;
1384}
1385
1387char *setlocale(int category, const char *locale)
1388{
1389 return setlocale_global;
1390}
1391
1393char *tgoto(const char *cap, int col, int row)
1394{
1395 return tgoto_global;
1396}
1397
1399char *tparm(char *str, ...)
1400{
1401 return tparm_global;
1402}
1403
1405const char *zError(int a)
1406{
1407 return zError_global;
1408}
cJSON * p
Definition cJSON.cpp:2559
newitem type
Definition cJSON.cpp:2739
cJSON * a
Definition cJSON.cpp:2560
cJSON * n
Definition cJSON.cpp:2558
const cJSON *const b
Definition cJSON.h:255
const char *const name
Definition cJSON.h:264
char const int const cJSON_bool format
Definition cJSON.h:163
int index
Definition cJSON.h:170
int cJSON_bool fmt
Definition cJSON.h:160
cJSON * item
Definition cJSON.h:222
int count
Definition cJSON.h:216
int iscntrl(int c)
Definition extapi.c:969
void _ZNSsC1EPKcRKSaIcE(void **arg0, void *arg1)
Definition extapi.c:1161
char re_comp_global[10]
Definition extapi.c:1380
char * strsep(char **stringp, const char *delim)
Definition extapi.c:466
__attribute__((annotate("ALLOC_HEAP_RET"), annotate("AllocSize:Arg0")))
Definition extapi.c:23
char gnutls_check_version_global[10]
Definition extapi.c:1362
void * getgrnam_global[10]
Definition extapi.c:1284
int ctype_toupper_loc_global[10]
Definition extapi.c:1189
char setlocale_global[10]
Definition extapi.c:1386
char * tmpnam_r(char *s)
Definition extapi.c:949
char * asctime(const void *timeptr)
Definition extapi.c:1214
int error_global[10]
Definition extapi.c:1195
char * strpbrk(const char *str1, const char *str2)
Definition extapi.c:929
void * gethostby_global[10]
Definition extapi.c:1290
long long strtoll(const char *str, char **endptr, int base)
Definition extapi.c:1094
void * __res_state(void)
Definition extapi.c:1208
void * mremap(void *old_address, unsigned long old_size, unsigned long new_size, int flags)
Definition extapi.c:894
#define NULL
Definition extapi.c:5
char * fgets(char *str, int n, void *stream)
Definition extapi.c:869
void * getprotobyname(const char *name)
Definition extapi.c:1313
float strtof(const char *nptr, char **endptr)
Definition extapi.c:1076
float strtof_l(const char *nptr, char **endptr, void *loc)
Definition extapi.c:1082
void * getservbyport(int port, const char *proto)
Definition extapi.c:1345
char * ctime(const void *timer)
Definition extapi.c:1219
char * re_comp(const char *regex)
Definition extapi.c:1381
void * getpwnam(const char *name)
Definition extapi.c:1329
char * tparm(char *str,...)
Definition extapi.c:1399
long int strtol(const char *str, char **endptr, int base)
Definition extapi.c:1088
char * setlocale(int category, const char *locale)
Definition extapi.c:1387
long double strtold(const char *str, char **endptr)
Definition extapi.c:1100
char * ctime_r(const char *timer, char *buf)
Definition extapi.c:1128
char * dcgettext(const char *domainname, const char *msgid, int category)
Definition extapi.c:1253
const unsigned short ** __ctype_b_loc(void)
Definition extapi.c:1178
void * localeconv_global[10]
Definition extapi.c:1368
char * gets(char *str)
Definition extapi.c:879
char * __strchrnull(const char *s, int c)
Definition extapi.c:904
char * strtok_r(char *str, const char *delim, char **saveptr)
Definition extapi.c:461
char zError_global[10]
Definition extapi.c:1404
const char * gnu_get_libc_version(void)
Definition extapi.c:1357
int isdigit(int c)
Definition extapi.c:974
unsigned long long strtoull(const char *str, char **endptr, int base)
Definition extapi.c:1112
char * bind_textdomain_codeset(const char *domainname, const char *codeset)
Definition extapi.c:1241
void * freopen(const char *voidname, const char *mode, void *fp)
Definition extapi.c:1054
int isgraph(int c)
Definition extapi.c:979
const char * gnutls_check_version(const char *req_version)
Definition extapi.c:1363
int res_state_global[10]
Definition extapi.c:1207
int * __errno_location(void)
Definition extapi.c:1196
char getenv_global[10]
Definition extapi.c:1171
char * gcvt(double x, int ndigit, char *buf)
Definition extapi.c:1118
char * strchr(const char *str, int c)
Definition extapi.c:899
char * strrchr(const char *str, int c)
Definition extapi.c:939
void * getservbyname(const char *name, const char *proto)
Definition extapi.c:1340
char * rindex(const char *s, int c)
Definition extapi.c:919
struct mntent * getmntent_r(void *fp, struct mntent *mntbuf, char *buf, int buflen)
Definition extapi.c:1024
void * getpwuid(unsigned int uid)
Definition extapi.c:1334
double strtod_l(const char *str, char **endptr, void *loc)
Definition extapi.c:1070
int ctype_tolower_loc_global[10]
Definition extapi.c:1183
void * gethostbyname(const char *name)
Definition extapi.c:1296
void * __rawmemchr(const void *s, int c)
Definition extapi.c:859
void _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1EPKcRKS3_(void **arg0, void *arg1)
Definition extapi.c:1166
void * localeconv(void)
Definition extapi.c:1369
void * getmntent(void *stream)
Definition extapi.c:1307
char * gettext(const char *msgid)
Definition extapi.c:1268
int h_error_global[10]
Definition extapi.c:1201
char * strtok(char *str, const char *delim)
Definition extapi.c:456
void * gmtime(const void *timer)
Definition extapi.c:1224
void * bsearch(const void *key, const void *base, unsigned long nitems, unsigned long size, int(*compar)(const void *, const void *))
Definition extapi.c:1019
void * getproto_global[10]
Definition extapi.c:1312
void * getgrgid(unsigned int gid)
Definition extapi.c:1279
char time_global[10]
Definition extapi.c:1213
int isspace(char c)
Definition extapi.c:999
char * fgets_unlocked(char *str, int n, void *stream)
Definition extapi.c:874
void _ZNSt8__detail15_List_node_base7_M_hookEPS0_(void *arg0, void **arg1)
Definition extapi.c:1151
unsigned short ctype_b_loc_global[10]
Definition extapi.c:1177
int ** __ctype_tolower_loc(void)
Definition extapi.c:1184
char tgoto_global[10]
Definition extapi.c:1392
int getpwuid_r(unsigned int uid, void *pwd, char *buf, unsigned long buflen, void **result)
Definition extapi.c:1145
void * getgrgid_global[10]
Definition extapi.c:1278
char bind_textdomain_codeset_global[10]
Definition extapi.c:1240
int * __h_errno_location(void)
Definition extapi.c:1202
void * gethostbyaddr(const void *addr, unsigned int len, int type)
Definition extapi.c:1291
int isprint(int c)
Definition extapi.c:989
int getpwnam_r(const char *name, void *pwd, char *buf, unsigned long buflen, void **result)
Definition extapi.c:1139
int ispunct(int argument)
Definition extapi.c:994
void * getgrnam(const char *name)
Definition extapi.c:1285
void * getspnam_global[10]
Definition extapi.c:1350
int islower(int arg)
Definition extapi.c:984
char * dgettext(const char *domainname, const char *msgid)
Definition extapi.c:1258
unsigned long int strtoul(const char *str, char **endptr, int base)
Definition extapi.c:1106
char gnu_get_libc_version_global[10]
Definition extapi.c:1356
char bindtextdomain_global[10]
Definition extapi.c:1234
int isblank(int character)
Definition extapi.c:964
char * bindtextdomain(const char *domainname, const char *dirname)
Definition extapi.c:1235
double strtod(const char *str, char **endptr)
Definition extapi.c:1064
char * getenv(const char *name)
Definition extapi.c:1172
char * strstr(const char *haystack, const char *needle)
Definition extapi.c:944
char * dngettext(const char *domainname, const char *msgid, const char *msgid_plural, unsigned long int n)
Definition extapi.c:1263
void * localtime(const void *timer)
Definition extapi.c:1229
void * gethostbyname2(const char *name, int af)
Definition extapi.c:1301
int isalnum(int character)
Definition extapi.c:954
void * memmem(const void *haystack, unsigned long haystacklen, const void *needle, unsigned long needlelen)
Definition extapi.c:1123
int readdir_r(void *__restrict dir, void *__restrict entry, void **__restrict result)
Definition extapi.c:1133
char ctermid_global[10]
Definition extapi.c:1246
char * strcasestr(const char *haystack, const char *needle)
Definition extapi.c:909
void * getprotobynumber(int proto)
Definition extapi.c:1318
int ** __ctype_toupper_loc(void)
Definition extapi.c:1190
char * realpath(const char *__restrict path, char *__restrict resolved_path)
Definition extapi.c:1044
void * getpw_global[10]
Definition extapi.c:1323
char * strptime(const void *s, const void *format, void *tm)
Definition extapi.c:934
void * memrchr(const void *str, int c, unsigned long n)
Definition extapi.c:889
char * ngettext(const char *msgid, const char *msgid_plural, unsigned long int n)
Definition extapi.c:1273
char * tgoto(const char *cap, int col, int row)
Definition extapi.c:1393
char * asctime_r(const void *tm, char *buf)
Definition extapi.c:1014
int isupper(int c)
Definition extapi.c:1004
int isxdigit(int c)
Definition extapi.c:1009
void * getpwent(void)
Definition extapi.c:1324
char * ctermid(char *s)
Definition extapi.c:1247
struct tm * localtime_r(const void *timep, struct tm *result)
Definition extapi.c:1039
void * getserv_global[10]
Definition extapi.c:1339
void * getmntent_global[10]
Definition extapi.c:1306
const char * inet_ntop(int af, const void *__restrict src, char *__restrict dst, unsigned int size)
Definition extapi.c:1059
void * getspnam(const char *name)
Definition extapi.c:1351
void * memchr(const void *str, int c, unsigned long n)
Definition extapi.c:884
const char * zError(int a)
Definition extapi.c:1405
struct jpeg_error_mgr * jpeg_std_error(struct jpeg_error_mgr *a)
Definition extapi.c:864
void * pango_cairo_font_map_get_default(void)
Definition extapi.c:1375
void * pango_cairo_font_map_global[10]
Definition extapi.c:1374
void * freopen64(const char *voidname, const char *mode, void *fp)
Definition extapi.c:1049
struct tm * gmtime_r(const void *timer, struct tm *buf)
Definition extapi.c:1029
char * gzgets(void *file, char *buf, int len)
Definition extapi.c:1034
char tparm_global[10]
Definition extapi.c:1398
int isalpha(int character)
Definition extapi.c:959
void * __dynamic_cast(void *source, const void *sourceTypeInfo, const void *targetTypeInfo, unsigned long castType)
Definition extapi.c:1156
char gettext_global[10]
Definition extapi.c:1252
char * strerror_r(int errnum, char *buf, unsigned long buflen)
Definition extapi.c:924