posix.cfg: Added support for more functions. std.cfg: Fixed mktime->mkxtime wrong naming and improved asctime() function checking. It is not allowed to provide a NULL pointer to asctime().

This commit is contained in:
Martin Ettl 2015-04-04 23:59:05 +02:00
parent c89d2b16cc
commit a16ed8f0e7
2 changed files with 142 additions and 1 deletions

View File

@ -206,6 +206,29 @@
</arg>
<leak-ignore/>
</function>
<!-- int lstat(const char *file_name, struct stat *buf); -->
<function name="lstat">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<arg nr="2">
<not-null/>
</arg>
<leak-ignore/>
</function>
<!-- int fstat(const char *file_name, struct stat *buf); -->
<function name="fstat">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
</arg>
<leak-ignore/>
</function>
<!-- int chmod(const char *path, mode_t mode); -->
<function name="chmod">
<noreturn>false</noreturn>
@ -1212,6 +1235,23 @@
<noreturn>false</noreturn>
<use-retval/>
</function>
<!-- char *strtok_r(char *str, const char *delim, char **saveptr); -->
<function name="strtok_r">
<!-- strtok may modify the first argument, so using the return value is not mandatory -->
<noreturn>false</noreturn>
<pure/>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
<arg nr="3">
<not-null/>
</arg>
</function>
<!--int getpwnam_r(const char *, struct passwd *, char *, size_t, struct passwd **); -->
<function name="getpwnam_r">
<arg nr="1">
@ -1539,6 +1579,105 @@
<not-null/>
</arg>
</function>
<!-- struct tm *localtime_r(const time_t *timep, struct tm *result); -->
<function name="localtime_r">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<arg nr="2">
<not-null/>
</arg>
</function>
<!-- int readdir_r(DIR *dirp, struct dirent *entry, struct dirent **result); -->
<function name="readdir_r">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<arg nr="2">
<not-null/>
</arg>
<arg nr="3">
<not-null/>
</arg>
</function>
<!-- ssize_t readlink(const char *path, char *buf, size_t bufsiz); -->
<function name="readlink">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<arg nr="2">
<not-null/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
</function>
<!-- int readlinkat(int dirfd, const char *pathname, char *buf, size_t bufsiz); -->
<function name="readlinkat">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
<not-null/>
</arg>
<arg nr="3">
<not-null/>
</arg>
<arg nr="4">
<not-uninit/>
</arg>
</function>
<!-- char *asctime_r(const struct tm *tm, char *buf); -->
<function name="asctime_r">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<arg nr="2">
<not-null/>
</arg>
</function>
<!-- char *ctime_r(const time_t *timep, char *buf); -->
<function name="ctime_r">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
<arg nr="2">
<not-null/>
</arg>
</function>
<!-- struct tm *gmtime_r(const time_t *timep, struct tm *result); -->
<function name="gmtime_r">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
</arg>
</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">

View File

@ -135,12 +135,14 @@
<not-uninit/>
</arg>
</function>
<!-- char *asctime(const struct tm *tm) -->
<function name="asctime">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
<not-null/>
</arg>
</function>
<!-- void assert (int expression) -->
@ -3754,7 +3756,7 @@
</arg>
</function>
<!-- time_t mkxtime(struct tmx *tp); -->
<function name="mktime">
<function name="mkxtime">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">