Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • Firmware Firmware
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 12
    • Issues 12
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Infrastructure Registry
  • Analytics
    • Analytics
    • CI/CD
    • Repository
    • Value stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Firmware-Developer
  • FirmwareFirmware
  • Issues
  • #82

Closed
Open
Created Apr 21, 2021 by Yaroslav Petrov@lankasterDeveloper

Static analyse von BMXD

  • Memoryleaks mitteils Valgrind
  • static Analyse mitteils cppcheck Gitlab 13.2 notwendig (https://gitlab.freifunk-dresden.de/firmware-developer/firmware/tree/yaro-stat-tests)
  • Static analyse mitteils PVS-Studio (Kostenlose Lizens für opensource: https://pvs-studio.com/en/open-source-license/)
firmware/feeds/common/bmxd/sources$ pvs-studio-analyzer analyze -l PVS-Studio.lic -o  project.log -j 2
Using tracing file: strace_out
[  7%] Analyzing: allocate.c
[ 14%] Analyzing: avl.c
[ 21%] Analyzing: batman.c
[ 28%] Analyzing: control.c
[ 35%] Analyzing: hna.c
[ 42%] Analyzing: linux/route.c
[ 50%] Analyzing: list-batman.c
[ 57%] Analyzing: metrics.c
[ 64%] Analyzing: originator.c
[ 71%] Analyzing: plugin.c
[ 78%] Analyzing: posix/posix.c
[ 85%] Analyzing: posix/tunnel.c
[ 92%] Analyzing: profile.c
[100%] Analyzing: schedule.c
Analysis finished in 0:00:01.18
The results are saved to firmware/feeds/common/bmxd/sources/project.log

* Memoryleaks mitteils Valgrind
* static Analyse mitteils cppcheck
* Static analyse mitteils PVS-Studio (Kostenlose Lizens für opensource: https://pvs-studio.com/en/open-source-license/)

www.viva64.com/en/w	1	err	Help: The documentation for all analyzer warnings is available here: https://www.viva64.com/en/w/.
firmware/feeds/common/bmxd/sources/allocate.c	11	err	V1042 This file is marked with copyleft license, which requires you to open the derived source code.
firmware/feeds/common/bmxd/sources/avl.c	128	warn	V1004 The 'root' pointer was used unsafely after it was verified against nullptr. Check lines: 124, 128.
firmware/feeds/common/bmxd/sources/avl.c	115	err	V595 The 'root' pointer was utilized before it was verified against nullptr. Check lines: 115, 124.
firmware/feeds/common/bmxd/sources/avl.c	11	err	V1042 This file is marked with copyleft license, which requires you to open the derived source code.
firmware/feeds/common/bmxd/sources/batman.c	13	err	V1042 This file is marked with copyleft license, which requires you to open the derived source code.
firmware/feeds/common/bmxd/sources/hna.c	11	err	V1042 This file is marked with copyleft license, which requires you to open the derived source code.
firmware/feeds/common/bmxd/sources/linux/route.c	141	warn	V547 Expression 't == TRACK_MY_HNA' is always false.
firmware/feeds/common/bmxd/sources/linux/route.c	139	err	V517 The use of 'if (A) {...} else if (A) {...}' pattern was detected. There is a probability of logical error presence. Check lines: 139, 141.
firmware/feeds/common/bmxd/sources/linux/route.c	359	warn	V641 The size of the '& nladdr' buffer is not a multiple of the element size of the type 'struct sockaddr'.
firmware/feeds/common/bmxd/sources/linux/route.c	403	warn	V1032 The pointer 'buf' is cast to a more strictly aligned pointer type.
firmware/feeds/common/bmxd/sources/linux/route.c	510	warn	V641 The size of the '& nladdr' buffer is not a multiple of the element size of the type 'struct sockaddr'.
firmware/feeds/common/bmxd/sources/linux/route.c	535	warn	V1032 The pointer 'buf' is cast to a more strictly aligned pointer type.
firmware/feeds/common/bmxd/sources/linux/route.c	1151	err	V597 The compiler could delete the 'memset' function call, which is used to flush 'if_netwbrc_addr' object. The memset_s() function should be used to erase the private data.
firmware/feeds/common/bmxd/sources/linux/route.c	1390	warn	V641 The size of the '& nladdr' buffer is not a multiple of the element size of the type 'struct sockaddr'.
firmware/feeds/common/bmxd/sources/linux/route.c	1437	warn	V1032 The pointer 'buf' is cast to a more strictly aligned pointer type.
firmware/feeds/common/bmxd/sources/linux/route.c	11	err	V1042 This file is marked with copyleft license, which requires you to open the derived source code.
firmware/feeds/common/bmxd/sources/list-batman.c	11	err	V1042 This file is marked with copyleft license, which requires you to open the derived source code.
firmware/feeds/common/bmxd/sources/control.c	344	warn	V557 Array underrun is possible. The value of 'input' index could reach -1.
firmware/feeds/common/bmxd/sources/control.c	719	warn	V560 A part of conditional expression is always false: !p.
firmware/feeds/common/bmxd/sources/control.c	1164	err	V768 The enumeration constant 'YES' is used as a variable of a Boolean-type.
firmware/feeds/common/bmxd/sources/control.c	1240	warn	V782 There is no sense in comparing the location of elements from different arrays: 'equalp < s + wordlen(s)'.
firmware/feeds/common/bmxd/sources/control.c	1571	warn	V560 A part of conditional expression is always true: strm.
firmware/feeds/common/bmxd/sources/control.c	1586	warn	V507 Pointer to local array 'tmp' is stored outside the scope of this array. Such a pointer will become invalid.
firmware/feeds/common/bmxd/sources/control.c	1640	warn	V728 An excessive check can be simplified. The '(A && !B) || (!A && B)' expression is equivalent to the 'bool(A) != bool(B)' expression.
firmware/feeds/common/bmxd/sources/control.c	1680	warn	V728 An excessive check can be simplified. The '(A && !B) || (!A && B)' expression is equivalent to the 'bool(A) != bool(B)' expression.
firmware/feeds/common/bmxd/sources/control.c	1710	warn	V512 A call of the 'strcpy' function will lead to overflow of the buffer 'unix_addr.sun_path'.
firmware/feeds/common/bmxd/sources/control.c	1712	warn	V1004 The 'curr_strm_pos' pointer was used unsafely after it was verified against nullptr. Check lines: 1701, 1712.
firmware/feeds/common/bmxd/sources/control.c	1864	warn	V512 A call of the 'strcpy' function will lead to overflow of the buffer 'unix_addr.sun_path'.
firmware/feeds/common/bmxd/sources/control.c	2086	err	V768 The enumeration constant 'YES' is used as a variable of a Boolean-type.
firmware/feeds/common/bmxd/sources/control.c	2147	err	V768 The enumeration constant 'YES' is used as a variable of a Boolean-type.
firmware/feeds/common/bmxd/sources/control.c	2174	err	V595 The 'opt' pointer was utilized before it was verified against nullptr. Check lines: 2174, 2177.
firmware/feeds/common/bmxd/sources/control.c	2436	warn	V1048 The 'state' variable was assigned the same value.
firmware/feeds/common/bmxd/sources/control.c	11	err	V1042 This file is marked with copyleft license, which requires you to open the derived source code.
firmware/feeds/common/bmxd/sources/metrics.c	11	err	V1042 This file is marked with copyleft license, which requires you to open the derived source code.
firmware/feeds/common/bmxd/sources/plugin.c	292	err	V547 Expression 'version == 0x01' is always true.
firmware/feeds/common/bmxd/sources/plugin.c	11	err	V1042 This file is marked with copyleft license, which requires you to open the derived source code.
firmware/feeds/common/bmxd/sources/posix/posix.c	11	err	V1042 This file is marked with copyleft license, which requires you to open the derived source code.
firmware/feeds/common/bmxd/sources/originator.c	458	warn	V560 A part of conditional expression is always true: (pn_tmp == NULL).
firmware/feeds/common/bmxd/sources/originator.c	1284	warn	V1004 The 'orig_node_neigh->primary_orig_node' pointer was used unsafely after it was verified against nullptr.
firmware/feeds/common/bmxd/sources/originator.c	1291	warn	V560 A part of conditional expression is always true: orig_node_neigh->primary_orig_node.
firmware/feeds/common/bmxd/sources/originator.c	11	err	V1042 This file is marked with copyleft license, which requires you to open the derived source code.
firmware/feeds/common/bmxd/sources/profile.c	11	err	V1042 This file is marked with copyleft license, which requires you to open the derived source code.
firmware/feeds/common/bmxd/sources/posix/tunnel.c	366	warn	V547 Expression 'fd > - 1' is always true.
firmware/feeds/common/bmxd/sources/posix/tunnel.c	486	warn	V560 A part of conditional expression is always true: !tuno.
firmware/feeds/common/bmxd/sources/posix/tunnel.c	872	warn	V547 Expression 'tp_len < (int32_t) sizeof (tp.start)' is always false.
firmware/feeds/common/bmxd/sources/posix/tunnel.c	11	err	V1042 This file is marked with copyleft license, which requires you to open the derived source code.
firmware/feeds/common/bmxd/sources/schedule.c	82	warn	V519 The 'receive_max_sock' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 80, 82.
firmware/feeds/common/bmxd/sources/schedule.c	317	warn	V641 The size of the '& sa' buffer is not a multiple of the element size of the type 'struct sockaddr'.
firmware/feeds/common/bmxd/sources/schedule.c	948	warn	V547 Expression is always true.
firmware/feeds/common/bmxd/sources/schedule.c	1416	err	V512 A call of the 'memcpy' function will lead to overflow of the buffer '(unsigned char *) sn->ogm + ogm_len'.
firmware/feeds/common/bmxd/sources/schedule.c	11	err	V1042 This file is marked with copyleft license, which requires you to open the derived source code.
Edited May 03, 2021 by Yaroslav Petrov
Assignee
Assign to
Time tracking