2026-05-01 19:27 ftp://ftp.de.debian.org/debian/pool/main/f/faifa/faifa_0.2~svn82.orig.tar.gz cppcheck-options: --library=posix --library=gnu --library=bsd --library=openssl --inconclusive --enable=style,information --inline-suppr --template=daca2 --disable=missingInclude --suppress=unmatchedSuppression --check-library --debug-warnings --suppress=autoNoType --suppress=valueFlowBailout --suppress=bailoutUninitVar --suppress=symbolDatabaseWarning --suppress=normalCheckLevelConditionExpressions -D__GNUC__ --platform=unix64 -j1 platform: Linux-6.8.0-111-generic-x86_64-with-glibc2.39 python: 3.12.3 client-version: 1.3.70 compiler: g++ (Ubuntu 14.2.0-4ubuntu2~24.04.1) 14.2.0 cppcheck: head 2.20.0 head-info: e5c4a73 (2026-05-01 11:10:43 +0200) count: 101 97 elapsed-time: 0.7 0.6 head-timing-info: old-timing-info: head results: faifa-0.2~svn82.orig/crypto.c:112:39: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SHA256_DIGEST_LENGTH [valueFlowBailoutIncompleteVar] faifa-0.2~svn82.orig/crypto.c:127:48: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SHA256_DIGEST_LENGTH [valueFlowBailoutIncompleteVar] faifa-0.2~svn82.orig/crypto.c:133:2: error: Memory leak: password_hash [memleak] faifa-0.2~svn82.orig/faifa.c:101:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PCAP_ERRBUF_SIZE [valueFlowBailoutIncompleteVar] faifa-0.2~svn82.orig/faifa.c:331:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ETHER_ADDR_LEN [valueFlowBailoutIncompleteVar] faifa-0.2~svn82.orig/faifa.c:341:32: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ETHER_ADDR_LEN [valueFlowBailoutIncompleteVar] faifa-0.2~svn82.orig/faifa.c:78:2: style:inconclusive: Statements following 'return' will never be executed. [unreachableCode] faifa-0.2~svn82.orig/faifa.c:242:68: style:inconclusive: Function 'faifa_loop' argument 3 names different: declaration '' definition 'user'. [funcArgNamesDifferentUnnamed] faifa-0.2~svn82.orig/faifa.c:90:28: style: Parameter 'faifa' can be declared as pointer to const [constParameterPointer] faifa-0.2~svn82.orig/faifa.c:265:59: style: Parameter 'sep' can be declared as pointer to const [constParameterPointer] faifa-0.2~svn82.orig/faifa.c:268:12: style: Variable 'pbuf' can be declared as pointer to const [constVariablePointer] faifa-0.2~svn82.orig/frame.c:2273:34: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ETHER_ADDR_LEN [valueFlowBailoutIncompleteVar] faifa-0.2~svn82.orig/frame.c:2389:3: warning: Assignment of function parameter has no effect outside the function. Did you forget dereferencing it? [uselessAssignmentPtrArg] faifa-0.2~svn82.orig/frame.c:2181:2: style: Obsolescent function 'bcopy' called. It is recommended to use 'memcpy' or 'memmove' instead. [prohibitedbcopyCalled] faifa-0.2~svn82.orig/frame.c:2325:2: style: Obsolescent function 'bzero' called. It is recommended to use 'memset' instead. [prohibitedbzeroCalled] faifa-0.2~svn82.orig/frame.c:2385:2: style: Obsolescent function 'bzero' called. It is recommended to use 'memset' instead. [prohibitedbzeroCalled] faifa-0.2~svn82.orig/frame.c:960:21: warning: Logical disjunction always evaluates to true: direction >= 0 || direction <= 2. [incorrectLogicOperator] faifa-0.2~svn82.orig/frame.c:1346:20: warning: Logical disjunction always evaluates to true: duration >= 0 || duration <= 60. [incorrectLogicOperator] faifa-0.2~svn82.orig/frame.c:375:2: warning: %hx in format string (no. 1) requires 'unsigned short' but the argument type is 'unsigned int'. [invalidPrintfArgType_uint] faifa-0.2~svn82.orig/frame.c:582:2: warning: %d in format string (no. 1) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] faifa-0.2~svn82.orig/frame.c:743:2: warning: %d in format string (no. 1) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] faifa-0.2~svn82.orig/frame.c:867:2: warning: %d in format string (no. 1) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] faifa-0.2~svn82.orig/frame.c:868:2: warning: %d in format string (no. 1) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] faifa-0.2~svn82.orig/frame.c:869:2: warning: %d in format string (no. 1) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] faifa-0.2~svn82.orig/frame.c:870:2: warning: %d in format string (no. 1) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] faifa-0.2~svn82.orig/frame.c:871:2: warning: %d in format string (no. 1) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] faifa-0.2~svn82.orig/frame.c:872:2: warning: %d in format string (no. 1) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] faifa-0.2~svn82.orig/frame.c:873:2: warning: %d in format string (no. 1) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] faifa-0.2~svn82.orig/frame.c:874:2: warning: %d in format string (no. 1) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] faifa-0.2~svn82.orig/frame.c:875:2: warning: %d in format string (no. 1) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] faifa-0.2~svn82.orig/frame.c:876:2: warning: %d in format string (no. 1) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] faifa-0.2~svn82.orig/frame.c:901:2: warning: %d in format string (no. 1) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] faifa-0.2~svn82.orig/frame.c:938:2: warning: %d in format string (no. 1) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] faifa-0.2~svn82.orig/frame.c:941:2: warning: %d in format string (no. 1) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] faifa-0.2~svn82.orig/frame.c:1201:2: warning: %hx in format string (no. 1) requires 'unsigned short' but the argument type is 'unsigned int'. [invalidPrintfArgType_uint] faifa-0.2~svn82.orig/frame.c:1201:2: warning: %hx in format string (no. 2) requires 'unsigned short' but the argument type is 'unsigned int'. [invalidPrintfArgType_uint] faifa-0.2~svn82.orig/frame.c:1201:2: warning: %hx in format string (no. 3) requires 'unsigned short' but the argument type is 'unsigned int'. [invalidPrintfArgType_uint] faifa-0.2~svn82.orig/frame.c:1214:2: warning: %hx in format string (no. 2) requires 'unsigned short' but the argument type is 'unsigned int'. [invalidPrintfArgType_uint] faifa-0.2~svn82.orig/frame.c:1216:2: warning: %hx in format string (no. 2) requires 'unsigned short' but the argument type is 'unsigned int'. [invalidPrintfArgType_uint] faifa-0.2~svn82.orig/frame.c:1218:2: warning: %hx in format string (no. 2) requires 'unsigned short' but the argument type is 'unsigned int'. [invalidPrintfArgType_uint] faifa-0.2~svn82.orig/frame.c:1220:2: warning: %hx in format string (no. 2) requires 'unsigned short' but the argument type is 'unsigned int'. [invalidPrintfArgType_uint] faifa-0.2~svn82.orig/frame.c:1222:2: warning: %hx in format string (no. 1) requires 'unsigned short' but the argument type is 'unsigned int'. [invalidPrintfArgType_uint] faifa-0.2~svn82.orig/frame.c:1222:2: warning: %hx in format string (no. 2) requires 'unsigned short' but the argument type is 'unsigned int'. [invalidPrintfArgType_uint] faifa-0.2~svn82.orig/frame.c:1222:2: warning: %hx in format string (no. 3) requires 'unsigned short' but the argument type is 'unsigned int'. [invalidPrintfArgType_uint] faifa-0.2~svn82.orig/frame.c:1322:2: warning: %hx in format string (no. 1) requires 'unsigned short' but the argument type is 'unsigned int'. [invalidPrintfArgType_uint] faifa-0.2~svn82.orig/frame.c:1328:2: warning: %d in format string (no. 1) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] faifa-0.2~svn82.orig/frame.c:1328:2: warning: %hx in format string (no. 2) requires 'unsigned short' but the argument type is 'unsigned int'. [invalidPrintfArgType_uint] faifa-0.2~svn82.orig/frame.c:1329:2: warning: %hx in format string (no. 1) requires 'unsigned short' but the argument type is 'unsigned int'. [invalidPrintfArgType_uint] faifa-0.2~svn82.orig/frame.c:1366:2: warning: %d in format string (no. 1) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] faifa-0.2~svn82.orig/frame.c:516:2: warning: fscanf() without field width limits can crash with huge input data. [invalidscanf] faifa-0.2~svn82.orig/frame.c:1401:2: warning: fscanf() without field width limits can crash with huge input data. [invalidscanf] faifa-0.2~svn82.orig/frame.c:1410:3: warning: fscanf() without field width limits can crash with huge input data. [invalidscanf] faifa-0.2~svn82.orig/frame.c:98:40: style: Parameter 'sep' can be declared as pointer to const [constParameterPointer] faifa-0.2~svn82.orig/frame.c:101:12: style: Variable 'p' can be declared as pointer to const [constVariablePointer] faifa-0.2~svn82.orig/frame.c:134:35: style: Parameter 'UNUSED_buf' can be declared as pointer to const. However it seems that 'init_empty_frame' is a callback function, if 'UNUSED_buf' is declared with const you might also need to cast function pointer(s). [constParameterCallback] faifa-0.2~svn82.orig/frame.c:2164:17: note: You might need to cast the function pointer here faifa-0.2~svn82.orig/frame.c:134:35: note: Parameter 'UNUSED_buf' can be declared as pointer to const faifa-0.2~svn82.orig/frame.c:134:71: style: Parameter 'UNUSED_user' can be declared as pointer to const. However it seems that 'init_empty_frame' is a callback function, if 'UNUSED_user' is declared with const you might also need to cast function pointer(s). [constParameterCallback] faifa-0.2~svn82.orig/frame.c:2164:17: note: You might need to cast the function pointer here faifa-0.2~svn82.orig/frame.c:134:71: note: Parameter 'UNUSED_user' can be declared as pointer to const faifa-0.2~svn82.orig/frame.c:167:40: style: Variable 'mm' can be declared as pointer to const [constVariablePointer] faifa-0.2~svn82.orig/frame.c:195:35: style: Variable 'mm' can be declared as pointer to const [constVariablePointer] faifa-0.2~svn82.orig/frame.c:235:34: style: Variable 'mm' can be declared as pointer to const [constVariablePointer] faifa-0.2~svn82.orig/frame.c:426:28: style: Variable 'mm' can be declared as pointer to const [constVariablePointer] faifa-0.2~svn82.orig/frame.c:441:28: style: Variable 'mm' can be declared as pointer to const [constVariablePointer] faifa-0.2~svn82.orig/frame.c:478:37: style: Variable 'mm' can be declared as pointer to const [constVariablePointer] faifa-0.2~svn82.orig/frame.c:493:31: style: Variable 'mm' can be declared as pointer to const [constVariablePointer] faifa-0.2~svn82.orig/frame.c:553:33: style: Variable 'mm' can be declared as pointer to const [constVariablePointer] faifa-0.2~svn82.orig/frame.c:608:32: style: Variable 'mm' can be declared as pointer to const [constVariablePointer] faifa-0.2~svn82.orig/frame.c:626:35: style: Variable 'mm' can be declared as pointer to const [constVariablePointer] faifa-0.2~svn82.orig/frame.c:636:50: style: Parameter 'hdr' can be declared as pointer to const [constParameterPointer] faifa-0.2~svn82.orig/frame.c:648:51: style: Parameter 'config' can be declared as pointer to const [constParameterPointer] faifa-0.2~svn82.orig/frame.c:689:22: style: Variable 'status' can be declared as pointer to const [constVariablePointer] faifa-0.2~svn82.orig/frame.c:726:36: style: Variable 'mm' can be declared as pointer to const [constVariablePointer] faifa-0.2~svn82.orig/frame.c:759:78: style: Parameter 'UNUSED_user' can be declared as pointer to const. However it seems that 'hpav_init_get_enet_phy_settings_request' is a callback function, if 'UNUSED_user' is declared with const you might also need to cast function pointer(s). [constParameterCallback] faifa-0.2~svn82.orig/frame.c:2048:17: note: You might need to cast the function pointer here faifa-0.2~svn82.orig/frame.c:759:78: note: Parameter 'UNUSED_user' can be declared as pointer to const faifa-0.2~svn82.orig/frame.c:762:40: style: Variable 'mm' can be declared as pointer to const [constVariablePointer] faifa-0.2~svn82.orig/frame.c:772:40: style: Variable 'mm' can be declared as pointer to const [constVariablePointer] faifa-0.2~svn82.orig/frame.c:860:60: style: Parameter 'stats' can be declared as pointer to const [constParameterPointer] faifa-0.2~svn82.orig/frame.c:883:38: style: Variable 'mm' can be declared as pointer to const [constVariablePointer] faifa-0.2~svn82.orig/frame.c:935:39: style: Variable 'mm' can be declared as pointer to const [constVariablePointer] faifa-0.2~svn82.orig/frame.c:998:54: style: Parameter 'tx' can be declared as pointer to const [constParameterPointer] faifa-0.2~svn82.orig/frame.c:1007:54: style: Parameter 'rx' can be declared as pointer to const [constParameterPointer] faifa-0.2~svn82.orig/frame.c:1086:15: style: Variable 'controls' can be declared as const array [constVariable] faifa-0.2~svn82.orig/frame.c:1129:26: style: Variable 'mm' can be declared as pointer to const [constVariablePointer] faifa-0.2~svn82.orig/frame.c:1140:15: style: Variable 'states' can be declared as const array [constVariable] faifa-0.2~svn82.orig/frame.c:1169:49: style: Parameter 'fc' can be declared as pointer to const [constParameterPointer] faifa-0.2~svn82.orig/frame.c:1207:47: style: Parameter 'bcn' can be declared as pointer to const [constParameterPointer] faifa-0.2~svn82.orig/frame.c:1314:32: style: Variable 'mm' can be declared as pointer to const [constVariablePointer] faifa-0.2~svn82.orig/frame.c:1362:27: style: Variable 'mm' can be declared as pointer to const [constVariablePointer] faifa-0.2~svn82.orig/frame.c:1375:34: style: Variable 'mm' can be declared as pointer to const [constVariablePointer] faifa-0.2~svn82.orig/frame.c:1445:22: style: Variable 'status' can be declared as pointer to const [constVariablePointer] faifa-0.2~svn82.orig/frame.c:2081:40: style: Variable 'mm' can be declared as pointer to const [constVariablePointer] faifa-0.2~svn82.orig/frame.c:2179:49: style: Parameter 'oui' can be declared as pointer to const [constParameterPointer] faifa-0.2~svn82.orig/frame.c:2267:53: style: Parameter 'da' can be declared as pointer to const [constParameterPointer] faifa-0.2~svn82.orig/frame.c:2267:67: style: Parameter 'sa' can be declared as pointer to const [constParameterPointer] faifa-0.2~svn82.orig/frame.c:2533:13: style: Variable 'eth_type' can be declared as pointer to const [constVariablePointer] faifa-0.2~svn82.orig/frame.c:2389:6: style: Variable 'da' is assigned a value that is never used. [unreadVariable] faifa-0.2~svn82.orig/main.c:63:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] faifa-0.2~svn82.orig/main.c:71:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] faifa-0.2~svn82.orig/main.c:101:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ETHER_ADDR_LEN [valueFlowBailoutIncompleteVar] faifa-0.2~svn82.orig/main.c:61:25: style: Parameter 'message' can be declared as pointer to const [constParameterPointer] faifa-0.2~svn82.orig/main.c:94:8: style: Variable 'opt_macaddr' can be declared as pointer to const [constVariablePointer] faifa-0.2~svn82.orig/main.c:95:8: style: Variable 'opt_err_stream' can be declared as pointer to const [constVariablePointer] faifa-0.2~svn82.orig/main.c:96:8: style: Variable 'opt_out_stream' can be declared as pointer to const [constVariablePointer] faifa-0.2~svn82.orig/main.c:97:8: style: Variable 'opt_in_stream' can be declared as pointer to const [constVariablePointer] diff: head faifa-0.2~svn82.orig/faifa.c:242:68: style:inconclusive: Function 'faifa_loop' argument 3 names different: declaration '' definition 'user'. [funcArgNamesDifferentUnnamed] head faifa-0.2~svn82.orig/frame.c:1169:49: style: Parameter 'fc' can be declared as pointer to const [constParameterPointer] head faifa-0.2~svn82.orig/frame.c:1207:47: style: Parameter 'bcn' can be declared as pointer to const [constParameterPointer] head faifa-0.2~svn82.orig/frame.c:1314:32: style: Variable 'mm' can be declared as pointer to const [constVariablePointer] DONE