2024-04-22 05:23 ftp://ftp.de.debian.org/debian/pool/main/s/smstools/smstools_3.1.21.orig.tar.gz cppcheck-options: --library=posix --library=gnu --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 -D__GNUC__ --platform=unix64 -j4 platform: Linux-6.1.0-20-amd64-x86_64-with-glibc2.36 python: 3.11.2 client-version: 1.3.56 compiler: g++ (Debian 12.2.0-14) 12.2.0 cppcheck: head 2.14.0 head-info: ea2e716 (2024-04-21 15:59:20 +0200) count: 343 343 elapsed-time: 23.0 22.7 head-timing-info: old-timing-info: head results: smstools3/src/alarm.c:44:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/blacklist.c:61:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_CRIT [valueFlowBailoutIncompleteVar] smstools3/src/blacklist.c:26:23: style: Parameter 'msisdn' can be declared as pointer to const [constParameterPointer] smstools3/src/cfgfile.c:49:9: style: Variable 'cp' can be declared as pointer to const [constVariablePointer] smstools3/src/cfgfile.c:50:9: style: Variable 'cp2' can be declared as pointer to const [constVariablePointer] smstools3/src/cfgfile.c:89:23: style: Parameter 'source' can be declared as pointer to const [constParameterPointer] smstools3/src/cfgfile.c:93:9: style: Variable 'equalchar' can be declared as pointer to const [constVariablePointer] smstools3/src/cfgfile.c:118:37: style: Parameter 'name' can be declared as pointer to const [constParameterPointer] smstools3/src/locking.c:27:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/locking.c:65:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/locking.c:82:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/locking.c:25:22: style: Parameter 'filename' can be declared as pointer to const [constParameterPointer] smstools3/src/locking.c:63:22: style: Parameter 'filename' can be declared as pointer to const [constParameterPointer] smstools3/src/locking.c:80:24: style: Parameter 'filename' can be declared as pointer to const [constParameterPointer] smstools3/src/charset.c:505:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_NOTICE [valueFlowBailoutIncompleteVar] smstools3/src/charset.c:587:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_NOTICE [valueFlowBailoutIncompleteVar] smstools3/src/charset.c:650:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_NOTICE [valueFlowBailoutIncompleteVar] smstools3/src/charset.c:707:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_NOTICE [valueFlowBailoutIncompleteVar] smstools3/src/charset.c:769:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_NOTICE [valueFlowBailoutIncompleteVar] smstools3/src/charshift.c:466:7: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] smstools3/src/logging.c:69:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_CONS [valueFlowBailoutIncompleteVar] smstools3/src/charshift.c:675:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_NOTICE [valueFlowBailoutIncompleteVar] smstools3/src/logging.c:303:76: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_NOTICE [valueFlowBailoutIncompleteVar] smstools3/src/charshift.c:766:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_ERR [valueFlowBailoutIncompleteVar] smstools3/src/logging.c:386:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_DEBUG [valueFlowBailoutIncompleteVar] smstools3/src/extras.c:44:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_CRIT [valueFlowBailoutIncompleteVar] smstools3/src/extras.c:238:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/extras.c:311:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/extras.c:603:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/extras.c:652:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/extras.c:1070:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/extras.c:1249:28: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_CREAT [valueFlowBailoutIncompleteVar] smstools3/src/extras.c:1872:35: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable S_IRUSR [valueFlowBailoutIncompleteVar] smstools3/src/charshift.c:578:25: style: Array index 'i' is used before limits check. [arrayIndexThenCheck] smstools3/src/charshift.c:423:5: error: Common realloc mistake: 'log_err_str' nulled but not freed upon failure [memleakOnRealloc] smstools3/src/charshift.c:442:9: style: Parameter 'value' can be declared as pointer to const [constParameterPointer] smstools3/src/charshift.c:512:9: style: Parameter 'table' can be declared as const array [constParameter] smstools3/src/charshift.c:513:9: style: Parameter 'test' can be declared as pointer to const [constParameterPointer] smstools3/src/charshift.c:756:9: style: Variable 'p' can be declared as pointer to const [constVariablePointer] smstools3/src/logging.c:59:23: style: Parameter 'filename' can be declared as pointer to const [constParameterPointer] smstools3/src/modeminit.c:321:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_DEBUG [valueFlowBailoutIncompleteVar] smstools3/src/modeminit.c:481:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_DEBUG [valueFlowBailoutIncompleteVar] smstools3/src/modeminit.c:625:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_DEBUG [valueFlowBailoutIncompleteVar] smstools3/src/modeminit.c:791:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_DEBUG [valueFlowBailoutIncompleteVar] smstools3/src/modeminit.c:947:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_ERR [valueFlowBailoutIncompleteVar] smstools3/src/modeminit.c:1049:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_NOTICE [valueFlowBailoutIncompleteVar] smstools3/src/modeminit.c:1117:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_INFO [valueFlowBailoutIncompleteVar] smstools3/src/modeminit.c:1185:30: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable REG_EXTENDED [valueFlowBailoutIncompleteVar] smstools3/src/modeminit.c:1440:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable CS8 [valueFlowBailoutIncompleteVar] smstools3/src/modeminit.c:1556:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_INFO [valueFlowBailoutIncompleteVar] smstools3/src/modeminit.c:2224:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_DEBUG [valueFlowBailoutIncompleteVar] smstools3/src/modeminit.c:2236:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_DEBUG [valueFlowBailoutIncompleteVar] smstools3/src/modeminit.c:2261:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_CRIT [valueFlowBailoutIncompleteVar] smstools3/src/modeminit.c:2302:66: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] smstools3/src/modeminit.c:2381:48: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_RDWR [valueFlowBailoutIncompleteVar] smstools3/src/modeminit.c:2463:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] smstools3/src/modeminit.c:2475:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/modeminit.c:2665:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_INFO [valueFlowBailoutIncompleteVar] smstools3/src/modeminit.c:2833:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_INFO [valueFlowBailoutIncompleteVar] smstools3/src/pdu.c:51:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_ERR [valueFlowBailoutIncompleteVar] smstools3/src/pdu.c:1845:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_ERR [valueFlowBailoutIncompleteVar] smstools3/src/charset.c:401:8: style: Local variable 'utf8bytes' shadows outer function [shadowFunction] smstools3/src/charset.h:34:5: note: Shadowed declaration smstools3/src/charset.c:401:8: note: Shadow variable smstools3/src/charset.c:303:9: style: Variable 'table' can be declared as pointer to const [constVariablePointer] smstools3/src/charset.c:368:9: style: Variable 'table' can be declared as pointer to const [constVariablePointer] smstools3/src/charset.c:525:35: style: Parameter 'ascii' can be declared as pointer to const [constParameterPointer] smstools3/src/charset.c:877:8: style: Parameter 'text' can be declared as pointer to const [constParameterPointer] smstools3/src/charset.c:930:22: style: Parameter 's' can be declared as pointer to const [constParameterPointer] smstools3/src/charset.c:1028:9: style: Variable 'end' can be declared as pointer to const [constVariablePointer] smstools3/src/charset.c:1050:29: style: Parameter 'ucs2' can be declared as pointer to const [constParameterPointer] smstools3/src/charset.c:1088:9: style: Variable 'end' can be declared as pointer to const [constVariablePointer] smstools3/src/charset.c:1150:18: style: Variable 's' can be declared as pointer to const [constVariablePointer] smstools3/src/extras.c:1492:33: style:inconclusive: Boolean expression 'i1' is always false [knownConditionTrueFalse] smstools3/src/extras.c:1777:17: note: Assignment 'day=60*60*24', assigned value is 86400 smstools3/src/extras.c:1792:10: note: days is assigned '(int)upt/day' here. smstools3/src/extras.c:1793:57: note: Condition 'days>1' is always false smstools3/src/extras.c:1868:7: warning: %u in format string (no. 13) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] smstools3/src/extras.c:1868:7: warning: %u in format string (no. 16) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] smstools3/src/extras.c:61:7: error: Resource handle 'fd' freed twice. [doubleFree] smstools3/src/extras.c:57:16: note: Resource handle 'fd' freed twice. smstools3/src/extras.c:61:7: note: Resource handle 'fd' freed twice. smstools3/src/extras.c:99:15: style: Local variable 'yes_chars' shadows outer variable [shadowVariable] smstools3/src/smsd_cfg.h:462:6: note: Shadowed declaration smstools3/src/extras.c:99:15: note: Shadow variable smstools3/src/extras.c:100:15: style: Local variable 'no_chars' shadows outer variable [shadowVariable] smstools3/src/smsd_cfg.h:463:6: note: Shadowed declaration smstools3/src/extras.c:100:15: note: Shadow variable smstools3/src/extras.c:942:19: style: Local variable 'statbuf' shadows outer variable [shadowVariable] smstools3/src/extras.c:649:15: note: Shadowed declaration smstools3/src/extras.c:942:19: note: Shadow variable smstools3/src/extras.c:1209:11: style: Local variable 'p' shadows outer variable [shadowVariable] smstools3/src/extras.c:1069:8: note: Shadowed declaration smstools3/src/extras.c:1209:11: note: Shadow variable smstools3/src/extras.c:1246:7: style: Local variable 'pidfile' shadows outer variable [shadowVariable] smstools3/src/smsd_cfg.h:418:6: note: Shadowed declaration smstools3/src/extras.c:1246:7: note: Shadow variable smstools3/src/extras.c:97:17: style: Parameter 'value' can be declared as pointer to const [constParameterPointer] smstools3/src/extras.c:101:9: style: Variable 'p' can be declared as pointer to const [constVariablePointer] smstools3/src/extras.c:143:24: style: Parameter 'value' can be declared as pointer to const [constParameterPointer] smstools3/src/extras.c:211:25: style: Parameter 'line' can be declared as pointer to const [constParameterPointer] smstools3/src/extras.c:236:50: style: Parameter 'directory' can be declared as pointer to const [constParameterPointer] smstools3/src/extras.c:242:9: style: Variable 'cp' can be declared as pointer to const [constVariablePointer] smstools3/src/extras.c:304:121: style: Parameter 'prefix' can be declared as pointer to const [constParameterPointer] smstools3/src/extras.c:312:11: style: Variable 'cp' can be declared as pointer to const [constVariablePointer] smstools3/src/extras.c:360:11: style: Variable 'p' can be declared as pointer to const [constVariablePointer] smstools3/src/extras.c:501:23: style: Parameter 'text' can be declared as pointer to const [constParameterPointer] smstools3/src/extras.c:513:27: style: Parameter 'filename' can be declared as pointer to const [constParameterPointer] smstools3/src/extras.c:523:9: style: Variable 'compare' can be declared as pointer to const [constVariablePointer] smstools3/src/extras.c:524:9: style: Variable 'compare2' can be declared as pointer to const [constVariablePointer] smstools3/src/extras.c:602:18: style: Variable 'ent' can be declared as pointer to const [constVariablePointer] smstools3/src/extras.c:648:18: style: Variable 'ent' can be declared as pointer to const [constVariablePointer] smstools3/src/extras.c:1243:22: style: Parameter 'filename' can be declared as pointer to const [constParameterPointer] smstools3/src/extras.c:1259:21: style: Parameter 'filename' can be declared as pointer to const [constParameterPointer] smstools3/src/extras.c:1279:24: style: Parameter 'filename' can be declared as pointer to const [constParameterPointer] smstools3/src/extras.c:1285:26: style: Parameter 'value' can be declared as pointer to const [constParameterPointer] smstools3/src/extras.c:1418:9: style: Variable 'p' can be declared as pointer to const [constVariablePointer] smstools3/src/extras.c:1640:62: style: Parameter 'a_date' can be declared as pointer to const [constParameterPointer] smstools3/src/extras.c:1640:76: style: Parameter 'a_time' can be declared as pointer to const [constParameterPointer] smstools3/src/extras.c:1640:90: style: Parameter 'a_format' can be declared as pointer to const [constParameterPointer] smstools3/src/extras.c:1696:42: style: Parameter 'str' can be declared as pointer to const [constParameterPointer] smstools3/src/extras.c:1696:53: style: Parameter 'delimiter' can be declared as pointer to const [constParameterPointer] smstools3/src/extras.c:1862:18: style: Variable 'timeinfo' can be declared as pointer to const [constVariablePointer] smstools3/src/extras.c:1891:36: style: Parameter 'text' can be declared as pointer to const [constParameterPointer] smstools3/src/extras.c:662:10: style: struct member '_candidate::fname' is never used. [unusedStructMember] smstools3/src/extras.c:663:12: style: struct member '_candidate::mtime' is never used. [unusedStructMember] smstools3/src/extras.c:764:18: style: Variable 'result' is assigned a value that is never used. [unreadVariable] smstools3/src/modeminit.c:344:20: error: Array 'read_timeouts[25]' accessed at index 25, which is out of bounds. [arrayIndexOutOfBounds] smstools3/src/modeminit.c:334:3: note: After for loop, i has value 25 smstools3/src/modeminit.c:344:20: note: Array index out of bounds smstools3/src/modeminit.c:1439:3: style: Obsolescent function 'bzero' called. It is recommended to use 'memset' instead. [prohibitedbzeroCalled] smstools3/src/modeminit.c:2269:14: style: Obsolescent function 'gethostbyname' called. It is recommended to use 'getaddrinfo' instead. [prohibitedgethostbynameCalled] smstools3/src/modeminit.c:373:17: style: Redundant condition: The condition 'ssi == 99' is redundant since 'ssi > 31' is sufficient. [redundantCondition] smstools3/src/modeminit.c:2305:5: error: Resource leak: fd [resourceLeak] smstools3/src/modeminit.c:979:19: error: Common realloc mistake: 'routed_pdu_store' nulled but not freed upon failure [memleakOnRealloc] smstools3/src/modeminit.c:686:9: style: Local variable 'i' shadows outer variable [shadowVariable] smstools3/src/modeminit.c:603:7: note: Shadowed declaration smstools3/src/modeminit.c:686:9: note: Shadow variable smstools3/src/modeminit.c:841:13: style: Local variable 'i' shadows outer variable [shadowVariable] smstools3/src/modeminit.c:779:7: note: Shadowed declaration smstools3/src/modeminit.c:841:13: note: Shadow variable smstools3/src/modeminit.c:1166:10: style: Local variable 'start_time' shadows outer variable [shadowVariable] smstools3/src/stats.h:38:8: note: Shadowed declaration smstools3/src/modeminit.c:1166:10: note: Shadow variable smstools3/src/modeminit.c:1322:13: style: Local variable 'i' shadows outer variable [shadowVariable] smstools3/src/modeminit.c:1171:7: note: Shadowed declaration smstools3/src/modeminit.c:1322:13: note: Shadow variable smstools3/src/modeminit.c:290:9: style: Variable 'p' can be declared as pointer to const [constVariablePointer] smstools3/src/modeminit.c:326:57: style: Parameter 'keyword' can be declared as pointer to const [constParameterPointer] smstools3/src/modeminit.c:379:11: style: Variable 'level' can be declared as pointer to const [constVariablePointer] smstools3/src/modeminit.c:448:9: style: Variable 'p' can be declared as pointer to const [constVariablePointer] smstools3/src/modeminit.c:706:9: style: Variable 'p' can be declared as pointer to const [constVariablePointer] smstools3/src/modeminit.c:923:9: style: Variable 'keyword' can be declared as pointer to const [constVariablePointer] smstools3/src/modeminit.c:924:9: style: Variable 'keyword_sr' can be declared as pointer to const [constVariablePointer] smstools3/src/modeminit.c:932:9: style: Variable 'p2' can be declared as pointer to const [constVariablePointer] smstools3/src/modeminit.c:1086:8: style: Variable 'p' can be declared as pointer to const [constVariablePointer] smstools3/src/modeminit.c:1138:9: style: Variable 'p' can be declared as pointer to const [constVariablePointer] smstools3/src/modeminit.c:1323:15: style: Variable 'p' can be declared as pointer to const [constVariablePointer] smstools3/src/modeminit.c:1378:13: style: Variable 'p' can be declared as pointer to const [constVariablePointer] smstools3/src/modeminit.c:2169:11: style: Variable 'commands' can be declared as const array [constVariable] smstools3/src/modeminit.c:2258:19: style: Variable 'he' can be declared as pointer to const [constVariablePointer] smstools3/src/modeminit.c:2607:17: style: Variable 'answer' can be declared as pointer to const [constVariablePointer] smstools3/src/modeminit.c:769:13: style: Variable 'toread' is assigned a value that is never used. [unreadVariable] smstools3/src/stats.c:48:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/stats.c:123:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NUMBER_OF_MODEMS [valueFlowBailoutIncompleteVar] smstools3/src/stats.c:146:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/stats.c:175:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/stats.c:219:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NUMBER_OF_MODEMS [valueFlowBailoutIncompleteVar] smstools3/src/stats.c:235:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/stats.c:316:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/stats.c:358:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/stats.c:272:44: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] smstools3/src/stats.c:392:59: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] smstools3/src/stats.c:426:63: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] smstools3/src/stats.c:460:61: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] smstools3/src/stats.c:314:49: style: Parameter 'modemname' can be declared as pointer to const [constParameterPointer] smstools3/src/stats.c:361:9: style: Variable 'status' can be declared as pointer to const [constVariablePointer] smstools3/src/whitelist.c:76:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_CRIT [valueFlowBailoutIncompleteVar] smstools3/src/whitelist.c:27:25: style: Parameter 'msisdn' can be declared as pointer to const [constParameterPointer] smstools3/src/smsd_cfg.c:162:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NUMBER_OF_MODEMS [valueFlowBailoutIncompleteVar] smstools3/src/smsd_cfg.c:313:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_WARNING [valueFlowBailoutIncompleteVar] smstools3/src/smsd_cfg.c:484:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] smstools3/src/smsd_cfg.c:681:29: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NUMBER_OF_MODEMS [valueFlowBailoutIncompleteVar] smstools3/src/smsd_cfg.c:2215:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] smstools3/src/smsd_cfg.c:2673:38: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NUMBER_OF_MODEMS [valueFlowBailoutIncompleteVar] smstools3/src/smsd_cfg.c:2722:37: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NUMBER_OF_MODEMS [valueFlowBailoutIncompleteVar] smstools3/src/smsd_cfg.c:2805:62: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable optarg [valueFlowBailoutIncompleteVar] smstools3/src/smsd_cfg.c:2850:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/smsd_cfg.c:2894:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/smsd_cfg.c:2923:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] smstools3/src/smsd_cfg.c:2935:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/smsd_cfg.c:3132:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/pdu.c:33:23: style: Parameter 'buffer' can be declared as pointer to const [constParameterPointer] smstools3/src/pdu.c:63:9: style: Variable 'used_title' can be declared as pointer to const [constVariablePointer] smstools3/src/pdu.c:123:20: style: Parameter 'text' can be declared as pointer to const [constParameterPointer] smstools3/src/pdu.c:123:55: style: Parameter 'udh' can be declared as pointer to const [constParameterPointer] smstools3/src/pdu.c:203:23: style: Parameter 'binary' can be declared as pointer to const [constParameterPointer] smstools3/src/pdu.c:218:47: style: Parameter 'number' can be declared as pointer to const [constParameterPointer] smstools3/src/pdu.c:298:9: style: Parameter 'number' can be declared as pointer to const [constParameterPointer] smstools3/src/pdu.c:306:9: style: Parameter 'mode' can be declared as pointer to const [constParameterPointer] smstools3/src/pdu.c:480:21: style: Parameter 'octet' can be declared as pointer to const [constParameterPointer] smstools3/src/pdu.c:593:29: style: Parameter 'udh' can be declared as pointer to const [constParameterPointer] smstools3/src/pdu.c:619:39: style: Parameter 'pdu' can be declared as pointer to const [constParameterPointer] smstools3/src/pdu.c:985:9: style: Variable 'p' can be declared as pointer to const [constVariablePointer] smstools3/src/pdu.c:1031:9: style: Variable 'p' can be declared as pointer to const [constVariablePointer] smstools3/src/pdu.c:1312:24: style: Parameter 'full_pdu' can be declared as pointer to const [constParameterPointer] smstools3/src/pdu.c:1547:9: style: Variable 'try_mode' can be declared as pointer to const [constVariablePointer] smstools3/src/pdu.c:1781:15: style: Variable 'n_mode' can be declared as pointer to const [constVariablePointer] smstools3/src/pdu.c:1782:15: style: Variable 'o_mode' can be declared as pointer to const [constVariablePointer] smstools3/src/pdu.c:1838:9: style: Variable 'p' can be declared as pointer to const [constVariablePointer] smstools3/src/pdu.c:1950:53: style: Parameter 'text' can be declared as pointer to const [constParameterPointer] smstools3/src/pdu.c:1984:9: style: Variable 'end' can be declared as pointer to const [constVariablePointer] smstools3/src/pdu.c:164:20: style: Variable 'udh_size_octets' is assigned a value that is never used. [unreadVariable] smstools3/src/pdu.c:893:15: style: Variable 'udhsize' is assigned a value that is never used. [unreadVariable] smstools3/src/smsd.c:243:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NUMBER_OF_MODEMS [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:297:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_ERR [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:358:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:375:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:852:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:912:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:933:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_RDONLY [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:962:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:1187:33: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_ERR [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:1543:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_ERR [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:1733:27: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_ERR [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:1818:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NUMBER_OF_MODEMS [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:1894:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:2103:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_ERR [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:2121:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_INFO [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:2133:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:2262:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_INFO [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:2313:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_INFO [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:2360:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:2821:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:2933:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:3233:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_NOTICE [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:3755:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:4086:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_INFO [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:4420:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:5797:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_INFO [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:5879:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_DEBUG [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:6121:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:6226:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:6350:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_DEBUG [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:6400:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_DEBUG [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:6447:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:6606:7: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_NOTICE [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:6781:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_CRIT [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:6815:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_NOTICE [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:6834:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_NOTICE [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:6846:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_WARNING [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:6868:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_DEBUG [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:6892:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:6957:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_INFO [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:7373:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_WARNING [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:7434:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SIG_IGN [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:7514:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SIG_IGN [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:7554:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SIG_IGN [valueFlowBailoutIncompleteVar] smstools3/src/smsd.c:7691:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NUMBER_OF_MODEMS [valueFlowBailoutIncompleteVar] smstools3/src/smsd_cfg.c:2673:18: style: Array index 'i' is used before limits check. [arrayIndexThenCheck] smstools3/src/smsd_cfg.c:2676:31: style: Array index 'j' is used before limits check. [arrayIndexThenCheck] smstools3/src/smsd_cfg.c:2697:18: style: Array index 'i' is used before limits check. [arrayIndexThenCheck] smstools3/src/smsd_cfg.c:2722:17: style: Array index 'i' is used before limits check. [arrayIndexThenCheck] smstools3/src/smsd_cfg.c:3225:16: style: Array index 'x' is used before limits check. [arrayIndexThenCheck] smstools3/src/smsd_cfg.c:3237:20: style: Array index 'i' is used before limits check. [arrayIndexThenCheck] smstools3/src/smsd_cfg.c:2900:21: portability: Non reentrant function 'readdir' called. For threadsafe applications it is recommended to use the reentrant replacement function 'readdir_r'. [prohibitedreaddirCalled] smstools3/src/smsd_cfg.c:3543:96: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] smstools3/src/smsd_cfg.c:3546:94: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] smstools3/src/smsd_cfg.c:3549:106: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] smstools3/src/smsd_cfg.c:83:5: error: Common realloc mistake: 'startup_err_str' nulled but not freed upon failure [memleakOnRealloc] smstools3/src/smsd_cfg.c:1594:18: style: Local variable 'result' shadows outer variable [shadowVariable] smstools3/src/smsd_cfg.c:569:9: note: Shadowed declaration smstools3/src/smsd_cfg.c:1594:18: note: Shadow variable smstools3/src/smsd_cfg.c:3483:12: style: Local variable 'tmp' shadows outer variable [shadowVariable] smstools3/src/smsd_cfg.c:3132:8: note: Shadowed declaration smstools3/src/smsd_cfg.c:3483:12: note: Shadow variable smstools3/src/smsd_cfg.c:3485:11: style: Local variable 'i' shadows outer variable [shadowVariable] smstools3/src/smsd_cfg.c:3128:7: note: Shadowed declaration smstools3/src/smsd_cfg.c:3485:11: note: Shadow variable smstools3/src/smsd_cfg.c:455:23: style: Parameter 'section' can be declared as pointer to const [constParameterPointer] smstools3/src/smsd_cfg.c:455:38: style: Parameter 'name' can be declared as pointer to const [constParameterPointer] smstools3/src/smsd_cfg.c:538:29: style: Parameter 'device_name' can be declared as pointer to const [constParameterPointer] smstools3/src/smsd_cfg.c:540:9: style: Variable 'p' can be declared as pointer to const [constVariablePointer] smstools3/src/smsd_cfg.c:2647:20: style: Parameter 'name' can be declared as pointer to const [constParameterPointer] smstools3/src/smsd_cfg.c:2718:21: style: Parameter 'name' can be declared as pointer to const [constParameterPointer] smstools3/src/smsd_cfg.c:2892:18: style: Variable 'ent' can be declared as pointer to const [constVariablePointer] smstools3/src/smsd.c:7918:5: warning: Return value of function dup() is not used. [ignoredReturnValue] smstools3/src/smsd.c:7919:5: warning: Return value of function dup() is not used. [ignoredReturnValue] smstools3/src/smsd.c:443:61: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] smstools3/src/smsd.c:2686:24: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] smstools3/src/smsd.c:6291:24: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] smstools3/src/smsd.c:7494:59: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] smstools3/src/smsd.c:7738:15: portability: Non reentrant function 'getpwnam' called. For threadsafe applications it is recommended to use the reentrant replacement function 'getpwnam_r'. [prohibitedgetpwnamCalled] smstools3/src/smsd.c:7749:17: portability: Non reentrant function 'getgrnam' called. For threadsafe applications it is recommended to use the reentrant replacement function 'getgrnam_r'. [prohibitedgetgrnamCalled] smstools3/src/smsd.c:7826:9: portability: Non reentrant function 'getpwuid' called. For threadsafe applications it is recommended to use the reentrant replacement function 'getpwuid_r'. [prohibitedgetpwuidCalled] smstools3/src/smsd.c:7827:9: portability: Non reentrant function 'getgrgid' called. For threadsafe applications it is recommended to use the reentrant replacement function 'getgrgid_r'. [prohibitedgetgrgidCalled] smstools3/src/smsd.c:8255:65: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] smstools3/src/smsd.c:8317:59: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] smstools3/src/smsd.c:1745:22: warning: %x in format string (no. 1) requires 'unsigned int *' but the argument type is 'signed int *'. [invalidScanfArgType_int] smstools3/src/smsd.c:3991:13: warning: %u in format string (no. 2) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] smstools3/src/smsd.c:5979:23: warning: %X in format string (no. 1) requires 'unsigned int *' but the argument type is 'signed int *'. [invalidScanfArgType_int] smstools3/src/smsd.c:4151:7: error: Common realloc mistake: 'outgoing_pdu_store' nulled but not freed upon failure [memleakOnRealloc] smstools3/src/smsd.c:312:20: style: Local variable 'start_time' shadows outer variable [shadowVariable] smstools3/src/stats.h:38:8: note: Shadowed declaration smstools3/src/smsd.c:312:20: note: Shadow variable smstools3/src/smsd.c:3158:17: style: Local variable 'p_count' shadows outer variable [shadowVariable] smstools3/src/smsd.c:3092:7: note: Shadowed declaration smstools3/src/smsd.c:3158:17: note: Shadow variable smstools3/src/smsd.c:3158:26: style: Local variable 'p_number' shadows outer variable [shadowVariable] smstools3/src/smsd.c:3093:7: note: Shadowed declaration smstools3/src/smsd.c:3158:26: note: Shadow variable smstools3/src/smsd.c:3622:17: style: Local variable 'p' shadows outer variable [shadowVariable] smstools3/src/smsd.c:3511:15: note: Shadowed declaration smstools3/src/smsd.c:3622:17: note: Shadow variable smstools3/src/smsd.c:3623:17: style: Local variable 'p2' shadows outer variable [shadowVariable] smstools3/src/smsd.c:3128:14: note: Shadowed declaration smstools3/src/smsd.c:3623:17: note: Shadow variable smstools3/src/smsd.c:3748:7: style: Local variable 'start_time' shadows outer variable [shadowVariable] smstools3/src/stats.h:38:8: note: Shadowed declaration smstools3/src/smsd.c:3748:7: note: Shadow variable smstools3/src/smsd.c:3887:15: style: Local variable 'i' shadows outer variable [shadowVariable] smstools3/src/smsd.c:3762:10: note: Shadowed declaration smstools3/src/smsd.c:3887:15: note: Shadow variable smstools3/src/smsd.c:3945:15: style: Local variable 'i' shadows outer variable [shadowVariable] smstools3/src/smsd.c:3762:10: note: Shadowed declaration smstools3/src/smsd.c:3945:15: note: Shadow variable smstools3/src/smsd.c:4064:10: style: Local variable 'start_time' shadows outer variable [shadowVariable] smstools3/src/stats.h:38:8: note: Shadowed declaration smstools3/src/smsd.c:4064:10: note: Shadow variable smstools3/src/smsd.c:4482:10: style: Local variable 'start_time' shadows outer variable [shadowVariable] smstools3/src/stats.h:38:8: note: Shadowed declaration smstools3/src/smsd.c:4482:10: note: Shadow variable smstools3/src/smsd.c:4876:13: style: Local variable 'i' shadows outer variable [shadowVariable] smstools3/src/smsd.c:4458:7: note: Shadowed declaration smstools3/src/smsd.c:4876:13: note: Shadow variable smstools3/src/smsd.c:5081:11: style: Local variable 'i' shadows outer variable [shadowVariable] smstools3/src/smsd.c:4458:7: note: Shadowed declaration smstools3/src/smsd.c:5081:11: note: Shadow variable smstools3/src/smsd.c:5773:14: style: Local variable 'message_count' shadows outer variable [shadowVariable] smstools3/src/smsd_cfg.h:409:5: note: Shadowed declaration smstools3/src/smsd.c:5773:14: note: Shadow variable smstools3/src/smsd.c:5917:15: style: Local variable 'command' shadows outer argument [shadowArgument] smstools3/src/smsd.c:5861:24: note: Shadowed declaration smstools3/src/smsd.c:5917:15: note: Shadow variable smstools3/src/smsd.c:6005:19: style: Local variable 'i' shadows outer variable [shadowVariable] smstools3/src/smsd.c:5870:7: note: Shadowed declaration smstools3/src/smsd.c:6005:19: note: Shadow variable smstools3/src/smsd.c:7819:11: style: Local variable 'p' shadows outer variable [shadowVariable] smstools3/src/smsd.c:7660:9: note: Shadowed declaration smstools3/src/smsd.c:7819:11: note: Shadow variable smstools3/src/smsd.c:7957:9: style: Local variable 'i' shadows outer variable [shadowVariable] smstools3/src/smsd.c:7647:7: note: Shadowed declaration smstools3/src/smsd.c:7957:9: note: Shadow variable smstools3/src/smsd.c:8008:27: style: Local variable 'i' shadows outer variable [shadowVariable] smstools3/src/smsd.c:7647:7: note: Shadowed declaration smstools3/src/smsd.c:8008:27: note: Shadow variable smstools3/src/smsd.c:8131:21: style: Local variable 'p' shadows outer variable [shadowVariable] smstools3/src/smsd.c:7660:9: note: Shadowed declaration smstools3/src/smsd.c:8131:21: note: Shadow variable smstools3/src/smsd.c:252:9: style: Variable 'to' can be declared as pointer to const [constVariablePointer] smstools3/src/smsd.c:354:65: style: Parameter 'event' can be declared as pointer to const [constParameterPointer] smstools3/src/smsd.c:354:78: style: Parameter 'arg3' can be declared as pointer to const [constParameterPointer] smstools3/src/smsd.c:359:11: style: Variable 'handler' can be declared as pointer to const [constVariablePointer] smstools3/src/smsd.c:360:11: style: Variable 'fn2eventhandler' can be declared as pointer to const [constVariablePointer] smstools3/src/smsd.c:647:34: style: Parameter 'line' can be declared as pointer to const [constParameterPointer] smstools3/src/smsd.c:647:66: style: Parameter 'header2' can be declared as pointer to const [constParameterPointer] smstools3/src/smsd.c:675:9: style: Variable 'p' can be declared as pointer to const [constVariablePointer] smstools3/src/smsd.c:783:9: style: Variable 'p_macro' can be declared as pointer to const [constVariablePointer] smstools3/src/smsd.c:835:50: style: Parameter 'arg_text' can be declared as pointer to const [constParameterPointer] smstools3/src/smsd.c:841:9: style: Variable 'allowed_chars' can be declared as pointer to const [constVariablePointer] smstools3/src/smsd.c:842:8: style: Variable 'replace_from' can be declared as const array [constVariable] smstools3/src/smsd.c:851:9: style: Variable 'replace_to' can be declared as pointer to const [constVariablePointer] smstools3/src/smsd.c:854:9: style: Variable 'p' can be declared as pointer to const [constVariablePointer] smstools3/src/smsd.c:910:28: style: Parameter 'filename' can be declared as pointer to const [constParameterPointer] smstools3/src/smsd.c:955:64: style: Parameter 'add_buffer' can be declared as pointer to const [constParameterPointer] smstools3/src/smsd.c:960:9: style: Variable 'p' can be declared as pointer to const [constVariablePointer] smstools3/src/smsd.c:1162:11: style: Variable 'bom' can be declared as pointer to const [constVariablePointer] smstools3/src/smsd.c:1385:19: style: Variable 'p1' can be declared as pointer to const [constVariablePointer] smstools3/src/smsd.c:2074:15: style: Variable 'fn2eventhandler' can be declared as pointer to const [constVariablePointer] smstools3/src/smsd.c:2299:9: style: Variable 'p' can be declared as pointer to const [constVariablePointer] smstools3/src/smsd.c:2818:61: style: Parameter 'entry_text' can be declared as pointer to const [constParameterPointer] smstools3/src/smsd.c:2919:9: style: Variable 'end2' can be declared as pointer to const [constVariablePointer] smstools3/src/smsd.c:2932:11: style: Variable 'p' can be declared as pointer to const [constVariablePointer] smstools3/src/smsd.c:3128:14: style: Variable 'p2' can be declared as pointer to const [constVariablePointer] smstools3/src/smsd.c:3511:15: style: Variable 'p' can be declared as pointer to const [constVariablePointer] smstools3/src/smsd.c:3623:17: style: Variable 'p2' can be declared as pointer to const [constVariablePointer] smstools3/src/smsd.c:4143:11: style: Variable 'title' can be declared as pointer to const [constVariablePointer] smstools3/src/smsd.c:5373:17: style: Variable 'quotation_mark' can be declared as pointer to const [constVariablePointer] smstools3/src/smsd.c:5767:30: style: Parameter 'quick' can be declared as pointer to const [constParameterPointer] smstools3/src/smsd.c:5959:20: style: Variable 'p2' can be declared as pointer to const [constVariablePointer] smstools3/src/smsd.c:6287:19: style: Variable 'p2' can be declared as pointer to const [constVariablePointer] smstools3/src/smsd.c:6454:9: style: Variable 'p' can be declared as pointer to const [constVariablePointer] smstools3/src/smsd.c:7602:54: style: Parameter 'process_title' can be declared as pointer to const [constParameterPointer] smstools3/src/smsd.c:7660:9: style: Variable 'p' can be declared as pointer to const [constVariablePointer] smstools3/src/smsd.c:8039:39: style: Variable 'event' can be declared as pointer to const [constVariablePointer] smstools3/src/smsd.c:5944:26: error: Uninitialized variable: answer [legacyUninitvar] smstools3/src/smsd.c:1966:41: style: Variable 'queue' is assigned a value that is never used. [unreadVariable] smstools3/src/smsd.c:1973:44: style: Variable 'queue' is assigned a value that is never used. [unreadVariable] smstools3/src/smsd.c:3344:19: style: Variable 'udlen' is assigned a value that is never used. [unreadVariable] smstools3/src/smsd.c:3704:30: style: Variable 'userdatalength' is assigned a value that is never used. [unreadVariable] smstools3/src/smsd.c:4495:16: style: Variable 'queue' is assigned a value that is never used. [unreadVariable] diff: DONE