Commit Graph

269 Commits

Author SHA1 Message Date
orbitcowboy 8f2a84ec6c posix.cfg: Added support for telldir(). 2019-05-25 22:49:01 +02:00
orbitcowboy e9aaa5edfa posix.cfg: Added support for more interfaces. 2019-05-22 09:33:44 +02:00
orbitcowboy fbf98b421a posix.cfg: Removed invalid argument checks from functions that accept 'AT_FDCWD', which set to -100 on some systems. 2019-05-21 21:09:16 +02:00
orbitcowboy ed2aa52bbf posix.cfg: Fixed duplicate name 'fstat' -> 'fstatat'. 2019-05-21 16:25:53 +02:00
orbitcowboy 8c0e4a2fc7 posix.cfg: Removed the validation range option from the first parameter of fstatat(). Reference: https://pubs.opengroup.org/onlinepubs/9699919799/functions/fstatat.html 2019-05-21 16:23:41 +02:00
orbitcowboy e63b3a44d8 posix.cfg: Added support for fstatat(). 2019-05-21 15:21:48 +02:00
orbitcowboy 03b4447350 posix.cfg: Added support for flockfile(), funlockfile() and trylockfile(). 2019-05-18 11:29:30 +02:00
orbitcowboy 570969be08 posix.cfg: Added support for lockf(). 2019-05-18 11:07:43 +02:00
orbitcowboy e85e722fb4 posix.cfg: Added support for fchownat(). 2019-05-18 10:59:40 +02:00
orbitcowboy 62c4199bcd posix.cfg: Added support for fchmodat(). 2019-05-18 10:54:17 +02:00
orbitcowboy c0c9f33323 posix.cfg: Added support for mkdirat(). 2019-05-18 10:46:17 +02:00
orbitcowboy d0606844b7 posix.cfg: Added support for umask(). 2019-05-17 15:52:27 +02:00
orbitcowboy 719eb25ba9 posix.cfg: Improved configuration for 'mkstemp()' and added test cases to ensure resource leaks are caught. 2019-05-16 15:53:22 +02:00
orbitcowboy cda25d7205 posix.cfg: Ensure the return value of pipe() is taken into account. 2019-05-03 22:15:30 +02:00
orbitcowboy 90c6ea53ef posix.cfg: Added support for socketpair(). 2019-05-03 20:52:10 +02:00
orbitcowboy 76cc8ccde2 posix.cfg: Added directions for some interfaces. 2019-05-01 19:57:10 +02:00
orbitcowboy 953895278b posix.cfg: Improved configuration fo fileno(). 2019-05-01 13:58:54 +02:00
orbitcowboy d36fcbd945 posix.cfg: Added support for dirfd(). 2019-05-01 13:54:23 +02:00
amai2012 b5ee9d97ef Move some signal constants from posix.cfg to std.cfg. Add some more interfaces to posix.cfg 2019-04-26 19:26:04 +02:00
orbitcowboy 7d0bb0dc29 posix.cfg: Improved validation of file descriptors. 2019-04-26 16:58:21 +02:00
orbitcowboy 2d7323c65f posix.cfg: Added support for sendfile(). 2019-04-26 16:47:49 +02:00
orbitcowboy bc7e835524 posix.cfg: Added support for ttyname_r(). 2019-04-26 10:24:10 +02:00
orbitcowboy 6d681a0959 posix.cfg: Issue a warning in case a function accepting a file descriptor is called with a negative value. 2019-04-26 10:16:29 +02:00
orbitcowboy f288e18c2c posix.cfg: Added support for more interfaces. 2019-04-26 09:48:38 +02:00
orbitcowboy c4fb56e550 posix.cfg: Warn for socket/file-descriptors having negatives values. 2019-04-25 17:04:30 +02:00
orbitcowboy 4a91b7ec77 Merge branch 'master' of https://github.com/danmar/cppcheck 2019-04-25 16:58:47 +02:00
orbitcowboy df49b56a6f posix.cfg: Added support for openat(). Reference: http://man7.org/linux/man-pages/man2/openat.2.html 2019-04-25 16:56:22 +02:00
amai2012 9692c3dde7 Add macros from signal.h 2019-04-25 12:17:26 +02:00
orbitcowboy 751902da86 posix.cfg: Added more 'direction'-attributes. 2019-04-21 12:34:44 +02:00
orbitcowboy 45a3f679b4 posix.cfg: Improved configuration for close(). Issue a warning in case close is called with a file pointer having a negative value. 2019-04-21 12:28:17 +02:00
orbitcowboy a3b7524c84 posix.cfg: Added minsize attribute to pipe(). 2019-03-30 15:49:52 +01:00
Sebastian 432c04281a
Libraries: Move valloc() from std.cfg to posix.cfg. (#1743)
Move valloc() to posix.cfg since it is a legacy POSIX function and not
part of the standard (not even commonly used). It is not available in
msvc (Visual Studio).
2019-03-20 14:10:36 +01:00
Daniel Marjamäki 14528bcf25 Library: allowed values for the buffer-size attribute: malloc/calloc/strdup 2019-03-20 06:46:55 +01:00
Sebastian 19e9e42dd7
Library: Enhance minsize configuration and allow simple values. (#1736)
Some POSIX and Windows functions require buffers of at least some
specific size. This is now possible to configure via for example this
minsize configuration: `<minsize type="value" value="26"/>`.
The range for valid buffer size values is 1 to LLONG_MAX
(9223372036854775807)
2019-03-17 14:22:26 +01:00
versat 1b74bca973 posix.cfg: Further fixes/enhancements; adding more argument directions. 2019-03-12 13:35:06 +01:00
versat 12941721d2 posix.cfg: Further fixes/enhancements; adding more argument directions. 2019-03-12 11:41:10 +01:00
versat bb6874e4c1 posix.cfg: sched_*() functions: Enhance and add argument directions. 2019-03-12 09:17:43 +01:00
versat f21c3b13f1 posix.cfg: Further fixes/enhancements; adding more argument directions 2019-03-11 15:40:53 +01:00
versat 33e3ce232a posix.cfg: Fixes, enhancements and adding more argument directions.
Add `<use-retval/>` to htonl(), htons(), ntohl(), ntohs(), inet_addr()
and inet_ntoa().
Enhance argument configurations of message queue functions (mq_*()).
2019-03-11 14:11:47 +01:00
versat 7b958e788d posix.cfg: Fixes and adding more argument directions.
Fixes: The "length" argument of mmap*() and munmap() calls must be
greater than 0.
2019-03-11 11:20:07 +01:00
versat ecba3db9cc posix.cfg: Start specifying direction for arguments to functions.
There are still many functions with arguments that need a direction
specified.
2019-03-06 10:08:46 +01:00
orbitcowboy 831670c355 posix.cfg: Improved support for more macros and constants. 2019-02-17 23:35:34 +01:00
amai2012 b6681c2a2e Improve some function properties 2019-02-05 21:30:30 +01:00
orbitcowboy 2727a959b2 windows.cfg: Added missing <use-retval/>-tags for strcmp-functions. 2019-02-04 11:54:24 +01:00
orbitcowboy 6e72691986 posix.cfg: Added missing <use-retval/>-tags for strcmp-functions. 2019-02-04 08:27:49 +01:00
orbitcowboy acebfac176 Added missing <use-retval/>-tag to strdup()-like functions. In case the return value is not taken in account, a logical error is revealed. 2019-02-03 20:38:33 +01:00
amai2012 b69b0bf57e Small additions/corrections 2019-01-29 23:20:44 +01:00
amai2012 d6d8a871ca Add/correct some interfaces. Move some standard interfaces from gnu.cfg to posix.cfg. 2019-01-28 23:26:53 +01:00
amai2012 786ce0ac5c Add more interfaces to posix.cfg 2019-01-25 21:39:23 +01:00
amai2012 2515b015ea Improve configuration for bind() 2019-01-25 10:47:36 +01:00
amai2012 8f36b7d23b Add bind() to posix.cfg 2019-01-24 23:13:06 +01:00
amai2012 a0ee1d212b Fix parameter configuration for connect() 2019-01-23 15:33:37 +01:00
amai2012 44c12ccb31 Add connect() to posix.cfg 2019-01-22 21:51:04 +01:00
amai2012 2adf65968b posix.cfg: improve configuration for dlsym() 2019-01-12 21:50:02 +01:00
amai2012 400c6c8e76 Improve configuration for dlopen and add suitable test 2019-01-10 21:14:37 +01:00
amai2012 e5c7543a7d posix.cfg: add dlopen, dlsym, dlclose 2019-01-10 18:33:44 +01:00
yurii.putin 2aecd30cd8 Change cfg
Add some function (posix_memalign, reallocarray,aligned_alloc,valloc) to cfg. Add attribute format-str to some function.
2018-11-19 18:23:00 +01:00
Sebastian fc7aab220e
posix.cfg: Add some pthread_attr_* functions. (#1331)
References:
http://pubs.opengroup.org/onlinepubs/7908799/xsh/pthread_attr_setstacksize.html
http://pubs.opengroup.org/onlinepubs/7908799/xsh/pthread_attr_setguardsize.html
2018-08-08 12:22:09 +02:00
Sebastian f862cf603f
posix.cfg: Add some pthread_mutex_* functions. (#1320)
References:
http://pubs.opengroup.org/onlinepubs/9699919799/functions/pthread_mutex_init.html
http://pubs.opengroup.org/onlinepubs/9699919799/functions/pthread_mutex_lock.html
2018-07-21 17:52:12 +02:00
Sebastian 4ef452132c
posix.cfg,gnu.cfg: Add (get|set)hostname functions. (#1315)
Reference for POSIX gethostname:
http://pubs.opengroup.org/onlinepubs/9699919799/functions/gethostname.html
Reference for sethostname:
http://man7.org/linux/man-pages/man2/gethostname.2.html
2018-07-18 09:40:06 +02:00
orbitcowboy 335cb480bf posix.cfg: Added support for locale_t 2018-06-08 14:43:20 +02:00
Sebastian 50aa3620da
posix.cfg: Add minsize to readlink[at] function configurations (#1216) 2018-05-09 18:20:45 +02:00
Sebastian 90bc8b7404
posix.cfg: Add not-bool to last arguments where appropriate. (#1204)
Add not-bool function argument configuration where appropriate to catch errors like this: df4ca5fb72
2018-05-08 09:30:08 +02:00
amai2012 e8cccf842f Correct attributes for swab() 2018-03-20 11:40:50 +01:00
Daniel Marjamäki 7048f012a8 astyle formatting
[ci skip]
2018-03-19 20:33:36 +01:00
Daniel Marjamäki 7202787435 posix: remove function 'remove' that is also configured in std.cfg 2018-03-19 20:04:58 +01:00
Daniel Marjamäki 6b00ca33bd posix.cfg: Removed rename function as this is configured in std.cfg 2018-03-19 15:29:47 +01:00
amai2012 113f1efd72 Add configuration for swab() and sync() 2018-03-19 13:12:16 +01:00
Daniel Marjamäki 6e66150feb posix.cfg: update configuration for rename 2018-03-19 11:51:19 +01:00
Sebastian 7b02b45a76 posix library: Add strtok tests (#1069)
* posix library: Add strtok tests

In the posix library there is the same configuration for strtok but a
warning is added.

* posix.cfg: Remove redundant configuration for strtok, add comment.
2018-01-31 10:58:30 +01:00
Sebastian a4deca3c98 posix.cfg: Remove redundant entries (#1049)
I carefully removed the duplicate/redundant entries with less/missing
configuration, so no information is lost.
2018-01-22 17:21:07 +01:00
Sebastian b78d714037 posix.cfg: access(): Removed redundant configuration, added tests (#1048)
I intentionally removed the second access() configuraion because it was
missing the use-retval attribute. But calling access() without using the
return value is absolutely senseless.
I added tests to posix.c to verify the correct configuration of
access().
2018-01-22 14:54:14 +01:00
Sebastian de7aa8f513 Fix #7504: posix: open() was twice in configuration file (#1032)
* Fix #7504: posix: open() was twice in configuration file

This fixes ticket #7504: Problems with the open function were not always
detected because the open function was twice in posix.cfg and only the
second configuration was used by cppcheck. Like suggested now only
one configuration is used and the third parameter has a default value
and is thereby optional.
use-retval has been removed to avoid duplicate warnings because the
alloc/dealloc configuration already warns about unused retval.
According tests to verify that open is configured
correctly now have been added to test/cfg/posix.c.

* posix.cfg: open(): Add TODO for use-retval configuration
2018-01-18 13:56:36 +01:00
Sebastian 2e2f8a00d6 posix.cfg: Fix getprotobynumber configuration (#1034)
It seems to be a copy & paste error.
The comment, the return value, the warn entry and the rest of the
configuration suggest that this must be the getprotobynumber function
configuration and not the getservbyport configuration which would be
redundant as it is configured a bit later.
2018-01-16 10:46:30 +01:00
orbitcowboy d63897ff21 posix.cfg: Added support for stpncpy(). 2017-12-08 21:36:54 +01:00
orbitcowboy cdeb7fb25f posix.cfg: Added support for wcpncpy. 2017-12-08 21:28:48 +01:00
orbitcowboy 928727534a posix.cfg: Improved configuration for bcopy(): Warn for potential buffer access out of bounds issues. 2017-12-08 14:53:14 +01:00
orbitcowboy 1a4c25243c posix.cfg: Added more returnValue-types. 2017-10-05 11:38:11 +02:00
orbitcowboy c0f92b2409 posix.cfg: Added support for tcsendbreak. 2017-09-19 21:25:19 +02:00
orbitcowboy c4e2ca2996 posix.cfg: Added support of ioctl. 2017-09-19 21:12:03 +02:00
orbitcowboy 6d69845737 posix.cfg: Added support for some <termios.h>-functions. 2017-09-19 15:10:37 +02:00
orbitcowboy 40985ada14 posix.cfg: Added more returnValue-types. 2017-08-02 14:11:50 +02:00
orbitcowboy 4024420a4d posix.cfg: Added more returnValue-types and increased function support. 2017-08-02 09:26:16 +02:00
orbitcowboy d2698733c3 posix.cfg: Added returnValue-types for some functions. 2017-08-01 20:35:30 +02:00
orbitcowboy 39ca654519 posix.cfg: Fixed wrong index. The memory is allocated at the 4'th parameter. 2017-07-17 15:21:42 +02:00
orbitcowboy c62e46dc6e posix.cfg: Report memory leak when memory is allocated with getaddrinfo() and it is not freeded with freeaddrinfo(). 2017-07-17 15:17:20 +02:00
Alexander Mai 7a0f05aaa5 Correct some wrong attributes causing false positives. Add more interfaces 2017-06-08 22:33:41 +02:00
Alexander Mai d818b4ace1 Add more interfaces 2017-06-06 23:21:05 +02:00
Alexander Mai a350e6c7e8 Add more interfaces 2017-06-02 22:58:39 +02:00
alexander 49a28d00f9 Add some interfaces + small changes to existing ones 2017-05-29 00:47:24 +02:00
Alexander Mai 14be611a7e Correct configuration to allow NULL as 2nd argument to read/write. Whether it's a legal value depends on the 3rd argument 2017-04-29 17:57:16 +02:00
orbitcowboy 0b6c726439 posix.cfg: Do not allow the second parameter of read and write to be a NULL pointer. 2017-04-26 14:25:14 +02:00
amai2012 1d0b647072 #7915 false positive: "Memory leak" error after mmap return MAP_FAILED. define MAP_FAILED in posix.cfg. 2017-02-07 12:14:55 +01:00
alexander d846217641 #7906 false positive: (error) Null pointer dereference (tempnam) 2017-01-29 17:09:48 +01:00
orbitcowboy 6829a8da14 posix.cfg and windows.cfg: Added support for memccpy(). 2016-12-05 16:46:49 +01:00
orbitcowboy 7522b1b108 posix.cfg: Improved configuration by using <valid>-tags. 2016-12-05 10:30:11 +01:00
Daniel Marjamäki a5e214ab3f astyle formatting
[ci skip]
2016-12-04 19:15:32 +01:00
amai2012 abf59af87d Add a couple of interfaces 2016-12-04 12:24:26 +01:00
orbitcowboy 7b1ed9f415 windows.cfg and posix.cfg: Added more <use-retval/> configurations. 2016-11-28 16:58:33 +01:00
orbitcowboy 4130207edc posix.cfg and windows.cfg: Added support for more functions like _popen(). 2016-10-21 11:43:01 +02:00