cppcheck/cfg/posix.cfg

1522 lines
34 KiB
INI

<?xml version="1.0"?>
<def format="1">
<!-- int usleep(useconds_t useconds); -->
<function name="usleep">
<noreturn>false</noreturn>
<arg nr="1">
<not-bool/>
<valid>0:999999</valid>
</arg>
<leak-ignore/>
</function>
<!-- void _exit(int status); -->
<function name="_exit">
<noreturn>true</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- int access(const char *pathname, int mode); -->
<function name="access">
<noreturn>false</noreturn>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<leak-ignore/>
</function>
<!-- unsigned int alarm(unsigned int seconds); -->
<function name="alarm">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<leak-ignore/>
</function>
<!-- int brk(void *addr); -->
<function name="brk">
<noreturn>false</noreturn>
<arg nr="1">
<not-null/>
</arg>
<leak-ignore/>
</function>
<!-- void *sbrk(intptr_t incr);-->
<function name="sbrk">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<leak-ignore/>
</function>
<!-- int closedir(DIR *dir); -->
<function name="closedir">
<noreturn>false</noreturn>
<arg nr="1">
<not-bool/>
<not-uninit/>
<not-null/>
</arg>
</function>
<function name="strdup">
<noreturn>false</noreturn>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
</function>
<function name="strndup">
<noreturn>false</noreturn>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<function name="wcsdup">
<noreturn>false</noreturn>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
</function>
<function name="mkstemp">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<leak-ignore/>
</function>
<function name="mkdtemp">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<leak-ignore/>
</function>
<function name="mktemp">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<leak-ignore/>
</function>
<!-- char *getcwd(char *buf, size_t size); -->
<function name="getcwd">
<noreturn>false</noreturn>
<arg nr="2">
<not-uninit/>
</arg>
<leak-ignore/>
</function>
<!-- int mkdir(const char *pathname, mode_t mode); -->
<function name="mkdir">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<leak-ignore/>
</function>
<!-- int rmdir(const char *pathname); -->
<function name="rmdir">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<leak-ignore/>
</function>
<!-- int chdir(const char *path); -->
<function name="chdir">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<leak-ignore/>
</function>
<!-- int chroot(const char *path); -->
<function name="chroot">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<leak-ignore/>
</function>
<!-- int link(const char *oldpath, const char *newpath); -->
<function name="link">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<arg nr="2">
<not-uninit/>
<not-null/>
</arg>
<leak-ignore/>
</function>
<!-- int unlink(const char *pathname); -->
<function name="unlink">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<leak-ignore/>
</function>
<!-- int rename(const char *oldpath, const char *newpath); -->
<function name="rename">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<leak-ignore/>
</function>
<!-- int stat(const char *file_name, struct stat *buf); -->
<function name="stat">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<arg nr="2">
<not-null/>
</arg>
<leak-ignore/>
</function>
<!-- int chmod(const char *path, mode_t mode); -->
<function name="chmod">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<leak-ignore/>
</function>
<!-- int chown(const char *path, uid_t owner, gid_t group); -->
<function name="chown">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
<leak-ignore/>
</function>
<!-- int lchown(const char *path, uid_t owner, gid_t group); -->
<function name="lchown">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
<leak-ignore/>
</function>
<!-- int fchown(int fildes, uid_t owner, gid_t group); -->
<function name="fchown">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
<leak-ignore/>
</function>
<!-- int utime(const char *filename, struct utimbuf *buf); -->
<function name="utime">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<leak-ignore/>
</function>
<!-- int utimes(const char *filename, const struct timeval times[2]); -->
<function name="utimes">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<leak-ignore/>
</function>
<!-- DIR *opendir(const char *name); -->
<function name="opendir">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
</function>
<function name="fdopendir">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- int isatty(int fildes); -->
<function name="isatty">
<noreturn>false</noreturn>
<use-retval/>
<arg nr="1">
<not-uninit/>
</arg>
<leak-ignore/>
</function>
<function name="popen">
<noreturn>false</noreturn>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
</function>
<function name="pclose">
<noreturn>false</noreturn>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- int socket(int domain, int type, int protocol); -->
<function name="socket">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
</function>
<!-- int nice(int incr); -->
<function name="nice">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<leak-ignore/>
</function>
<!-- int pause(void); -->
<function name="pause">
<noreturn>false</noreturn>
<leak-ignore/>
</function>
<!-- int close(int fildes); -->
<function name="close">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- size_t confstr(int, char *, size_t); -->
<function name="confstr">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
<leak-ignore/>
</function>
<!-- long int fpathconf(int fildes, int name); -->
<function name="fpathconf">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<leak-ignore/>
</function>
<!-- long int pathconf(const char *path, int name); -->
<function name="pathconf">
<noreturn>false</noreturn>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<leak-ignore/>
</function>
<!-- long int sysconf(int name); -->
<function name="sysconf">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<leak-ignore/>
</function>
<function name="fdopen">
<noreturn>false</noreturn>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- struct dirent *readdir(DIR *dir); -->
<function name="readdir">
<noreturn>false</noreturn>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<leak-ignore/>
</function>
<!-- void rewinddir(DIR *dir); -->
<function name="rewinddir">
<noreturn>false</noreturn>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<leak-ignore/>
</function>
<!-- void seekdir(DIR *dirp, long loc); -->
<function name="seekdir">
<noreturn>false</noreturn>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<leak-ignore/>
</function>
<function name="rand_r">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
</arg>
</function>
<function name="memmem">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
<not-null/>
</arg>
<arg nr="4">
<not-uninit/>
</arg>
</function>
<function name="memrchr">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
<not-bool/>
<valid>0:</valid>
</arg>
<arg nr="3">
<not-bool/>
<valid>0:</valid>
</arg>
</function>
<function name="rawmemchr">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
<not-bool/>
<valid>0:</valid>
</arg>
</function>
<function name="strcasecmp">
<noreturn>false</noreturn>
<pure/>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<arg nr="2">
<not-uninit/>
<not-null/>
</arg>
</function>
<function name="strncasecmp">
<noreturn>false</noreturn>
<pure/>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<arg nr="2">
<not-uninit/>
<not-null/>
</arg>
<arg nr="3">
<not-bool/>
<valid>0:</valid>
</arg>
</function>
<!-- ssize_t read(int fd, void *buf, size_t count); -->
<function name="read">
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<minsize type="argvalue" arg="3"/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
</function>
<function name="write">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<minsize type="argvalue" arg="3"/>
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
</function>
<function name="recv">
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<minsize type="argvalue" arg="3"/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
<arg nr="4">
<not-uninit/>
</arg>
</function>
<function name="recvfrom">
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<minsize type="argvalue" arg="3"/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
<arg nr="4">
<not-uninit/>
</arg>
<arg nr="5"/>
<arg nr="6"/>
</function>
<function name="send">
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<minsize type="argvalue" arg="3"/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
<arg nr="4">
<not-uninit/>
</arg>
</function>
<function name="sendto">
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<minsize type="argvalue" arg="3"/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
<arg nr="4">
<not-uninit/>
</arg>
<arg nr="5"/>
<arg nr="6"/>
</function>
<!-- void *mmap(void *addr, size_t length, int prot, int flags, int fd, off_t offset); -->
<function name="mmap">
<use-retval/>
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
<arg nr="4">
<not-uninit/>
</arg>
<arg nr="5">
<not-uninit/>
</arg>
<arg nr="6">
<not-uninit/>
</arg>
<leak-ignore/>
</function>
<!-- void *mmap64(void *addr, size_t length, int prot, int flags, int fd, off64_t offset); -->
<function name="mmap64">
<use-retval/>
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
<arg nr="4">
<not-uninit/>
</arg>
<arg nr="5">
<not-uninit/>
</arg>
<arg nr="6">
<not-uninit/>
</arg>
<leak-ignore/>
</function>
<!-- int munmap(void *addr, size_t length); -->
<function name="munmap">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- void openlog(const char *ident, int option, int facility); -->
<function name="openlog">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
</function>
<!-- void syslog(int priority, const char *format, ...); -->
<function name="syslog">
<noreturn>false</noreturn>
<leak-ignore/>
<formatstr/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<formatstr/>
</arg>
<arg nr="any">
<not-uninit/>
</arg>
</function>
<!-- void vsyslog(int priority, const char *format, va_list ap); -->
<function name="vsyslog">
<noreturn>false</noreturn>
<leak-ignore/>
<formatstr/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<formatstr/>
</arg>
<arg nr="any">
<not-uninit/>
</arg>
</function>
<function name="getgid">
<noreturn>false</noreturn>
<use-retval/>
</function>
<function name="getegid">
<noreturn>false</noreturn>
<use-retval/>
</function>
<!-- uid_t getuid (void); -->
<function name="getuid">
<noreturn>false</noreturn>
<use-retval/>
<leak-ignore/>
</function>
<!-- pid_t getsid(pid_t pid); -->
<function name="getsid">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<use-retval/>
<leak-ignore/>
</function>
<function name="geteuid">
<noreturn>false</noreturn>
<use-retval/>
<leak-ignore/>
</function>
<!-- pid_t getppid(void); -->
<function name="getppid">
<noreturn>false</noreturn>
<use-retval/>
<leak-ignore/>
</function>
<!-- pid_t getpid(void); -->
<function name="getpid">
<noreturn>false</noreturn>
<use-retval/>
<leak-ignore/>
</function>
<!-- pid_t getpgrp(void); -->
<function name="getpgrp">
<noreturn>false</noreturn>
<use-retval/>
<leak-ignore/>
</function>
<!-- ppid_t getpgid(pid_t pid); -->
<function name="getpgid">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<use-retval/>
<leak-ignore/>
</function>
<function name="setuid">
<noreturn>false</noreturn>
<use-retval/>
<arg nr="1">
<not-uninit/>
</arg>
<leak-ignore/>
</function>
<function name="seteuid">
<noreturn>false</noreturn>
<use-retval/>
<arg nr="1">
<not-uninit/>
</arg>
<leak-ignore/>
</function>
<function name="setgid">
<noreturn>false</noreturn>
<use-retval/>
<arg nr="1">
<not-uninit/>
</arg>
<leak-ignore/>
</function>
<function name="setegid">
<noreturn>false</noreturn>
<use-retval/>
<arg nr="1">
<not-uninit/>
</arg>
<leak-ignore/>
</function>
<!-- int setpgid(pid_t pid, pid_t pgid); -->
<function name="setpgid">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- int pipe(int fildes[2]); -->
<function name="pipe">
<noreturn>false</noreturn>
</function>
<!-- pid_t setpgrp(void); -->
<function name="setpgrp">
<noreturn>false</noreturn>
</function>
<!-- int setregid(gid_t rgid, gid_t egid); -->
<function name="setregid">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- int setreuid(uid_t ruid, uid_t euid); -->
<function name="setreuid">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- pid_t setsid(void); -->
<function name="setsid">
<noreturn>false</noreturn>
<!-- it is a good idea to do: <use-retval/> -->
</function>
<!-- char *getwd(char *path_name);-->
<function name="getwd">
<noreturn>false</noreturn>
<arg nr="1">
<not-null/>
</arg>
<leak-ignore/>
</function>
<memory>
<dealloc>free</dealloc>
<alloc init="true">strdup</alloc>
<alloc init="true">strndup</alloc>
<alloc init="true">wcsdup</alloc>
</memory>
<memory>
<dealloc>munmap</dealloc>
<alloc init="true">mmap</alloc>
<alloc init="true">mmap64</alloc>
</memory>
<resource>
<dealloc>close</dealloc>
<alloc init="true">open</alloc>
<alloc init="true">socket</alloc>
</resource>
<resource>
<dealloc>closedir</dealloc>
<alloc init="true">opendir</alloc>
<alloc init="true">fdopendir</alloc>
</resource>
<resource>
<dealloc>fclose</dealloc>
<alloc init="true">fdopen</alloc>
</resource>
<resource>
<dealloc>pclose</dealloc>
<alloc init="true">popen</alloc>
</resource>
<!-- This type definitions refer to http://pubs.opengroup.org/onlinepubs/009695399/basedefs/sys/types.h.html-->
<podtype name="in_port_t" sign="u" size="2"/>
<podtype name="in_addr_t" sign="u" size="4"/>
<podtype name="socklen_t" sign="u" size="4"/>
<podtype name="sa_family_t" sign="u" size="2"/>
<podtype name="nlink_t" sign="s"/>
<podtype name="mode_t" sign="s"/>
<podtype name="pid_t" sign="s"/>
<podtype name="uid_t" sign="s"/>
<podtype name="gid_t" sign="s"/>
<podtype name="id_t" sign="s"/>
<podtype name="blkcnt_t" sign="s"/>
<podtype name="off_t" sign="s"/>
<podtype name="fsblkcnt_t" sign="u"/>
<podtype name="fsfilcnt_t" sign="u"/>
<podtype name="ino_t" sign="u"/>
<podtype name="useconds_t" sign="u"/>
<podtype name="suseconds_t" sign="u"/>
<podtype name="blksize_t" sign="s"/>
<podtype name="ssize_t" sign="s"/>
<podtype name="dirent"/>
<podtype name="DIR"/>
<podtype name="clockid_t"/>
<podtype name="dev_t"/>
<podtype name="key_t"/>
<podtype name="tms"/>
<podtype name="pthread_attr_t"/>
<podtype name="pthread_cond_t"/>
<podtype name="pthread_condattr_t"/>
<podtype name="pthread_key_t"/>
<podtype name="pthread_mutexattr_t"/>
<podtype name="pthread_mutex_t"/>
<podtype name="pthread_barrier_t"/>
<podtype name="pthread_barrierattr_t"/>
<podtype name="pthread_once_t"/>
<podtype name="pthread_rwlock_t"/>
<podtype name="pthread_rwlockattr_t"/>
<podtype name="pthread_spinlock_t"/>
<podtype name="pthread_t"/>
<podtype name="timer_t"/>
<podtype name="trace_attr_t"/>
<podtype name="trace_event_id_t"/>
<podtype name="trace_event_set_t"/>
<podtype name="trace_id_t"/>
<podtype name="stat"/>
<podtype name="jmp_buf"/>
<podtype name="sigjmp_buf"/>
<podtype name="sigset_t"/>
<podtype name="termios"/>
<podtype name="intptr_t"/>
<podtype name="timespec"/>
<podtype name="timeval"/>
<!-- http://pubs.opengroup.org/onlinepubs/009695399/basedefs/arpa/inet.h.html -->
<!-- uint32_t htonl(uint32_t); -->
<function name="htonl">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- uint16_t htons(uint16_t); -->
<function name="htons">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- uint32_t ntohl(uint32_t); -->
<function name="ntohl">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- uint16_t ntohs(uint16_t); -->
<function name="ntohs">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/mqueue.h.html -->
<podtype name="mq_attr"/>
<podtype name="mqd_t"/>
<!-- int mq_close(mqd_t); -->
<function name="mq_close">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- int mq_getattr(mqd_t, struct mq_attr *); -->
<function name="mq_getattr">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- int mq_notify(mqd_t, const struct sigevent *); -->
<function name="mq_notify">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
</function>
<!-- mqd_t mq_open(const char *, int, ...); -->
<function name="mq_open">
<noreturn>false</noreturn>
</function>
<!-- ssize_t mq_receive(mqd_t, char *, size_t, unsigned *); -->
<function name="mq_receive">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- int mq_send(mqd_t, const char *, size_t, unsigned); -->
<function name="mq_send">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- int mq_setattr(mqd_t, const struct mq_attr *restrict,
struct mq_attr *restrict); -->
<function name="mq_setattr">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- ssize_t mq_timedreceive(mqd_t, char *restrict, size_t,
unsigned *restrict, const struct timespec *restrict); -->
<function name="mq_timedreceive">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- int mq_timedsend(mqd_t, const char *, size_t, unsigned,
const struct timespec *); -->
<function name="mq_timedsend">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="5"/>
</function>
<!-- int mq_unlink(const char *); -->
<function name="mq_unlink">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
</function>
<!-- http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/ndbm.h.html -->
<podtype name="datum"/>
<podtype name="DBM"/>
<!-- int dbm_clearerr(DBM *); -->
<function name="dbm_clearerr">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
</function>
<!-- void dbm_close(DBM *); -->
<function name="dbm_close">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
</function>
<!-- int dbm_delete(DBM *, datum); -->
<function name="dbm_delete">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- int dbm_error(DBM *); -->
<function name="dbm_error">
<noreturn>false</noreturn>
<use-retval/>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
</function>
<!-- datum dbm_fetch(DBM *, datum); -->
<function name="dbm_fetch">
<noreturn>false</noreturn>
<use-retval/>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- datum dbm_firstkey(DBM *); -->
<function name="dbm_firstkey">
<noreturn>false</noreturn>
<use-retval/>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
</function>
<!-- datum dbm_nextkey(DBM *); -->
<function name="dbm_nextkey">
<noreturn>false</noreturn>
<use-retval/>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
</function>
<!-- DBM *dbm_open(const char *, int, mode_t); -->
<function name="dbm_open">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
</function>
<!-- int dbm_store(DBM *, datum, datum, int); -->
<function name="dbm_store">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
<arg nr="4">
<not-uninit/>
</arg>
</function>
<!-- http://pubs.opengroup.org/onlinepubs/009695399/basedefs/netdb.h.html -->
<podtype name="addrinfo"/>
<podtype name="hostent"/>
<podtype name="netent"/>
<podtype name="protoent"/>
<podtype name="servent"/>
<!-- void freeaddrinfo(struct addrinfo *ai); -->
<function name="freeaddrinfo">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<not-null/>
<!-- not-null is not required by the resource above, but some systems will segfault -->
</arg>
</function>
<!-- int getaddrinfo(const char * nodename, const char * servname, const struct addrinfo * hints, struct addrinfo ** res); -->
<function name="getaddrinfo">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
<arg nr="4">
<not-uninit/>
</arg>
</function>
<!-- void endhostent(void); -->
<function name="endhostent">
<noreturn>false</noreturn>
</function>
<!-- struct hostent *gethostent(void); -->
<function name="gethostent">
<noreturn>false</noreturn>
<use-retval/>
</function>
<!-- void sethostent(int stayopen); -->
<function name="sethostent">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/pwd.h.html -->
<podtype name="passwd"/>
<!--void endpwent(void); -->
<function name="endpwent">
<noreturn>false</noreturn>
</function>
<!--struct passwd *getpwent(void); -->
<function name="getpwent">
<noreturn>false</noreturn>
<use-retval/>
</function>
<!--struct passwd *getpwnam(const char *); -->
<function name="getpwnam">
<arg nr="1">
<not-uninit/>
</arg>
<noreturn>false</noreturn>
<use-retval/>
</function>
<!--int getpwnam_r(const char *, struct passwd *, char *, size_t, struct passwd **); -->
<function name="getpwnam_r">
<arg nr="1">
<not-uninit/>
</arg>
<noreturn>false</noreturn>
<use-retval/>
</function>
<!-- struct passwd *getpwuid(uid_t uid); -->
<function name="getpwuid">
<arg nr="1">
<not-uninit/>
</arg>
<noreturn>false</noreturn>
<use-retval/>
</function>
<!-- int getpwuid_r(uid_t, struct passwd *, char *, size_t, struct passwd **); -->
<function name="getpwuid_r">
<noreturn>false</noreturn>
</function>
<!-- void setpwent(void); -->
<function name="setpwent">
<noreturn>false</noreturn>
</function>
<!-- http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/nl_types.h.html -->
<podtype name="nl_catd"/>
<podtype name="nl_item"/>
<!-- int catclose(nl_catd); -->
<function name="catclose">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- char *catgets(nl_catd, int, int, const char *); -->
<function name="catgets">
<noreturn>false</noreturn>
<use-retval/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
<arg nr="4">
<not-uninit/>
</arg>
</function>
<!-- nl_catd catopen(const char *, int); -->
<function name="catopen">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/poll.h.html -->
<!-- int poll(struct pollfd [], nfds_t, int); -->
<function name="poll">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
</function>
<!-- http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/regex.h.html -->
<podtype name="regex_t"/>
<!-- int regcomp(regex_t *, const char *, int); -->
<function name="regcomp">
<noreturn>false</noreturn>
<arg nr="1">
<not-null/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
</function>
<!-- size_t regerror(int, const regex_t *, char *, size_t); -->
<function name="regerror">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="4">
<not-uninit/>
</arg>
</function>
<!-- int regexec(const regex_t *, const char *, size_t, regmatch_t [restrict], int); -->
<function name="regexec">
<noreturn>false</noreturn>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
<arg nr="4">
<not-uninit/>
</arg>
<arg nr="5">
<not-uninit/>
</arg>
</function>
<!-- void regfree(regex_t *); -->
<function name="regfree">
<noreturn>false</noreturn>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/sched.h.html -->
<podtype name="sched_param"/>
<!-- int sched_get_priority_max(int); -->
<function name="sched_get_priority_max">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- int sched_get_priority_min(int); -->
<function name="sched_get_priority_min">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- int sched_getparam(pid_t, struct sched_param *); -->
<function name="sched_getparam">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
</arg>
</function>
<!-- int sched_getscheduler(pid_t); -->
<function name="sched_getscheduler">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- int sched_rr_get_interval(pid_t, struct timespec *); -->
<function name="sched_rr_get_interval">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
</arg>
</function>
<!-- int sched_setparam(pid_t, const struct sched_param *); -->
<function name="sched_setparam">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- int sched_setscheduler(pid_t, int, const struct sched_param *); -->
<function name="sched_setscheduler">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
</function>
<!-- int sched_yield(void); -->
<function name="sched_yield">
<noreturn>false</noreturn>
</function>
<!-- char *ecvt(double value, int ndigit, int *restrict decpt, int *restrict sign);
LEGACY in POSIX.1-2001, removed in POSIX.1-2008-->
<function name="ecvt">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-null/>
</arg>
<arg nr="4">
<not-null/>
</arg>
</function>
<!-- char *fcvt(double value, int ndigit, int *restrict decpt, int *restrict sign);
LEGACY in POSIX.1-2001, removed in POSIX.1-2008-->
<function name="fcvt">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-null/>
</arg>
<arg nr="4">
<not-null/>
</arg>
</function>
<!-- char *gcvt(double value, int ndigit, char *buf);
LEGACY in POSIX.1-2001, removed in POSIX.1-2008-->
<function name="gcvt">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-null/>
</arg>
</function>
<!-- off_t lseek(int fildes, off_t offset, int whence); -->
<function name="lseek">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
<leak-ignore/>
</function>
<!-- int nanosleep(const struct timespec *rqtp, struct timespec *rmtp); -->
<function name="nanosleep">
<noreturn>false</noreturn>
<arg nr="1">
<not-null/>
</arg>
<leak-ignore/>
</function>
<!-- void setkey(const char *key); -->
<function name="setkey">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<leak-ignore/>
</function>
<!-- char *getpass(const char *prompt); -->
<function name="getpass">
<noreturn>false</noreturn>
<arg nr="1">
<not-null/>
</arg>
<leak-ignore/>
</function>
<!-- http://pubs.opengroup.org/onlinepubs/007908799/xsh/time.h.html -->
<!-- int clock_settime(clockid_t clock_id, const struct timespec *tp); -->
<function name="clock_settime">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- int clock_gettime(clockid_t clock_id, struct timespec *tp); -->
<function name="clock_gettime">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
</arg>
</function>
<!-- int clock_getres(clockid_t clock_id, struct timespec *res); -->
<function name="clock_getres">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2"/>
</function>
</def>