2025-05-08 03:55 ftp://ftp.de.debian.org/debian/pool/main/s/sshguard/sshguard_2.4.3.orig.tar.gz cppcheck-options: --library=posix --library=gnu --library=bsd --library=bsd --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-59-generic-x86_64-with-glibc2.39 python: 3.12.3 client-version: 1.3.67 compiler: g++ (Ubuntu 14.2.0-4ubuntu2~24.04) 14.2.0 cppcheck: head 2.17.0 head-info: ebc80c0 (2025-05-07 18:59:31 +0200) count: 187 187 elapsed-time: 36.7 28.9 head-timing-info: old-timing-info: head results: sshguard-2.4.3/src/blocker/blocker.c:74:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_NDELAY [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/blocker/blocker.c:97:37: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable attack_addr_seeker [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/blocker/blocker.c:164:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_INFO [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/blocker/blocker.c:192:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_DEBUG [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/blocker/blocker.c:280:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_DEBUG [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/blocker/blocker.c:293:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_INFO [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/blocker/blocker.c:261:37: warning: Identical inner 'if' condition is always true. [identicalInnerCondition] sshguard-2.4.3/src/blocker/blocker.c:255:33: note: outer condition: opts.blacklist_filename!=NULL sshguard-2.4.3/src/blocker/blocker.c:261:37: note: identical inner condition: opts.blacklist_filename!=NULL sshguard-2.4.3/src/blocker/blocker.c:222:9: warning:inconclusive: If memory allocation fails, then there is a possible null pointer dereference: tmpent [nullPointerOutOfMemory] sshguard-2.4.3/src/blocker/blocker.c:212:24: note: Assuming allocation function fails sshguard-2.4.3/src/blocker/blocker.c:212:24: note: Assignment 'tmpent=malloc(sizeof(attacker_t))', assigned value is 0 sshguard-2.4.3/src/blocker/blocker.c:222:9: note: Null pointer dereference sshguard-2.4.3/src/blocker/blocker.c:240:16: warning: If memory allocation fails, then there is a possible null pointer dereference: offenderent [nullPointerOutOfMemory] sshguard-2.4.3/src/blocker/blocker.c:238:43: note: Assuming allocation function fails sshguard-2.4.3/src/blocker/blocker.c:238:23: note: Assignment 'offenderent=(attacker_t*)malloc(sizeof(attacker_t))', assigned value is 0 sshguard-2.4.3/src/blocker/blocker.c:240:16: note: Null pointer dereference sshguard-2.4.3/src/blocker/blocker.c:242:9: warning: If memory allocation fails, then there is a possible null pointer dereference: offenderent [nullPointerOutOfMemory] sshguard-2.4.3/src/blocker/blocker.c:238:43: note: Assuming allocation function fails sshguard-2.4.3/src/blocker/blocker.c:238:23: note: Assignment 'offenderent=(attacker_t*)malloc(sizeof(attacker_t))', assigned value is 0 sshguard-2.4.3/src/blocker/blocker.c:242:9: note: Null pointer dereference sshguard-2.4.3/src/blocker/blocklist.c:33:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/blocker/blocklist.c:40:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/blocker/blocklist.c:49:28: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PTHREAD_CANCEL_DISABLE [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/blocker/blocklist.c:91:35: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable attack_addr_seeker [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/blocker/blocklist.c:129:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_ERR [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/blocker/blocklist.c:102:17: style: Variable 'tmpent' can be declared as pointer to const [constVariablePointer] sshguard-2.4.3/src/blocker/hash_32a.c:123:38: style:inconclusive: Function 'fnv_32a_str' argument 2 names different: declaration 'hashval' definition 'hval'. [funcArgNamesDifferent] sshguard-2.4.3/src/blocker/fnv.h:125:46: note: Function 'fnv_32a_str' argument 2 names different: declaration 'hashval' definition 'hval'. sshguard-2.4.3/src/blocker/hash_32a.c:123:38: note: Function 'fnv_32a_str' argument 2 names different: declaration 'hashval' definition 'hval'. sshguard-2.4.3/src/blocker/sshguard_blacklist.c:42:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable attacker_t [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/blocker/sshguard_blacklist.c:66:41: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable list_t [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/blocker/sshguard_blacklist.c:123:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_WARNING [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/blocker/sshguard_blacklist.c:148:39: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable attack_addr_seeker [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/blocker/sshguard_blacklist.c:90:13: warning: %d in format string (no. 1) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] sshguard-2.4.3/src/blocker/sshguard_blacklist.c:100:13: warning: %d in format string (no. 1) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] sshguard-2.4.3/src/blocker/sshguard_blacklist.c:149:26: style: Variable 'el' can be declared as pointer to const [constVariablePointer] sshguard-2.4.3/src/blocker/sshguard_options.c:38:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/blocker/sshguard_options.c:62:65: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable optarg [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/blocker/sshguard_options.c:63:21: warning: sscanf() without field width limits can crash with huge input data. [invalidscanf] sshguard-2.4.3/src/blocker/sshguard_whitelist.c:118:33: error: There is an unknown macro here somewhere. Configuration is required. If REGEXLIB_IPV4 is a macro then please configure it. [unknownMacro] sshguard-2.4.3/src/common/simclist.c:1015:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/common/simclist.c:1070:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_RDONLY [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/common/simclist.c:1087:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/common/simclist.c:1240:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/common/simclist.c:1351:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_RDWR [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/common/simclist.c:1364:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_RDONLY [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/common/simclist.c:836:9: style: Condition '!(last>first)' is always false [knownConditionTrueFalse] sshguard-2.4.3/src/common/simclist.c:827:14: note: Assuming that condition 'last<=first' is not redundant sshguard-2.4.3/src/common/simclist.c:830:24: note: Assuming condition is false sshguard-2.4.3/src/common/simclist.c:836:9: note: Condition '!(last>first)' is always false sshguard-2.4.3/src/common/simclist.c:836:17: style: Condition 'last>first' is always true [knownConditionTrueFalse] sshguard-2.4.3/src/common/simclist.c:827:14: note: Assuming that condition 'last<=first' is not redundant sshguard-2.4.3/src/common/simclist.c:830:24: note: Assuming condition is false sshguard-2.4.3/src/common/simclist.c:836:17: note: Condition 'last>first' is always true sshguard-2.4.3/src/common/simclist.c:248:6: warning: If memory allocation fails, then there is a possible null pointer dereference: l->tail_sentinel [nullPointerOutOfMemory] sshguard-2.4.3/src/common/simclist.c:246:53: note: Assuming allocation function fails sshguard-2.4.3/src/common/simclist.c:246:24: note: Assignment 'l->tail_sentinel=(struct list_entry_s*)malloc(sizeof(struct list_entry_s))', assigned value is 0 sshguard-2.4.3/src/common/simclist.c:248:6: note: Null pointer dereference sshguard-2.4.3/src/common/simclist.c:716:11: warning: If memory allocation fails, then there is a possible null pointer dereference: el->next [nullPointerOutOfMemory] sshguard-2.4.3/src/common/simclist.c:715:49: note: Assuming allocation function fails sshguard-2.4.3/src/common/simclist.c:715:20: note: Assignment 'el->next=(struct list_entry_s*)malloc(sizeof(struct list_entry_s))', assigned value is 0 sshguard-2.4.3/src/common/simclist.c:716:11: note: Null pointer dereference sshguard-2.4.3/src/common/simclist.c:726:11: warning: If memory allocation fails, then there is a possible null pointer dereference: el->next [nullPointerOutOfMemory] sshguard-2.4.3/src/common/simclist.c:725:49: note: Assuming allocation function fails sshguard-2.4.3/src/common/simclist.c:725:20: note: Assignment 'el->next=(struct list_entry_s*)malloc(sizeof(struct list_entry_s))', assigned value is 0 sshguard-2.4.3/src/common/simclist.c:726:11: note: Null pointer dereference sshguard-2.4.3/src/common/simclist.c:792:61: style: Parameter 'l' can be declared as pointer to const [constParameterPointer] sshguard-2.4.3/src/common/simclist.c:794:49: style: Parameter 'lel' can be declared as pointer to const [constParameterPointer] sshguard-2.4.3/src/fw/hosts.c:73:27: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable S_IRUSR [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/fw/hosts.c:99:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/fw/hosts.c:198:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/fw/hosts.c:338:34: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ADDRLEN [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/fw/hosts.c:346:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/fw/hosts.c:354:21: portability: Non reentrant function 'strtok' called. For threadsafe applications it is recommended to use the reentrant replacement function 'strtok_r'. [prohibitedstrtokCalled] sshguard-2.4.3/src/fw/hosts.c:355:25: portability: Non reentrant function 'strtok' called. For threadsafe applications it is recommended to use the reentrant replacement function 'strtok_r'. [prohibitedstrtokCalled] sshguard-2.4.3/src/fw/hosts.c:356:22: portability: Non reentrant function 'strtok' called. For threadsafe applications it is recommended to use the reentrant replacement function 'strtok_r'. [prohibitedstrtokCalled] sshguard-2.4.3/src/fw/hosts.c:61:21: style: Variable 'A' can be declared as pointer to const [constVariablePointer] sshguard-2.4.3/src/fw/hosts.c:62:21: style: Variable 'B' can be declared as pointer to const [constVariablePointer] sshguard-2.4.3/src/fw/hosts.c:206:25: style: Variable 'curr' can be declared as pointer to const [constVariablePointer] sshguard-2.4.3/src/fw/hosts.c:354:15: style: Variable 'cmd' can be declared as pointer to const [constVariablePointer] sshguard-2.4.3/src/fw/hosts.c:355:15: style: Variable 'address' can be declared as pointer to const [constVariablePointer] sshguard-2.4.3/src/fw/hosts.c:356:15: style: Variable 'type' can be declared as pointer to const [constVariablePointer] sshguard-2.4.3/src/parser/attack.c:20:32: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable AF_INET [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/parser/attack.c:36:57: error: Memory leak: addrinfo_result [memleak] sshguard-2.4.3/src/parser/attack.c:23:29: style: Variable 'foo4' can be declared as pointer to const [constVariablePointer] sshguard-2.4.3/src/parser/attack.c:38:34: style: Variable 'foo6' can be declared as pointer to const [constVariablePointer] attack_parser.y:173:43: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SERVICES_SSH [valueFlowBailoutIncompleteVar] attack_parser.c:1398:5: warning: Assignment of function parameter has no effect outside the function. Did you forget dereferencing it? [uselessAssignmentPtrArg] attack_parser.c:1880:18: style: Condition '0<=yyi' is always true [knownConditionTrueFalse] attack_parser.c:1879:36: note: Assignment 'yyi=yypgoto[yylhs]+*yyssp', assigned value is greater than -1 attack_parser.c:1880:18: note: Condition '0<=yyi' is always true attack_parser.c:1483:3: style: The comparison '0 <= yystate' is always true. [knownConditionTrueFalse] attack_parser.c:1425:31: note: 'yystate' is assigned value '0' here. attack_parser.c:1483:3: note: The comparison '0 <= yystate' is always true. attack_parser.y:388:55: style: Parameter 'a' can be declared as pointer to const [constParameterPointer] attack_parser.c:1398:11: style: Variable 'yymsg' is assigned a value that is never used. [unreadVariable] attack_scanner.c:128755:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdin [valueFlowBailoutIncompleteVar] attack_scanner.c:129766:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EOF [valueFlowBailoutIncompleteVar] attack_scanner.c:130123:15: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] attack_scanner.c:130399:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] attack_scanner.c:130128:2: warning: Possible null pointer dereference: b [nullPointer] attack_scanner.c:129990:18: note: Calling function 'yy_init_buffer', 1st argument '(yy_buffer_stack)?(yy_buffer_stack)[yy_buffer_stack_top]:NULL' value is 0 attack_scanner.c:130128:2: note: Null pointer dereference attack_scanner.c:130132:2: warning: Possible null pointer dereference: b [nullPointer] attack_scanner.c:129990:18: note: Calling function 'yy_init_buffer', 1st argument '(yy_buffer_stack)?(yy_buffer_stack)[yy_buffer_stack_top]:NULL' value is 0 attack_scanner.c:130132:2: note: Null pointer dereference attack_scanner.c:129766:3: style: Redundant initialization for 'c'. The initialized value is overwritten before it is read. [redundantInitialization] attack_scanner.c:129766:3: note: c is initialized attack_scanner.c:129766:3: note: c is overwritten attack_scanner.l:147:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:152:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:158:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:164:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:170:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:185:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:190:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:202:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:209:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:214:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:221:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:226:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:233:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:238:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:243:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:248:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:254:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:259:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:267:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:273:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:278:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:284:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:290:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:296:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:301:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:307:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:313:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:318:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:323:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:329:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:334:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:339:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:344:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:350:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:355:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:362:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:368:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:373:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:378:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:383:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:389:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:394:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:400:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:405:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:411:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:416:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:423:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:430:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:438:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:444:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:449:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:454:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:460:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:465:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:470:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:475:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:480:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:485:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:490:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:495:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:501:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:506:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:513:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:518:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:524:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:529:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:535:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:540:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:546:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:551:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:557:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:562:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:568:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:573:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:579:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:586:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:591:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:598:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:605:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:610:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:616:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:623:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:629:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:636:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:641:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:647:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:652:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:658:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:663:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:668:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:673:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:680:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:685:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:692:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:698:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:703:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:710:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:716:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:721:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:727:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:738:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.l:751:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] attack_scanner.c:129853:59: style:inconclusive: Function 'yy_try_NUL_trans' argument 1 names different: declaration 'current_state' definition 'yy_current_state'. [funcArgNamesDifferent] attack_scanner.c:415:55: note: Function 'yy_try_NUL_trans' argument 1 names different: declaration 'current_state' definition 'yy_current_state'. attack_scanner.c:129853:59: note: Function 'yy_try_NUL_trans' argument 1 names different: declaration 'current_state' definition 'yy_current_state'. attack_scanner.c:130346:46: style:inconclusive: Function 'yy_scan_string' argument 1 names different: declaration 'yy_str' definition 'yystr'. [funcArgNamesDifferent] attack_scanner.c:362:46: note: Function 'yy_scan_string' argument 1 names different: declaration 'yy_str' definition 'yystr'. attack_scanner.c:130346:46: note: Function 'yy_scan_string' argument 1 names different: declaration 'yy_str' definition 'yystr'. attack_scanner.c:130361:46: style:inconclusive: Function 'yy_scan_bytes' argument 1 names different: declaration 'bytes' definition 'yybytes'. [funcArgNamesDifferent] attack_scanner.c:363:45: note: Function 'yy_scan_bytes' argument 1 names different: declaration 'bytes' definition 'yybytes'. attack_scanner.c:130361:46: note: Function 'yy_scan_bytes' argument 1 names different: declaration 'bytes' definition 'yybytes'. attack_scanner.c:130361:60: style:inconclusive: Function 'yy_scan_bytes' argument 2 names different: declaration 'len' definition '_yybytes_len'. [funcArgNamesDifferent] attack_scanner.c:363:56: note: Function 'yy_scan_bytes' argument 2 names different: declaration 'len' definition '_yybytes_len'. attack_scanner.c:130361:60: note: Function 'yy_scan_bytes' argument 2 names different: declaration 'len' definition '_yybytes_len'. attack_scanner.c:130505:24: style:inconclusive: Function 'yyset_debug' argument 1 names different: declaration 'debug_flag' definition '_bdebug'. [funcArgNamesDifferent] attack_scanner.c:128538:24: note: Function 'yyset_debug' argument 1 names different: declaration 'debug_flag' definition '_bdebug'. attack_scanner.c:130505:24: note: Function 'yyset_debug' argument 1 names different: declaration 'debug_flag' definition '_bdebug'. attack_scanner.c:129678:8: style: Variable 'source' can be declared as pointer to const [constVariablePointer] attack_scanner.l:380:25: style: Parameter 'str' can be declared as pointer to const [constParameterPointer] sshguard-2.4.3/src/parser/parser.c:37:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/parser/parser.c:120:36: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdin [valueFlowBailoutIncompleteVar] sshguard-2.4.3/src/parser/parser.c:52:13: warning:inconclusive: The buffer 'expected' may not be null-terminated after the call to strncpy(). [terminateStrncpy] sshguard-2.4.3/src/parser/parser.c:63:17: warning: %d in format string (no. 1) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] sshguard-2.4.3/src/parser/parser.c:66:17: warning: %d in format string (no. 1) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] sshguard-2.4.3/src/parser/parser.c:144:9: warning: %d in format string (no. 1) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] diff: DONE