2024-04-04 02:18 ftp://ftp.de.debian.org/debian/pool/main/s/sagan/sagan_1.2.0.orig.tar.gz cppcheck-options: --library=posix --library=gnu --showtime=top5 --check-library --inconclusive --enable=style,information --inline-suppr --disable=missingInclude --suppress=unmatchedSuppression --template=daca2 --debug-warnings --suppress=autoNoType --suppress=valueFlowBailout --suppress=bailoutUninitVar --suppress=symbolDatabaseWarning --suppress=valueFlowBailoutIncompleteVar -D__GNUC__ --platform=unix64 -j4 platform: Linux-6.1.0-0.deb11.6-amd64-x86_64-with-glibc2.31 python: 3.9.2 client-version: 1.3.45 compiler: g++ (Debian 10.2.1-6) 10.2.1 20210110 cppcheck: head 2.13.0 head-info: edfcc31 (2024-04-03 23:39:33 +0200) count: 267 273 elapsed-time: 29.0 50.9 head-timing-info: Tokenizer::simplifyTokens1::ValueFlow: 24.4958s (avg. 24.4958s - 1 result(s)) valueFlowCondition(SimpleConditionHandler{}, tokenlist, symboldatabase, errorLogger, settings, skippedFunctions): 10.6955s (avg. 3.56517s - 3 result(s)) valueFlowAfterAssign(tokenlist, symboldatabase, errorLogger, settings, skippedFunctions): 6.23556s (avg. 2.07852s - 3 result(s)) valueFlowCondition(SymbolicConditionHandler{}, tokenlist, symboldatabase, errorLogger, settings, skippedFunctions): 5.11254s (avg. 1.70418s - 3 result(s)) valueFlowLifetime(tokenlist, errorLogger, settings): 2.31725s (avg. 0.579312s - 4 result(s)) Overall time: 24.5913s old-timing-info: Tokenizer::simplifyTokens1::ValueFlow: 47.9348s (avg. 47.9348s - 1 result(s)) valueFlowUninit(tokenlist, settings): 29.1955s (avg. 14.5977s - 2 result(s)) valueFlowLifetime(tokenlist, errorLogger, settings): 9.57251s (avg. 3.19084s - 3 result(s)) valueFlowSymbolic(tokenlist, symboldatabase, settings): 9.14568s (avg. 9.14568s - 1 result(s)) Tokenizer::simplifyTokens1::createSymbolDatabase: 0.037749s (avg. 0.037749s - 1 result(s)) Overall time: 48.0967s head results: sagan-1.2.0/extra/sagan-gtk/sagan-gtk.c:69:33: style: Parameter 'widget' can be declared as pointer to const. However it seems that 'destroy' is a callback function, if 'widget' is declared with const you might also need to cast function pointer(s). [constParameterCallback] sagan-1.2.0/extra/sagan-gtk/sagan-gtk.c:55:54: note: You might need to cast the function pointer here sagan-1.2.0/extra/sagan-gtk/sagan-gtk.c:69:33: note: Parameter 'widget' can be declared as pointer to const sagan-1.2.0/src/classifications.c:76:45: warning: Either the condition '(classfile=fopen(ruleset,"r"))==NULL' is redundant or there is possible null pointer dereference: classfile. [nullPointerRedundantCheck] sagan-1.2.0/src/classifications.c:71:45: note: Assuming that condition '(classfile=fopen(ruleset,"r"))==NULL' is not redundant sagan-1.2.0/src/classifications.c:76:45: note: Null pointer dereference sagan-1.2.0/src/gen-msg.c:71:31: warning: Either the condition '(genmapfile=fopen(genmap,"r"))==NULL' is redundant or there is possible null pointer dereference: genmapfile. [nullPointerRedundantCheck] sagan-1.2.0/src/gen-msg.c:66:45: note: Assuming that condition '(genmapfile=fopen(genmap,"r"))==NULL' is not redundant sagan-1.2.0/src/gen-msg.c:71:31: note: Null pointer dereference sagan-1.2.0/src/gen-msg.c:153:31: warning: Possible null pointer dereference: msg [nullPointer] sagan-1.2.0/src/gen-msg.c:142:15: note: Assignment 'msg=NULL', assigned value is 0 sagan-1.2.0/src/gen-msg.c:144:16: note: Assuming condition is false sagan-1.2.0/src/gen-msg.c:153:31: note: Null pointer dereference sagan-1.2.0/src/gen-msg.c:142:11: style: Variable 'msg' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/aetas.c:83:14: error: Buffer is accessed out of bounds: hour_tmp [bufferAccessOutOfBounds] sagan-1.2.0/src/aetas.c:84:14: error: Buffer is accessed out of bounds: minute_tmp [bufferAccessOutOfBounds] sagan-1.2.0/src/aetas.c:76:15: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/aetas.c:81:11: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/aetas.c:61:16: style: Variable 'now_utime' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/after.c:80:9: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/after.c:183:9: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/after.c:284:9: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/after.c:395:9: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/after.c:497:9: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/after.c:66:89: style:inconclusive: Function 'After_By_Src' argument 4 names different: declaration 'select' definition 'selector'. [funcArgNamesDifferent] sagan-1.2.0/src/after.h:21:89: note: Function 'After_By_Src' argument 4 names different: declaration 'select' definition 'selector'. sagan-1.2.0/src/after.c:66:89: note: Function 'After_By_Src' argument 4 names different: declaration 'select' definition 'selector'. sagan-1.2.0/src/after.c:169:89: style:inconclusive: Function 'After_By_Dst' argument 4 names different: declaration 'select' definition 'selector'. [funcArgNamesDifferent] sagan-1.2.0/src/after.h:22:89: note: Function 'After_By_Dst' argument 4 names different: declaration 'select' definition 'selector'. sagan-1.2.0/src/after.c:169:89: note: Function 'After_By_Dst' argument 4 names different: declaration 'select' definition 'selector'. sagan-1.2.0/src/after.c:270:77: style:inconclusive: Function 'After_By_Username' argument 3 names different: declaration 'select' definition 'selector'. [funcArgNamesDifferent] sagan-1.2.0/src/after.h:23:77: note: Function 'After_By_Username' argument 3 names different: declaration 'select' definition 'selector'. sagan-1.2.0/src/after.c:270:77: note: Function 'After_By_Username' argument 3 names different: declaration 'select' definition 'selector'. sagan-1.2.0/src/after.c:381:75: style:inconclusive: Function 'After_By_SrcPort' argument 3 names different: declaration 'select' definition 'selector'. [funcArgNamesDifferent] sagan-1.2.0/src/after.h:24:75: note: Function 'After_By_SrcPort' argument 3 names different: declaration 'select' definition 'selector'. sagan-1.2.0/src/after.c:381:75: note: Function 'After_By_SrcPort' argument 3 names different: declaration 'select' definition 'selector'. sagan-1.2.0/src/after.c:483:75: style:inconclusive: Function 'After_By_DstPort' argument 3 names different: declaration 'select' definition 'selector'. [funcArgNamesDifferent] sagan-1.2.0/src/after.h:25:75: note: Function 'After_By_DstPort' argument 3 names different: declaration 'select' definition 'selector'. sagan-1.2.0/src/after.c:483:75: note: Function 'After_By_DstPort' argument 3 names different: declaration 'select' definition 'selector'. sagan-1.2.0/src/after.c:66:70: style: Parameter 'ip_src_bits' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/after.c:66:89: style: Parameter 'selector' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/after.c:66:105: style: Parameter 'syslog_message' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/after.c:72:16: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/after.c:169:70: style: Parameter 'ip_dst_bits' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/ignore-list.c:67:44: warning: Either the condition '(droplist=fopen(config->sagan_droplistfile,"r"))==NULL' is redundant or there is possible null pointer dereference: droplist. [nullPointerRedundantCheck] sagan-1.2.0/src/ignore-list.c:61:71: note: Assuming that condition '(droplist=fopen(config->sagan_droplistfile,"r"))==NULL' is not redundant sagan-1.2.0/src/ignore-list.c:67:44: note: Null pointer dereference sagan-1.2.0/src/after.c:169:89: style: Parameter 'selector' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/after.c:169:105: style: Parameter 'syslog_message' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/after.c:175:16: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/after.c:270:77: style: Parameter 'selector' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/after.c:270:93: style: Parameter 'syslog_message' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/after.c:276:16: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/after.c:381:75: style: Parameter 'selector' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/after.c:387:16: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/after.c:483:75: style: Parameter 'selector' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/after.c:489:16: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/json-handler.c:74:36: warning: Logical disjunction always evaluates to true: Event->ip_proto != 1 || Event->ip_proto != 6. [incorrectLogicOperator] sagan-1.2.0/src/json-handler.c:74:60: warning: Logical disjunction always evaluates to true: Event->ip_proto != 6 || Event->ip_proto != 17. [incorrectLogicOperator] sagan-1.2.0/src/json-handler.c:53:11: style: Variable 'proto' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/json-handler.c:54:11: style: Variable 'drop' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/output-plugins/external.c:173:7: style: Variable 'n' is reassigned a value before the old one has been used. [redundantAssignment] sagan-1.2.0/src/output-plugins/external.c:170:7: note: n is assigned sagan-1.2.0/src/output-plugins/external.c:173:7: note: n is overwritten sagan-1.2.0/src/parsers/hash.c:42:23: style: Parameter 'syslog_message' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/parsers/port.c:56:27: style: Parameter 'msg' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/parsers/port.c:64:11: style: Variable 'str' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/parsers/port.c:241:27: style: Parameter 'msg' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/parsers/port.c:248:11: style: Variable 'str' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/parsers/port.c:156:19: style: Variable 'token' is assigned a value that is never used. [unreadVariable] sagan-1.2.0/src/parsers/port.c:196:19: style: Variable 'token' is assigned a value that is never used. [unreadVariable] sagan-1.2.0/src/output-plugins/snortsam-twofish.c:167:28: style: Parameter 'userkey' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/output-plugins/snortsam-twofish.c:235:41: style: Parameter 'in' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/output-plugins/snortsam-twofish.c:805:36: style: Parameter 'p' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/output-plugins/snortsam-twofish.c:805:48: style: Parameter 'c' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/output-plugins/snortsam-twofish.c:829:37: style: Parameter 'b' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/output-plugins/snortsam-twofish.c:964:64: style: Parameter 'k32' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/output-plugins/snortsam-twofish.c:1009:37: style: Parameter 'lsBox' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/output-plugins/snortsam-twofish.c:1017:37: style: Parameter 'lsBox' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/output-plugins/snortsam-twofish.c:1025:36: style: Parameter 'lsBox' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/processor.c:86:12: warning: Either the condition 'SaganProcSyslog_LOCAL==NULL' is redundant or there is possible null pointer dereference: SaganProcSyslog_LOCAL. [nullPointerRedundantCheck] sagan-1.2.0/src/processor.c:81:32: note: Assuming that condition 'SaganProcSyslog_LOCAL==NULL' is not redundant sagan-1.2.0/src/processor.c:86:12: note: Null pointer dereference sagan-1.2.0/src/processors/blacklist.c:115:45: warning: Either the condition '(blacklist=fopen(blacklist_filename,"r"))==NULL' is redundant or there is possible null pointer dereference: blacklist. [nullPointerRedundantCheck] sagan-1.2.0/src/processors/blacklist.c:106:64: note: Assuming that condition '(blacklist=fopen(blacklist_filename,"r"))==NULL' is not redundant sagan-1.2.0/src/processors/blacklist.c:115:45: note: Null pointer dereference sagan-1.2.0/src/ipc.c:117:17: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/ipc.c:210:17: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/ipc.c:302:17: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/ipc.c:389:17: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/ipc.c:475:17: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/ipc.c:561:17: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/ipc.c:651:17: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/ipc.c:741:17: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/ipc.c:827:17: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/ipc.c:913:17: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/ipc.c:999:17: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/ipc.c:107:24: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/ipc.c:200:24: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/ipc.c:292:24: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/ipc.c:378:24: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/ipc.c:465:24: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/ipc.c:551:24: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/ipc.c:641:24: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/ipc.c:731:24: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/ipc.c:817:24: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/ipc.c:903:24: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/ipc.c:989:24: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/ipc.c:133:44: warning: Calling 'sizeof' on 'sizeof'. [sizeofsizeof] sagan-1.2.0/src/ipc.c:223:44: warning: Calling 'sizeof' on 'sizeof'. [sizeofsizeof] sagan-1.2.0/src/ipc.c:315:48: warning: Calling 'sizeof' on 'sizeof'. [sizeofsizeof] sagan-1.2.0/src/ipc.c:402:48: warning: Calling 'sizeof' on 'sizeof'. [sizeofsizeof] sagan-1.2.0/src/ipc.c:488:49: warning: Calling 'sizeof' on 'sizeof'. [sizeofsizeof] sagan-1.2.0/src/ipc.c:574:45: warning: Calling 'sizeof' on 'sizeof'. [sizeofsizeof] sagan-1.2.0/src/ipc.c:664:45: warning: Calling 'sizeof' on 'sizeof'. [sizeofsizeof] sagan-1.2.0/src/ipc.c:754:49: warning: Calling 'sizeof' on 'sizeof'. [sizeofsizeof] sagan-1.2.0/src/ipc.c:840:49: warning: Calling 'sizeof' on 'sizeof'. [sizeofsizeof] sagan-1.2.0/src/ipc.c:926:50: warning: Calling 'sizeof' on 'sizeof'. [sizeofsizeof] sagan-1.2.0/src/ipc.c:1012:38: warning: Calling 'sizeof' on 'sizeof'. [sizeofsizeof] sagan-1.2.0/src/ipc.c:133:83: warning: Found calculation inside sizeof(). [sizeofCalculation] sagan-1.2.0/src/ipc.c:223:83: warning: Found calculation inside sizeof(). [sizeofCalculation] sagan-1.2.0/src/ipc.c:315:91: warning: Found calculation inside sizeof(). [sizeofCalculation] sagan-1.2.0/src/ipc.c:402:91: warning: Found calculation inside sizeof(). [sizeofCalculation] sagan-1.2.0/src/ipc.c:488:93: warning: Found calculation inside sizeof(). [sizeofCalculation] sagan-1.2.0/src/ipc.c:574:85: warning: Found calculation inside sizeof(). [sizeofCalculation] sagan-1.2.0/src/ipc.c:664:85: warning: Found calculation inside sizeof(). [sizeofCalculation] sagan-1.2.0/src/ipc.c:754:93: warning: Found calculation inside sizeof(). [sizeofCalculation] sagan-1.2.0/src/ipc.c:840:93: warning: Found calculation inside sizeof(). [sizeofCalculation] sagan-1.2.0/src/ipc.c:926:95: warning: Found calculation inside sizeof(). [sizeofCalculation] sagan-1.2.0/src/ipc.c:1012:76: warning: Found calculation inside sizeof(). [sizeofCalculation] sagan-1.2.0/src/ipc.c:1835:24: style: Variable 'new_object' is assigned a value that is never used. [unreadVariable] sagan-1.2.0/src/processors/perfmon.c:75:9: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/processors/perfmon.c:125:17: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/processors/perfmon.c:322:9: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/processors/perfmon.c:344:9: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/processors/perfmon.c:72:16: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/processors/perfmon.c:319:16: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/processors/perfmon.c:341:16: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/processors/perfmon.c:67:24: style: Variable 'total' is assigned a value that is never used. [unreadVariable] sagan-1.2.0/src/processors/perfmon.c:68:26: style: Variable 'seconds' is assigned a value that is never used. [unreadVariable] sagan-1.2.0/src/processors/track-clients.c:83:9: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/processors/track-clients.c:201:17: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/processors/track-clients.c:162:57: style: Variable 'processor_info_track_client->processor_name' is reassigned a value before the old one has been used. [redundantAssignment] sagan-1.2.0/src/processors/track-clients.c:160:57: note: processor_info_track_client->processor_name is assigned sagan-1.2.0/src/processors/track-clients.c:162:57: note: processor_info_track_client->processor_name is overwritten sagan-1.2.0/src/processors/track-clients.c:77:16: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/processors/track-clients.c:194:24: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/protocol-map.c:69:31: warning: Either the condition '(mapfile=fopen(map,"r"))==NULL' is redundant or there is possible null pointer dereference: mapfile. [nullPointerRedundantCheck] sagan-1.2.0/src/protocol-map.c:64:39: note: Assuming that condition '(mapfile=fopen(map,"r"))==NULL' is not redundant sagan-1.2.0/src/protocol-map.c:69:31: note: Null pointer dereference sagan-1.2.0/src/references.c:72:31: warning: Either the condition '(reffile=fopen(ruleset,"r"))==NULL' is redundant or there is possible null pointer dereference: reffile. [nullPointerRedundantCheck] sagan-1.2.0/src/references.c:67:43: note: Assuming that condition '(reffile=fopen(ruleset,"r"))==NULL' is not redundant sagan-1.2.0/src/references.c:72:31: note: Null pointer dereference sagan-1.2.0/src/references.c:59:11: style: Variable 'laststring' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/references.c:148:11: style: Variable 'tmp' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/references.c:145:10: style: Variable 'b' is assigned a value that is never used. [unreadVariable] sagan-1.2.0/src/processors/bro-intel.c:124:62: warning: Either the condition '(brointel_file=fopen(brointel_filename,"r"))==NULL' is redundant or there is possible null pointer dereference: brointel_file. [nullPointerRedundantCheck] sagan-1.2.0/src/processors/bro-intel.c:119:66: note: Assuming that condition '(brointel_file=fopen(brointel_filename,"r"))==NULL' is not redundant sagan-1.2.0/src/processors/bro-intel.c:124:62: note: Null pointer dereference sagan-1.2.0/src/processors/bro-intel.c:91:11: style: Variable 'type' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/processors/bro-intel.c:92:11: style: Variable 'description' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/processors/bro-intel.c:590:41: style: Parameter 'syslog_message' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/processors/bro-intel.c:590:84: style: Parameter 'lookup_cache' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/sagan.c:282:9: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/sagan.c:1114:57: style: Condition 'psyslogstring!=NULL' is always true [knownConditionTrueFalse] sagan-1.2.0/src/sagan.c:270:12: warning: Either the condition 'dnscache==NULL' is redundant or there is possible null pointer dereference: dnscache. [nullPointerRedundantCheck] sagan-1.2.0/src/sagan.c:265:19: note: Assuming that condition 'dnscache==NULL' is not redundant sagan-1.2.0/src/sagan.c:270:12: note: Null pointer dereference sagan-1.2.0/src/sagan.c:1167:61: warning: Either the condition 'dnscache==NULL' is redundant or there is possible null pointer dereference: dnscache. [nullPointerRedundantCheck] sagan-1.2.0/src/sagan.c:1160:67: note: Assuming that condition 'dnscache==NULL' is not redundant sagan-1.2.0/src/sagan.c:1167:61: note: Null pointer dereference sagan-1.2.0/src/sagan.c:1168:61: warning: Either the condition 'dnscache==NULL' is redundant or there is possible null pointer dereference: dnscache. [nullPointerRedundantCheck] sagan-1.2.0/src/sagan.c:1160:67: note: Assuming that condition 'dnscache==NULL' is not redundant sagan-1.2.0/src/sagan.c:1168:61: note: Null pointer dereference sagan-1.2.0/src/sagan.c:220:11: style: Variable 'syslog_date' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/sagan.c:221:11: style: Variable 'syslog_time' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/sagan.c:236:16: style: Variable 'run' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/send-alert.c:55:12: warning: Either the condition 'SaganProcessorEvent==NULL' is redundant or there is possible null pointer dereference: SaganProcessorEvent. [nullPointerRedundantCheck] sagan-1.2.0/src/send-alert.c:50:30: note: Assuming that condition 'SaganProcessorEvent==NULL' is not redundant sagan-1.2.0/src/send-alert.c:55:12: note: Null pointer dereference sagan-1.2.0/src/signal-handler.c:331:32: style: Condition 'config->blacklist_flag' is always false [knownConditionTrueFalse] sagan-1.2.0/src/signal-handler.c:329:46: note: Assignment 'config->blacklist_flag=0', assigned value is 0 sagan-1.2.0/src/signal-handler.c:331:32: note: Condition 'config->blacklist_flag' is always false sagan-1.2.0/src/stats.c:77:9: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/stats.c:140:39: style: Redundant condition: The condition 'seconds == 0' is redundant since 'seconds < 60' is sufficient. [redundantCondition] sagan-1.2.0/src/stats.c:54:16: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/threshold.c:81:9: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/threshold.c:187:9: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/threshold.c:293:9: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/threshold.c:399:9: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/threshold.c:498:9: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/threshold.c:67:71: style: Parameter 'ip_src_bits' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/threshold.c:67:90: style: Parameter 'selector' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/threshold.c:67:106: style: Parameter 'syslog_message' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/threshold.c:71:16: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/threshold.c:173:71: style: Parameter 'ip_dst_bits' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/threshold.c:173:90: style: Parameter 'selector' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/threshold.c:173:106: style: Parameter 'syslog_message' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/threshold.c:177:16: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/threshold.c:279:78: style: Parameter 'selector' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/threshold.c:279:94: style: Parameter 'syslog_message' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/threshold.c:283:16: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/threshold.c:385:76: style: Parameter 'selector' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/threshold.c:389:16: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/threshold.c:484:76: style: Parameter 'selector' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/threshold.c:488:16: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/processors/engine.c:726:65: style: Variable 'ip_src_flag' is reassigned a value before the old one has been used. [redundantAssignment] sagan-1.2.0/src/processors/engine.c:720:73: note: ip_src_flag is assigned sagan-1.2.0/src/processors/engine.c:726:65: note: ip_src_flag is overwritten sagan-1.2.0/src/processors/engine.c:758:65: style: Variable 'ip_dst_flag' is reassigned a value before the old one has been used. [redundantAssignment] sagan-1.2.0/src/processors/engine.c:752:73: note: ip_dst_flag is assigned sagan-1.2.0/src/processors/engine.c:758:65: note: ip_dst_flag is overwritten sagan-1.2.0/src/processors/engine.c:1303:157: style: Variable 'thresh_log_flag' is reassigned a value before the old one has been used. 'break;' missing? [redundantAssignInSwitch] sagan-1.2.0/src/processors/engine.c:1300:157: note: $symbol is assigned sagan-1.2.0/src/processors/engine.c:1303:157: note: $symbol is overwritten sagan-1.2.0/src/processors/engine.c:688:75: style: Same expression on both sides of '||'. [duplicateExpression] sagan-1.2.0/src/processors/engine.c:121:26: style: Variable 'after_log_flag' is assigned a value that is never used. [unreadVariable] sagan-1.2.0/src/processors/engine.c:130:17: style: Variable 'match' is assigned a value that is never used. [unreadVariable] sagan-1.2.0/src/processors/engine.c:156:23: style: Variable 'ip_src_flag' is assigned a value that is never used. [unreadVariable] sagan-1.2.0/src/processors/engine.c:161:23: style: Variable 'ip_dst_flag' is assigned a value that is never used. [unreadVariable] sagan-1.2.0/src/processors/engine.c:163:29: style: Variable 'ip_dstport_u32' is assigned a value that is never used. [unreadVariable] sagan-1.2.0/src/processors/engine.c:1416:27: style: Variable 'match' is assigned a value that is never used. [unreadVariable] sagan-1.2.0/src/processors/engine.c:189:11: style: Variable 'normalize_filename' is assigned a value that is never used. [unreadVariable] sagan-1.2.0/src/util-time.c:53:16: style: Variable 't' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/util-time.c:87:16: style: Variable 't' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/util.c:100:10: portability: Non reentrant function 'getpwnam' called. For threadsafe applications it is recommended to use the reentrant replacement function 'getpwnam_r'. [prohibitedgetpwnamCalled] sagan-1.2.0/src/util.c:215:9: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/util.c:1079:10: portability: Non reentrant function 'getpwnam' called. For threadsafe applications it is recommended to use the reentrant replacement function 'getpwnam_r'. [prohibitedgetpwnamCalled] sagan-1.2.0/src/util.c:859:21: warning: %x in format string (no. 1) requires 'unsigned int *' but the argument type is 'signed int *'. [invalidScanfArgType_int] sagan-1.2.0/src/util.c:482:13: error: Memory leak: res [memleak] sagan-1.2.0/src/util.c:285:23: style:inconclusive: Function 'Is_IPv6' argument 1 names different: declaration 'str' definition 'ipaddr'. [funcArgNamesDifferent] sagan-1.2.0/src/sagan.h:132:26: note: Function 'Is_IPv6' argument 1 names different: declaration 'str' definition 'ipaddr'. sagan-1.2.0/src/util.c:285:23: note: Function 'Is_IPv6' argument 1 names different: declaration 'str' definition 'ipaddr'. sagan-1.2.0/src/util.c:210:11: style: Variable 'chr' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/util.c:213:16: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/util.c:256:11: style: Variable 'p' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/util.c:285:23: style: Parameter 'ipaddr' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/util.c:371:25: style: Parameter 'str' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/util.c:390:27: style: Parameter 'instr' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/util.c:464:11: style: Variable 'addr' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/util.c:512:41: style: Parameter 'orig' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/util.c:512:53: style: Parameter 'rep' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/util.c:516:11: style: Variable 'p' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/util.c:532:35: style: Parameter 'ip' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/util.c:532:54: style: Parameter 'tests' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/util.c:713:25: style: Parameter 'in_str' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/util.c:806:25: style: Parameter 'in_string' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/util.c:886:27: style: Parameter 'string_in' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/util.c:886:44: style: Parameter 'replace' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/util.c:1077:20: style: Variable 'pw' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/util.c:1450:32: style: Parameter 's' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/util.c:1526:26: style: Parameter 'str_in' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/util.c:1551:31: warning: Uninitialized variable: alter_log [uninitvar] sagan-1.2.0/src/util.c:1537:20: note: Assuming condition is false sagan-1.2.0/src/util.c:1551:31: note: Uninitialized variable: alter_log sagan-1.2.0/src/util.c:1365:24: style: Variable 'ipint' is assigned a value that is never used. [unreadVariable] sagan-1.2.0/src/util.c:247:1: error: va_list 'ap' was opened but not closed by va_end(). [va_end_missing] sagan-1.2.0/tools/saganpeek.c:145:33: style: Variable 'counters_ipc' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/tools/saganpeek.c:147:29: style: Variable 'xbit_ipc' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/tools/saganpeek.c:152:36: style: Variable 'threshbyusername_ipc' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/tools/saganpeek.c:156:35: style: Variable 'afterbyusername_ipc' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/tools/saganpeek.c:178:11: style: Variable 'ipc_directory' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/parsers/ip.c:88:21: style: Parameter 'syslog_message' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/parsers/ip.c:107:11: style: Variable 'ptr3' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/parsers/ip.c:122:20: style: Variable 'num_colons' is assigned a value that is never used. [unreadVariable] sagan-1.2.0/src/parsers/ip.c:123:18: style: Variable 'num_dots' is assigned a value that is never used. [unreadVariable] sagan-1.2.0/src/parsers/ip.c:124:20: style: Variable 'num_hashes' is assigned a value that is never used. [unreadVariable] sagan-1.2.0/src/rules.c:2094:67: warning: Identical inner 'if' condition is always true. [identicalInnerCondition] sagan-1.2.0/src/rules.c:2087:51: note: outer condition: pcreflag==1 sagan-1.2.0/src/rules.c:2094:67: note: identical inner condition: pcreflag==1 sagan-1.2.0/src/rules.c:2097:67: warning: Identical inner 'if' condition is always true. [identicalInnerCondition] sagan-1.2.0/src/rules.c:2087:51: note: outer condition: pcreflag==1 sagan-1.2.0/src/rules.c:2097:67: note: identical inner condition: pcreflag==1 sagan-1.2.0/src/rules.c:2100:67: warning: Identical inner 'if' condition is always true. [identicalInnerCondition] sagan-1.2.0/src/rules.c:2087:51: note: outer condition: pcreflag==1 sagan-1.2.0/src/rules.c:2100:67: note: identical inner condition: pcreflag==1 sagan-1.2.0/src/rules.c:2103:67: warning: Identical inner 'if' condition is always true. [identicalInnerCondition] sagan-1.2.0/src/rules.c:2087:51: note: outer condition: pcreflag==1 sagan-1.2.0/src/rules.c:2103:67: note: identical inner condition: pcreflag==1 sagan-1.2.0/src/rules.c:2106:67: warning: Identical inner 'if' condition is always true. [identicalInnerCondition] sagan-1.2.0/src/rules.c:2087:51: note: outer condition: pcreflag==1 sagan-1.2.0/src/rules.c:2106:67: note: identical inner condition: pcreflag==1 sagan-1.2.0/src/rules.c:2109:67: warning: Identical inner 'if' condition is always true. [identicalInnerCondition] sagan-1.2.0/src/rules.c:2087:51: note: outer condition: pcreflag==1 sagan-1.2.0/src/rules.c:2109:67: note: identical inner condition: pcreflag==1 sagan-1.2.0/src/rules.c:2112:67: warning: Identical inner 'if' condition is always true. [identicalInnerCondition] sagan-1.2.0/src/rules.c:2087:51: note: outer condition: pcreflag==1 sagan-1.2.0/src/rules.c:2112:67: note: identical inner condition: pcreflag==1 sagan-1.2.0/src/rules.c:2248:56: style: Variable 'tmptok_tmp' is reassigned a value before the old one has been used. [redundantAssignment] sagan-1.2.0/src/rules.c:2247:56: note: tmptok_tmp is assigned sagan-1.2.0/src/rules.c:2248:56: note: tmptok_tmp is overwritten sagan-1.2.0/src/rules.c:2287:56: style: Variable 'tmptok_tmp' is reassigned a value before the old one has been used. [redundantAssignment] sagan-1.2.0/src/rules.c:2286:56: note: tmptok_tmp is assigned sagan-1.2.0/src/rules.c:2287:56: note: tmptok_tmp is overwritten sagan-1.2.0/src/rules.c:2411:56: style: Variable 'tmptok_tmp' is reassigned a value before the old one has been used. [redundantAssignment] sagan-1.2.0/src/rules.c:2410:56: note: tmptok_tmp is assigned sagan-1.2.0/src/rules.c:2411:56: note: tmptok_tmp is overwritten sagan-1.2.0/src/rules.c:2418:56: style: Variable 'tmptok_tmp' is reassigned a value before the old one has been used. [redundantAssignment] sagan-1.2.0/src/rules.c:2417:56: note: tmptok_tmp is assigned sagan-1.2.0/src/rules.c:2418:56: note: tmptok_tmp is overwritten sagan-1.2.0/src/rules.c:2470:56: style: Variable 'tmptok_tmp' is reassigned a value before the old one has been used. [redundantAssignment] sagan-1.2.0/src/rules.c:2469:56: note: tmptok_tmp is assigned sagan-1.2.0/src/rules.c:2470:56: note: tmptok_tmp is overwritten sagan-1.2.0/src/rules.c:2477:56: style: Variable 'tmptok_tmp' is reassigned a value before the old one has been used. [redundantAssignment] sagan-1.2.0/src/rules.c:2476:56: note: tmptok_tmp is assigned sagan-1.2.0/src/rules.c:2477:56: note: tmptok_tmp is overwritten sagan-1.2.0/src/rules.c:99:20: style: Variable 'bad_rule' is assigned a value that is never used. [unreadVariable] sagan-1.2.0/src/rules.c:163:17: style: Variable 'netcount' is assigned a value that is never used. [unreadVariable] sagan-1.2.0/src/rules.c:164:18: style: Variable 'ref_count' is assigned a value that is never used. [unreadVariable] sagan-1.2.0/src/rules.c:166:22: style: Variable 'content_count' is assigned a value that is never used. [unreadVariable] sagan-1.2.0/src/rules.c:167:27: style: Variable 'meta_content_count' is assigned a value that is never used. [unreadVariable] sagan-1.2.0/src/rules.c:168:37: style: Variable 'meta_content_converted_count' is assigned a value that is never used. [unreadVariable] sagan-1.2.0/src/rules.c:169:19: style: Variable 'pcre_count' is assigned a value that is never used. [unreadVariable] sagan-1.2.0/src/rules.c:171:21: style: Variable 'flow_1_count' is assigned a value that is never used. [unreadVariable] sagan-1.2.0/src/rules.c:172:21: style: Variable 'flow_2_count' is assigned a value that is never used. [unreadVariable] sagan-1.2.0/src/rules.c:173:21: style: Variable 'port_1_count' is assigned a value that is never used. [unreadVariable] sagan-1.2.0/src/rules.c:174:21: style: Variable 'port_2_count' is assigned a value that is never used. [unreadVariable] sagan-1.2.0/src/xbit-mmap.c:75:9: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/xbit-mmap.c:780:9: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/xbit-mmap.c:1544:9: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] sagan-1.2.0/src/xbit-mmap.c:792:12: warning: Either the condition 'xbit_track==NULL' is redundant or there is possible null pointer dereference: xbit_track. [nullPointerRedundantCheck] sagan-1.2.0/src/xbit-mmap.c:787:22: note: Assuming that condition 'xbit_track==NULL' is not redundant sagan-1.2.0/src/xbit-mmap.c:792:12: note: Null pointer dereference sagan-1.2.0/src/xbit-mmap.c:1222:37: warning: Either the condition 'xbit_track==NULL' is redundant or there is possible null pointer dereference: xbit_track. [nullPointerRedundantCheck] sagan-1.2.0/src/xbit-mmap.c:1217:45: note: Assuming that condition 'xbit_track==NULL' is not redundant sagan-1.2.0/src/xbit-mmap.c:1222:37: note: Null pointer dereference sagan-1.2.0/src/xbit-mmap.c:1227:29: warning: Either the condition 'xbit_track==NULL' is redundant or there is possible null pointer dereference: xbit_track. [nullPointerRedundantCheck] sagan-1.2.0/src/xbit-mmap.c:1217:45: note: Assuming that condition 'xbit_track==NULL' is not redundant sagan-1.2.0/src/xbit-mmap.c:1227:29: note: Null pointer dereference sagan-1.2.0/src/xbit-mmap.c:1228:29: warning: Either the condition 'xbit_track==NULL' is redundant or there is possible null pointer dereference: xbit_track. [nullPointerRedundantCheck] sagan-1.2.0/src/xbit-mmap.c:1217:45: note: Assuming that condition 'xbit_track==NULL' is not redundant sagan-1.2.0/src/xbit-mmap.c:1228:29: note: Null pointer dereference sagan-1.2.0/src/xbit-mmap.c:1229:29: warning: Either the condition 'xbit_track==NULL' is redundant or there is possible null pointer dereference: xbit_track. [nullPointerRedundantCheck] sagan-1.2.0/src/xbit-mmap.c:1217:45: note: Assuming that condition 'xbit_track==NULL' is not redundant sagan-1.2.0/src/xbit-mmap.c:1229:29: note: Null pointer dereference sagan-1.2.0/src/xbit-mmap.c:1303:37: warning: Either the condition 'xbit_track==NULL' is redundant or there is possible null pointer dereference: xbit_track. [nullPointerRedundantCheck] sagan-1.2.0/src/xbit-mmap.c:1298:45: note: Assuming that condition 'xbit_track==NULL' is not redundant sagan-1.2.0/src/xbit-mmap.c:1303:37: note: Null pointer dereference sagan-1.2.0/src/xbit-mmap.c:1305:29: warning: Either the condition 'xbit_track==NULL' is redundant or there is possible null pointer dereference: xbit_track. [nullPointerRedundantCheck] sagan-1.2.0/src/xbit-mmap.c:1298:45: note: Assuming that condition 'xbit_track==NULL' is not redundant sagan-1.2.0/src/xbit-mmap.c:1305:29: note: Null pointer dereference sagan-1.2.0/src/xbit-mmap.c:1306:29: warning: Either the condition 'xbit_track==NULL' is redundant or there is possible null pointer dereference: xbit_track. [nullPointerRedundantCheck] sagan-1.2.0/src/xbit-mmap.c:1298:45: note: Assuming that condition 'xbit_track==NULL' is not redundant sagan-1.2.0/src/xbit-mmap.c:1306:29: note: Null pointer dereference sagan-1.2.0/src/xbit-mmap.c:1307:29: warning: Either the condition 'xbit_track==NULL' is redundant or there is possible null pointer dereference: xbit_track. [nullPointerRedundantCheck] sagan-1.2.0/src/xbit-mmap.c:1298:45: note: Assuming that condition 'xbit_track==NULL' is not redundant sagan-1.2.0/src/xbit-mmap.c:1307:29: note: Null pointer dereference sagan-1.2.0/src/xbit-mmap.c:1381:37: warning: Either the condition 'xbit_track==NULL' is redundant or there is possible null pointer dereference: xbit_track. [nullPointerRedundantCheck] sagan-1.2.0/src/xbit-mmap.c:1376:45: note: Assuming that condition 'xbit_track==NULL' is not redundant sagan-1.2.0/src/xbit-mmap.c:1381:37: note: Null pointer dereference sagan-1.2.0/src/xbit-mmap.c:1383:29: warning: Either the condition 'xbit_track==NULL' is redundant or there is possible null pointer dereference: xbit_track. [nullPointerRedundantCheck] sagan-1.2.0/src/xbit-mmap.c:1376:45: note: Assuming that condition 'xbit_track==NULL' is not redundant sagan-1.2.0/src/xbit-mmap.c:1383:29: note: Null pointer dereference sagan-1.2.0/src/xbit-mmap.c:1384:29: warning: Either the condition 'xbit_track==NULL' is redundant or there is possible null pointer dereference: xbit_track. [nullPointerRedundantCheck] sagan-1.2.0/src/xbit-mmap.c:1376:45: note: Assuming that condition 'xbit_track==NULL' is not redundant sagan-1.2.0/src/xbit-mmap.c:1384:29: note: Null pointer dereference sagan-1.2.0/src/xbit-mmap.c:1385:29: warning: Either the condition 'xbit_track==NULL' is redundant or there is possible null pointer dereference: xbit_track. [nullPointerRedundantCheck] sagan-1.2.0/src/xbit-mmap.c:1376:45: note: Assuming that condition 'xbit_track==NULL' is not redundant sagan-1.2.0/src/xbit-mmap.c:1385:29: note: Null pointer dereference sagan-1.2.0/src/xbit-mmap.c:1459:37: warning: Either the condition 'xbit_track==NULL' is redundant or there is possible null pointer dereference: xbit_track. [nullPointerRedundantCheck] sagan-1.2.0/src/xbit-mmap.c:1454:45: note: Assuming that condition 'xbit_track==NULL' is not redundant sagan-1.2.0/src/xbit-mmap.c:1459:37: note: Null pointer dereference sagan-1.2.0/src/xbit-mmap.c:1464:29: warning: Either the condition 'xbit_track==NULL' is redundant or there is possible null pointer dereference: xbit_track. [nullPointerRedundantCheck] sagan-1.2.0/src/xbit-mmap.c:1454:45: note: Assuming that condition 'xbit_track==NULL' is not redundant sagan-1.2.0/src/xbit-mmap.c:1464:29: note: Null pointer dereference sagan-1.2.0/src/xbit-mmap.c:1465:29: warning: Either the condition 'xbit_track==NULL' is redundant or there is possible null pointer dereference: xbit_track. [nullPointerRedundantCheck] sagan-1.2.0/src/xbit-mmap.c:1454:45: note: Assuming that condition 'xbit_track==NULL' is not redundant sagan-1.2.0/src/xbit-mmap.c:1465:29: note: Null pointer dereference sagan-1.2.0/src/xbit-mmap.c:1466:29: warning: Either the condition 'xbit_track==NULL' is redundant or there is possible null pointer dereference: xbit_track. [nullPointerRedundantCheck] sagan-1.2.0/src/xbit-mmap.c:1454:45: note: Assuming that condition 'xbit_track==NULL' is not redundant sagan-1.2.0/src/xbit-mmap.c:1466:29: note: Null pointer dereference sagan-1.2.0/src/xbit-mmap.c:61:108: style: Parameter 'selector' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/xbit-mmap.c:65:16: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/xbit-mmap.c:682:49: style: Parameter 'ip_src' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/xbit-mmap.c:682:63: style: Parameter 'ip_dst' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/xbit-mmap.c:682:77: style: Parameter 'selector' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/xbit-mmap.c:766:101: style: Parameter 'selector' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/xbit-mmap.c:766:117: style: Parameter 'syslog_message' can be declared as pointer to const [constParameterPointer] sagan-1.2.0/src/xbit-mmap.c:773:16: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/xbit-mmap.c:1540:16: style: Variable 'now' can be declared as pointer to const [constVariablePointer] sagan-1.2.0/src/xbit-mmap.c:685:16: style: Variable 'a' is assigned a value that is never used. [unreadVariable] sagan-1.2.0/src/xbit-mmap.c:770:11: style: Variable 'a' is assigned a value that is never used. [unreadVariable] diff: head sagan-1.2.0/extra/sagan-gtk/sagan-gtk.c:69:33: style: Parameter 'widget' can be declared as pointer to const. However it seems that 'destroy' is a callback function, if 'widget' is declared with const you might also need to cast function pointer(s). [constParameterCallback] sagan-1.2.0/extra/sagan-gtk/sagan-gtk.c:55:54: note: You might need to cast the function pointer here sagan-1.2.0/extra/sagan-gtk/sagan-gtk.c:69:33: note: Parameter 'widget' can be declared as pointer to const 2.13.0 sagan-1.2.0/src/output-plugins/fast.c:71:31: style: Condition 'Event->ip_proto!=1' is always true [knownConditionTrueFalse] sagan-1.2.0/src/output-plugins/fast.c:56:26: note: Assuming condition 'Event->ip_proto==1' is false sagan-1.2.0/src/output-plugins/fast.c:71:31: note: Condition 'Event->ip_proto!=1' is always true 2.13.0 sagan-1.2.0/src/output-plugins/fast.c:71:55: style: Condition 'Event->ip_proto!=6' is always true [knownConditionTrueFalse] sagan-1.2.0/src/output-plugins/fast.c:61:31: note: Assuming condition 'Event->ip_proto==6' is false sagan-1.2.0/src/output-plugins/fast.c:71:55: note: Condition 'Event->ip_proto!=6' is always true 2.13.0 sagan-1.2.0/src/output-plugins/fast.c:71:78: style: Condition 'Event->ip_proto!=17' is always true [knownConditionTrueFalse] sagan-1.2.0/src/output-plugins/fast.c:66:31: note: Assuming condition 'Event->ip_proto==17' is false sagan-1.2.0/src/output-plugins/fast.c:71:78: note: Condition 'Event->ip_proto!=17' is always true head sagan-1.2.0/src/processors/bro-intel.c:590:41: style: Parameter 'syslog_message' can be declared as pointer to const [constParameterPointer] 2.13.0 sagan-1.2.0/src/processors/engine.c:766:60: style: Condition 'parse_md5_hash[0]=='\0'' is always true [knownConditionTrueFalse] sagan-1.2.0/src/processors/engine.c:235:33: note: Assignment 'parse_md5_hash[0]='\0'', assigned value is 0 sagan-1.2.0/src/processors/engine.c:766:60: note: Condition 'parse_md5_hash[0]=='\0'' is always true 2.13.0 sagan-1.2.0/src/processors/engine.c:772:66: style: Condition 'parse_sha1_hash[0]=='\0'' is always true [knownConditionTrueFalse] sagan-1.2.0/src/processors/engine.c:236:34: note: Assignment 'parse_sha1_hash[0]='\0'', assigned value is 0 sagan-1.2.0/src/processors/engine.c:772:66: note: Condition 'parse_sha1_hash[0]=='\0'' is always true 2.13.0 sagan-1.2.0/src/processors/engine.c:778:68: style: Condition 'parse_sha256_hash[0]=='\0'' is always true [knownConditionTrueFalse] sagan-1.2.0/src/processors/engine.c:237:36: note: Assignment 'parse_sha256_hash[0]='\0'', assigned value is 0 sagan-1.2.0/src/processors/engine.c:778:68: note: Condition 'parse_sha256_hash[0]=='\0'' is always true 2.13.0 sagan-1.2.0/src/sagan.c:1446:20: error: Null pointer dereference [nullPointer] 2.13.0 sagan-1.2.0/src/sagan.c:1446:20: warning: Either the condition 'fd!=NULL' is redundant or there is possible null pointer dereference: fd. [nullPointerRedundantCheck] sagan-1.2.0/src/sagan.c:1081:22: note: Assuming that condition 'fd!=NULL' is not redundant sagan-1.2.0/src/sagan.c:1446:20: note: Null pointer dereference DONE