2025-05-07 06:57 ftp://ftp.de.debian.org/debian/pool/main/p/pykerberos/pykerberos_1.1.14.orig.tar.gz cppcheck-options: --library=posix --library=gnu --library=bsd --library=python --inconclusive --enable=style,information --inline-suppr --template=daca2 --disable=missingInclude --suppress=unmatchedSuppression --check-library --debug-warnings --suppress=autoNoType --suppress=valueFlowBailout --suppress=bailoutUninitVar --suppress=symbolDatabaseWarning --suppress=normalCheckLevelConditionExpressions -D__GNUC__ --platform=unix64 -j1 platform: Linux-6.8.0-59-generic-x86_64-with-glibc2.39 python: 3.12.3 client-version: 1.3.67 compiler: g++ (Ubuntu 14.2.0-4ubuntu2~24.04) 14.2.0 cppcheck: head 2.17.0 head-info: 8e656e5 (2025-05-06 23:42:00 +0200) count: 38 38 elapsed-time: 0.4 0.3 head-timing-info: old-timing-info: head results: pykerberos-1.1.14/src/base64.c:49:13: warning: If memory allocation fails, then there is a possible null pointer dereference: out++ [nullPointerOutOfMemory] pykerberos-1.1.14/src/base64.c:45:34: note: Assuming allocation function fails pykerberos-1.1.14/src/base64.c:45:20: note: Assignment 'result=(char*)malloc((vlen*4)/3+5)', assigned value is 0 pykerberos-1.1.14/src/base64.c:46:17: note: Assignment 'out=result', assigned value is 0 pykerberos-1.1.14/src/base64.c:49:13: note: Null pointer dereference pykerberos-1.1.14/src/base64.c:49:13: error: If memory allocation fails: pointer addition with NULL pointer. [nullPointerArithmeticOutOfMemory] pykerberos-1.1.14/src/base64.c:45:34: note: Assuming allocation function fails pykerberos-1.1.14/src/base64.c:45:20: note: Assignment 'result=(char*)malloc((vlen*4)/3+5)', assigned value is 0 pykerberos-1.1.14/src/base64.c:46:17: note: Assignment 'out=result', assigned value is 0 pykerberos-1.1.14/src/base64.c:49:13: note: Null pointer addition pykerberos-1.1.14/src/kerberos.c:63:26: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Py_True [valueFlowBailoutIncompleteVar] pykerberos-1.1.14/src/kerberos.c:82:26: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Py_True [valueFlowBailoutIncompleteVar] pykerberos-1.1.14/src/kerberos.c:129:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GSS_C_NO_OID [valueFlowBailoutIncompleteVar] pykerberos-1.1.14/src/kerberos.c:177:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PyExc_TypeError [valueFlowBailoutIncompleteVar] pykerberos-1.1.14/src/kerberos.c:203:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PyExc_TypeError [valueFlowBailoutIncompleteVar] pykerberos-1.1.14/src/kerberos.c:224:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PyExc_TypeError [valueFlowBailoutIncompleteVar] pykerberos-1.1.14/src/kerberos.c:245:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PyExc_TypeError [valueFlowBailoutIncompleteVar] pykerberos-1.1.14/src/kerberos.c:268:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PyExc_TypeError [valueFlowBailoutIncompleteVar] pykerberos-1.1.14/src/kerberos.c:328:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PyExc_TypeError [valueFlowBailoutIncompleteVar] pykerberos-1.1.14/src/kerberos.c:429:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PyExc_TypeError [valueFlowBailoutIncompleteVar] pykerberos-1.1.14/src/kerberos.c:455:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PyExc_TypeError [valueFlowBailoutIncompleteVar] pykerberos-1.1.14/src/kerberos.c:476:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PyExc_TypeError [valueFlowBailoutIncompleteVar] pykerberos-1.1.14/src/kerberos.c:497:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PyExc_TypeError [valueFlowBailoutIncompleteVar] pykerberos-1.1.14/src/kerberos.c:611:64: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GSS_C_DELEG_FLAG [valueFlowBailoutIncompleteVar] pykerberos-1.1.14/src/kerberos.c:162:47: style: Parameter 'self' can be declared as pointer to const. However it seems that 'authGSSClientClean' is a callback function, if 'self' is declared with const you might also need to cast function pointer(s). [constParameterCallback] pykerberos-1.1.14/src/kerberos.c:518:29: note: You might need to cast the function pointer here pykerberos-1.1.14/src/kerberos.c:162:47: note: Parameter 'self' can be declared as pointer to const pykerberos-1.1.14/src/kerberos.c:162:63: style: Parameter 'args' can be declared as pointer to const. However it seems that 'authGSSClientClean' is a callback function, if 'args' is declared with const you might also need to cast function pointer(s). [constParameterCallback] pykerberos-1.1.14/src/kerberos.c:518:29: note: You might need to cast the function pointer here pykerberos-1.1.14/src/kerberos.c:162:63: note: Parameter 'args' can be declared as pointer to const pykerberos-1.1.14/src/kerberos.c:414:47: style: Parameter 'self' can be declared as pointer to const. However it seems that 'authGSSServerClean' is a callback function, if 'self' is declared with const you might also need to cast function pointer(s). [constParameterCallback] pykerberos-1.1.14/src/kerberos.c:540:29: note: You might need to cast the function pointer here pykerberos-1.1.14/src/kerberos.c:414:47: note: Parameter 'self' can be declared as pointer to const pykerberos-1.1.14/src/kerberos.c:414:63: style: Parameter 'args' can be declared as pointer to const. However it seems that 'authGSSServerClean' is a callback function, if 'args' is declared with const you might also need to cast function pointer(s). [constParameterCallback] pykerberos-1.1.14/src/kerberos.c:540:29: note: You might need to cast the function pointer here pykerberos-1.1.14/src/kerberos.c:414:63: note: Parameter 'args' can be declared as pointer to const pykerberos-1.1.14/src/kerberosbasic.c:39:22: style: Variable 'p' can be declared as pointer to const [constVariablePointer] pykerberos-1.1.14/src/kerberosgss.c:113:34: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GSS_C_EMPTY_BUFFER [valueFlowBailoutIncompleteVar] pykerberos-1.1.14/src/kerberosgss.c:188:27: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GSS_C_NO_CONTEXT [valueFlowBailoutIncompleteVar] pykerberos-1.1.14/src/kerberosgss.c:213:35: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GSS_C_EMPTY_BUFFER [valueFlowBailoutIncompleteVar] pykerberos-1.1.14/src/kerberosgss.c:310:32: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GSS_C_EMPTY_BUFFER [valueFlowBailoutIncompleteVar] pykerberos-1.1.14/src/kerberosgss.c:536:32: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GSS_C_EMPTY_BUFFER [valueFlowBailoutIncompleteVar] pykerberos-1.1.14/src/kerberosgss.c:618:34: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GSS_C_EMPTY_BUFFER [valueFlowBailoutIncompleteVar] pykerberos-1.1.14/src/kerberosgss.c:668:27: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GSS_C_NO_CONTEXT [valueFlowBailoutIncompleteVar] pykerberos-1.1.14/src/kerberosgss.c:701:35: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GSS_C_EMPTY_BUFFER [valueFlowBailoutIncompleteVar] pykerberos-1.1.14/src/kerberosgss.c:825:9: warning:inconclusive: The buffer 'buf_maj' may not be null-terminated after the call to strncpy(). [terminateStrncpy] pykerberos-1.1.14/src/kerberosgss.c:836:13: warning:inconclusive: The buffer 'buf_min' may not be null-terminated after the call to strncpy(). [terminateStrncpy] pykerberos-1.1.14/src/kerberosgss.c:83:20: warning: If memory allocation fails, then there is a possible null pointer dereference: result [nullPointerOutOfMemory] pykerberos-1.1.14/src/kerberosgss.c:82:28: note: Assuming allocation function fails pykerberos-1.1.14/src/kerberosgss.c:82:28: note: Assignment 'result=malloc(strlen(pname)+1)', assigned value is 0 pykerberos-1.1.14/src/kerberosgss.c:83:20: note: Null pointer dereference pykerberos-1.1.14/src/kerberosgss.c:756:14: style: Variable 'maj_stat' is reassigned a value before the old one has been used. [redundantAssignment] pykerberos-1.1.14/src/kerberosgss.c:752:18: note: maj_stat is assigned pykerberos-1.1.14/src/kerberosgss.c:756:14: note: maj_stat is overwritten pykerberos-1.1.14/src/kerberosgss.c:261:18: style: Variable 'maj_stat' is assigned a value that is never used. [unreadVariable] pykerberos-1.1.14/src/kerberosgss.c:353:12: style: Variable 'maj_stat' is assigned a value that is never used. [unreadVariable] pykerberos-1.1.14/src/kerberosgss.c:601:12: style: Variable 'maj_stat' is assigned a value that is never used. [unreadVariable] pykerberos-1.1.14/src/kerberospw.c:59:29: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable krb5_creds [valueFlowBailoutIncompleteVar] pykerberos-1.1.14/src/kerberospw.c:94:14: warning: If memory allocation fails, then there is a possible null pointer dereference: name [nullPointerOutOfMemory] pykerberos-1.1.14/src/kerberospw.c:93:26: note: Assuming allocation function fails pykerberos-1.1.14/src/kerberospw.c:93:12: note: Assignment 'name=(char*)malloc(256)', assigned value is 0 pykerberos-1.1.14/src/kerberospw.c:94:14: note: Null pointer dereference diff: 2.17.0 pykerberos-1.1.14/src/base64.c:49:13: error: If memory allocation fail: pointer addition with NULL pointer. [nullPointerArithmeticOutOfMemory] pykerberos-1.1.14/src/base64.c:45:34: note: Assuming allocation function fails pykerberos-1.1.14/src/base64.c:45:20: note: Assignment 'result=(char*)malloc((vlen*4)/3+5)', assigned value is 0 pykerberos-1.1.14/src/base64.c:46:17: note: Assignment 'out=result', assigned value is 0 pykerberos-1.1.14/src/base64.c:49:13: note: Null pointer addition head pykerberos-1.1.14/src/base64.c:49:13: error: If memory allocation fails: pointer addition with NULL pointer. [nullPointerArithmeticOutOfMemory] pykerberos-1.1.14/src/base64.c:45:34: note: Assuming allocation function fails pykerberos-1.1.14/src/base64.c:45:20: note: Assignment 'result=(char*)malloc((vlen*4)/3+5)', assigned value is 0 pykerberos-1.1.14/src/base64.c:46:17: note: Assignment 'out=result', assigned value is 0 pykerberos-1.1.14/src/base64.c:49:13: note: Null pointer addition DONE