2025-05-06 18:37 ftp://ftp.de.debian.org/debian/pool/main/o/opendmarc/opendmarc_1.4.2.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 -j3 platform: Linux-6.8.0-1022-oracle-aarch64-with-glibc2.39 python: 3.12.3 client-version: 1.3.67 compiler: g++ (Ubuntu 13.3.0-6ubuntu2~24.04) 13.3.0 cppcheck: head 2.17.0 head-info: 7303e80 (2025-05-06 19:50:58 +0200) count: 233 233 elapsed-time: 15.3 24.4 head-timing-info: old-timing-info: head results: OpenDMARC-rel-opendmarc-1-4-2/contrib/rddmarc/mysql_ip6.c:39:52: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable STRING_RESULT [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/contrib/rddmarc/mysql_ip6.c:53:52: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable STRING_RESULT [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/contrib/rddmarc/mysql_ip6.c:80:52: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable STRING_RESULT [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/contrib/rddmarc/mysql_ip6.c:97:52: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable STRING_RESULT [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/contrib/rddmarc/mysql_ip6.c:37:44: style: Parameter 'args' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/contrib/rddmarc/mysql_ip6.c:48:39: style: Parameter 'args' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/contrib/rddmarc/mysql_ip6.c:51:9: style: Variable 'p' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/contrib/rddmarc/mysql_ip6.c:78:44: style: Parameter 'args' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_dns.c:147:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable HOST_NOT_FOUND [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_hash.c:105:7: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_hash.c:226:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_hash.c:287:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_hash.c:437:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_hash.c:500:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_dns.c:194:5: style: Variable 'bp' is reassigned a value before the old one has been used. [redundantAssignment] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_dns.c:189:5: note: bp is assigned OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_dns.c:194:5: note: bp is overwritten OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_dns.c:346:3: style: 'continue' is redundant since it is the last statement in a loop. [redundantContinue] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_dns.c:107:28: style: Parameter 'domain' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_dns.c:112:11: style: Variable 'gote_ptr' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_hash.c:201:2: warning: Assignment of function parameter has no effect outside the function. Did you forget dereferencing it? [uselessAssignmentPtrArg] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_hash.c:256:2: warning: Assignment of function parameter has no effect outside the function. Did you forget dereferencing it? [uselessAssignmentPtrArg] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_hash.c:73:13: style: Condition 'c!=0' is always true [knownConditionTrueFalse] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_hash.c:51:9: style: Variable 's' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_hash.c:280:69: style: Parameter 'data' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_hash.c:140:24: warning: Shifting 32-bit value by 59 bits is undefined behaviour. See condition at line 137. [shiftTooManyBits] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_hash.c:137:10: note: Assuming that condition 'p2<=(sizeof(unsigned long)*8-1-5)' is not redundant OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_hash.c:140:24: note: Shift OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_hash.c:140:24: warning: Either the condition 'p2<=(sizeof(unsigned long)*8-1-5)' is redundant or there is signed integer overflow for expression '1<revbuf OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_tld.c:267:10: note: opposite inner condition: rp==revbuf OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_tld.c:290:12: style: Variable '*(rp+1)' is reassigned a value before the old one has been used. [redundantAssignment] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_tld.c:276:12: note: *(rp+1) is assigned OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_tld.c:290:12: note: *(rp+1) is overwritten OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_util.c:366:3: warning: Assignment of function parameter has no effect outside the function. Did you forget dereferencing it? [uselessAssignmentPtrArg] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_tld.c:108:49: style: Parameter 'commentstring' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_tld.c:108:70: style: Parameter 'drop' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_tld.c:108:82: style: Parameter 'except' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_tld.c:241:9: style: Variable 'vp' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_tld.c:301:12: style: Variable 'cp' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_util.c:64:33: style: Parameter 'str' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_util.c:196:35: style: Parameter 'raw' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_util.c:374:32: style: Parameter 'str' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_util.c:103:7: style: Variable 'ary' is assigned a value that is never used. [unreadVariable] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_util.c:110:7: style: Variable 'ary' is assigned a value that is never used. [unreadVariable] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_util.c:418:8: style: Variable 'ary' is assigned a value that is never used. [unreadVariable] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_util.c:425:8: style: Variable 'ary' is assigned a value that is never used. [unreadVariable] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/tests/test_alignment.c:31:9: style: Variable 'srcdir' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/tests/test_dmarc_fetch.c:21:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/tests/test_dmarc_fetch.c:17:7: style: Variable 'pass' is assigned a value that is never used. [unreadVariable] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/tests/test_dmarc_fetch.c:17:23: style: Variable 'count' is assigned a value that is never used. [unreadVariable] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/tests/test_dmarc_parse.c:51:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/tests/test_dmarc_parse.c:65:8: style: Variable 'pctx' is assigned a value that is never used. [unreadVariable] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/tests/test_dns_lookup.c:29:9: style: Variable 'cp' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/tests/test_dns_lookup.c:157:8: style: Variable 'pctx' is assigned a value that is never used. [unreadVariable] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/tests/test_finddomain.c:39:52: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/tests/test_finddomain.c:30:10: style: Variable 'dp' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/tests/test_parse_to_buf.c:15:15: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable BUFSIZ [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/tests/test_parse_to_buf.c:17:23: style: Variable 'count' is assigned a value that is never used. [unreadVariable] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/tests/test_parse_to_buf.c:62:7: style: Variable 'pctx' is assigned a value that is never used. [unreadVariable] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/tests/test_xml_parse.c:14:40: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ENOENT [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/tests/test_xml_parse.c:20:9: style: Variable 'srcdir' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/tests/test_xml_parse.c:45:7: style: Variable 'ary' is assigned a value that is never used. [unreadVariable] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_xml.c:122:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable BUFSIZ [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_xml.c:548:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/config.c:151:8: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdin [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/config.c:97:3: warning: Possible null pointer dereference: prev [nullPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/config.c:92:10: note: Assignment 'prev=NULL', assigned value is 0 OpenDMARC-rel-opendmarc-1-4-2/opendmarc/config.c:94:22: note: Assuming condition is false OpenDMARC-rel-opendmarc-1-4-2/opendmarc/config.c:97:3: note: Null pointer dereference OpenDMARC-rel-opendmarc-1-4-2/opendmarc/config.c:208:6: style: 'continue' is redundant since it is the last statement in a loop. [redundantContinue] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/config.c:644:36: style: Parameter 'def' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:663:11: style: Condition 'ret==NULL' is always true [knownConditionTrueFalse] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:659:11: note: Assuming that condition 'ret!=0' is not redundant OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:663:11: note: Condition 'ret==NULL' is always true OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:692:11: style: Condition 'ret==NULL' is always true [knownConditionTrueFalse] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:688:11: note: Assuming that condition 'ret!=0' is not redundant OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:692:11: note: Condition 'ret==NULL' is always true OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:2000:9: warning: %d in format string (no. 1) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:128:52: style:inconclusive: Function 'opendmarc_policy_connect_init' argument 2 names different: declaration 'ip_type' definition 'is_ipv6'. [funcArgNamesDifferent] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/dmarc.h:116:69: note: Function 'opendmarc_policy_connect_init' argument 2 names different: declaration 'ip_type' definition 'is_ipv6'. OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:128:52: note: Function 'opendmarc_policy_connect_init' argument 2 names different: declaration 'ip_type' definition 'is_ipv6'. OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:364:66: style:inconclusive: Function 'opendmarc_policy_store_from_domain' argument 2 names different: declaration 'domain' definition 'from_domain'. [funcArgNamesDifferent] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/dmarc.h:124:85: note: Function 'opendmarc_policy_store_from_domain' argument 2 names different: declaration 'domain' definition 'from_domain'. OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:364:66: note: Function 'opendmarc_policy_store_from_domain' argument 2 names different: declaration 'domain' definition 'from_domain'. OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:409:98: style:inconclusive: Function 'opendmarc_policy_store_spf' argument 5 names different: declaration 'human_result' definition 'human_readable'. [funcArgNamesDifferent] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/dmarc.h:126:117: note: Function 'opendmarc_policy_store_spf' argument 5 names different: declaration 'human_result' definition 'human_readable'. OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:409:98: note: Function 'opendmarc_policy_store_spf' argument 5 names different: declaration 'human_result' definition 'human_readable'. OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:479:59: style:inconclusive: Function 'opendmarc_policy_store_dkim' argument 2 names different: declaration 'domain' definition 'd_equal_domain'. [funcArgNamesDifferent] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/dmarc.h:125:78: note: Function 'opendmarc_policy_store_dkim' argument 2 names different: declaration 'domain' definition 'd_equal_domain'. OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:479:59: note: Function 'opendmarc_policy_store_dkim' argument 2 names different: declaration 'domain' definition 'd_equal_domain'. OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:480:10: style:inconclusive: Function 'opendmarc_policy_store_dkim' argument 3 names different: declaration 'selector' definition 's_equal_selector'. [funcArgNamesDifferent] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/dmarc.h:125:94: note: Function 'opendmarc_policy_store_dkim' argument 3 names different: declaration 'selector' definition 's_equal_selector'. OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:480:10: note: Function 'opendmarc_policy_store_dkim' argument 3 names different: declaration 'selector' definition 's_equal_selector'. OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:480:32: style:inconclusive: Function 'opendmarc_policy_store_dkim' argument 4 names different: declaration 'result' definition 'dkim_result'. [funcArgNamesDifferent] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/dmarc.h:125:108: note: Function 'opendmarc_policy_store_dkim' argument 4 names different: declaration 'result' definition 'dkim_result'. OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:480:32: note: Function 'opendmarc_policy_store_dkim' argument 4 names different: declaration 'result' definition 'dkim_result'. OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:73:48: style: Parameter 'lib_init' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:110:52: style: Parameter 'lib_init' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:128:39: style: Parameter 'ip_addr' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:278:10: style: Variable 'ep' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:367:8: style: Variable 'dp' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:409:98: style: Parameter 'human_readable' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:480:10: style: Parameter 's_equal_selector' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:480:53: style: Parameter 'human_result' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:615:10: style: Variable 'ret' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:760:11: style: Variable 'bp' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:942:60: style: Parameter 'domain' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:944:21: style: Variable 'ep' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:1302:98: style: Parameter 'organizationaldomain' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:1335:44: style: Parameter 'pctx' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:1350:46: style: Parameter 'pctx' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:1365:45: style: Parameter 'pctx' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:1380:42: style: Parameter 'pctx' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:1395:43: style: Parameter 'pctx' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:1412:15: style: Variable 'ep' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:1450:50: style: Parameter 'pctx' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:1470:15: style: Variable 'ep' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:1508:43: style: Parameter 'pctx' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:1522:43: style: Parameter 'pctx' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:1551:10: style: Variable 'which' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:1587:10: style: Variable 'which' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_policy.c:1616:49: style: Parameter 'pctx' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc-arcares.c:118:13: style: Array index 'b' is used before limits check. [arrayIndexThenCheck] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc-arcares.c:77:73: style: Parameter 'str' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc-arcares.c:151:34: style: Parameter 'hdr' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc-arcares.c:239:38: style: Parameter 'hdr_arc' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc-arcares.c:204:23: style: Variable 'leading_space_len' is assigned a value that is never used. [unreadVariable] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc-arcseal.c:107:13: style: Array index 'b' is used before limits check. [arrayIndexThenCheck] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc-arcseal.c:65:73: style: Parameter 'str' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc-arcseal.c:139:33: style: Parameter 'hdr' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc-check.c:75:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc-check.c:63:8: style: Variable 'sp' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc-check.c:64:8: style: Variable 'adkim' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc-check.c:65:8: style: Variable 'aspf' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc-dstring.c:324:65: style: Parameter 'str' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc-dstring.c:365:43: style: Parameter 'dstr' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc-dstring.c:383:43: style: Parameter 'dstr' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:1084:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MAXHOSTNAMELEN [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:1273:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_PID [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:1349:15: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MAXPATHLEN [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:1664:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_ERR [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:1987:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_INFO [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:2154:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SMFIS_ACCEPT [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:2258:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_ERR [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:2349:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MAXHOSTNAMELEN [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:3880:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SMFIS_CONTINUE [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:3919:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SMFIS_CONTINUE [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:4030:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_ERR [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:4109:32: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_RDWR [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:4203:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:4292:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc-ar.c:300:42: style: Parameter 'str' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:3391:9: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:4635:9: portability: Non reentrant function 'getgrnam' called. For threadsafe applications it is recommended to use the reentrant replacement function 'getgrnam_r'. [prohibitedgetgrnamCalled] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:4642:11: portability: Non reentrant function 'getgrgid' called. For threadsafe applications it is recommended to use the reentrant replacement function 'getgrgid_r'. [prohibitedgetgrgidCalled] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:4663:8: portability: Non reentrant function 'getpwnam' called. For threadsafe applications it is recommended to use the reentrant replacement function 'getpwnam_r'. [prohibitedgetpwnamCalled] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:4671:10: portability: Non reentrant function 'getpwuid' called. For threadsafe applications it is recommended to use the reentrant replacement function 'getpwuid_r'. [prohibitedgetpwuidCalled] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:5224:8: portability: Non reentrant function 'getpwuid' called. For threadsafe applications it is recommended to use the reentrant replacement function 'getpwuid_r'. [prohibitedgetpwuidCalled] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:5331:2: style:inconclusive: Statements following noreturn function 'raise()' will never be executed. [unreachableCode] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:4836:7: style: Local variable 'status' shadows outer variable [shadowVariable] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:4239:6: note: Shadowed declaration OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:4836:7: note: Shadow variable OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:441:44: style: Parameter 'envdomain' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:449:8: style: Variable 'end' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:676:27: style: Parameter 'path' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:743:23: style: Parameter 'path' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:914:33: style: Parameter 'delim' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:1082:28: style: Parameter 'ip' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:1293:44: style: Parameter 'hname' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:1602:10: style: Variable 'eptr' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:1979:24: style: Variable 'conf' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:2141:24: style: Variable 'conf' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:2237:33: style: Parameter 'headerf' can be declared as pointer to const. However it seems that 'mlfi_header' is a callback function, if 'headerf' is declared with const you might also need to cast function pointer(s). [constParameterCallback] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:3939:2: note: You might need to cast the function pointer here OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:2237:33: note: Parameter 'headerf' can be declared as pointer to const OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:2237:48: style: Parameter 'headerv' can be declared as pointer to const. However it seems that 'mlfi_header' is a callback function, if 'headerv' is declared with const you might also need to cast function pointer(s). [constParameterCallback] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:3939:2: note: You might need to cast the function pointer here OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:2237:48: note: Parameter 'headerv' can be declared as pointer to const OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:2242:24: style: Variable 'conf' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:2746:13: style: Variable 'd' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:2947:13: style: Variable 'eptr' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:3373:15: style: Variable 'tm' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:4259:16: style: Variable 'gr' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:4268:8: style: Variable 'end' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:4383:9: style: Variable 'missing' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:1179:10: style: Variable 'exists' is assigned a value that is never used. [unreadVariable] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:2018:8: style: Variable 'conf' is assigned a value that is never used. [unreadVariable] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:2026:8: style: Variable 'conf' is assigned a value that is never used. [unreadVariable] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/opendmarc.c:2944:22: style: Variable 'arcchainlen' is assigned a value that is never used. [unreadVariable] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:111:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MI_SUCCESS [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:152:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:177:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:206:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:234:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:260:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:286:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:312:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:335:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:407:6: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SMFIS_CONTINUE [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:633:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:669:3: error: Memory leak: ain [memleak] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:82:28: style: Parameter 'evname' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:127:23: style: Variable 'tc' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:147:28: style: Parameter 'ctx' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:171:28: style: Parameter 'ctx' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:171:39: style: Parameter 'rcode' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:171:52: style: Parameter 'xcode' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:171:65: style: Parameter 'replytxt' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:200:29: style: Parameter 'ctx' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:200:49: style: Parameter 'hname' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:200:62: style: Parameter 'hvalue' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:228:29: style: Parameter 'ctx' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:228:40: style: Parameter 'hname' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:228:62: style: Parameter 'hvalue' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:254:30: style: Parameter 'ctx' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:254:41: style: Parameter 'reason' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:280:29: style: Parameter 'ctx' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:280:40: style: Parameter 'hname' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:280:53: style: Parameter 'hvalue' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:306:27: style: Parameter 'ctx' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:306:38: style: Parameter 'addr' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:329:27: style: Parameter 'ctx' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:329:38: style: Parameter 'addr' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:357:29: style: Parameter 'ctx' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:357:40: style: Parameter 'sym' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:383:59: style: Parameter 'file' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/test.c:616:8: style: Variable 'addr' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/parse.c:122:47: style: Parameter 'e' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/parse.c:319:17: style: Variable 'p' is assigned a value that is never used. [unreadVariable] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/parse.c:379:6: style: Variable 'err' is assigned a value that is never used. [unreadVariable] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/util.c:127:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable RLIMIT_NOFILE [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/util.c:179:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/util.c:281:9: warning: %d in format string (no. 1) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/util.c:281:9: warning: %d in format string (no. 2) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/util.c:281:9: warning: %d in format string (no. 3) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] OpenDMARC-rel-opendmarc-1-4-2/opendmarc/util.c:281:9: warning: %d in format string (no. 4) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_xml.c:357:10: portability: Non reentrant function 'gmtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'gmtime_r'. [prohibitedgmtimeCalled] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_xml.c:367:10: portability: Non reentrant function 'gmtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'gmtime_r'. [prohibitedgmtimeCalled] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_xml.c:328:5: style: 'continue' is redundant since it is the last statement in a loop. [redundantContinue] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_xml.c:61:18: style: Parameter 'tag' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_xml.c:93:14: style: Variable 'ep' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_xml.c:354:16: style: Variable 'tm' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_xml.c:364:16: style: Variable 'tm' can be declared as pointer to const [constVariablePointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_xml.c:535:27: style: Parameter 'fname' can be declared as pointer to const [constParameterPointer] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_xml.c:220:27: error: Uninitialized variable: reason_type [legacyUninitvar] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_xml.c:222:27: error: Uninitialized variable: reason_comment [legacyUninitvar] OpenDMARC-rel-opendmarc-1-4-2/libopendmarc/opendmarc_xml.c:548:10: style: Variable 'xerror' is assigned a value that is never used. [unreadVariable] diff: DONE