[New-bugs-announce] [issue32342] safe_power(): CID 1426161: Integer handling issues (DIVIDE_BY_ZERO)

STINNER Victor report at bugs.python.org
Fri Dec 15 16:39:12 EST 2017


New submission from STINNER Victor <victor.stinner at gmail.com>:

Coverity found an issue in the commit 2e3f5701858d1fc04caedefdd9a8ea43810270d2 (bpo-30416).

New defect(s) Reported-by: Coverity Scan
Showing 1 of 1 defect(s)

** CID 1426161:  Integer handling issues  (DIVIDE_BY_ZERO)
/Python/ast_opt.c: 219 in safe_power()

________________________________________________________________________________________________________
*** CID 1426161:  Integer handling issues  (DIVIDE_BY_ZERO)
/Python/ast_opt.c: 219 in safe_power()
213         if (PyLong_Check(v) && PyLong_Check(w) && Py_SIZE(v) && Py_SIZE(w) > 0) {
214             size_t vbits = _PyLong_NumBits(v);
215             size_t wbits = PyLong_AsSize_t(w);
216             if (vbits == (size_t)-1 || wbits == (size_t)-1) {
217                 return NULL;
218             }
>>>     CID 1426161:  Integer handling issues  (DIVIDE_BY_ZERO)
>>>     In expression "128UL / wbits", division by expression "wbits" which may be zero has undefined behavior.
219             if (vbits > MAX_INT_SIZE / wbits) {
220                 return NULL;
221             }
222         }
223
224         return PyNumber_Power(v, w, Py_None);

----------
components: Interpreter Core
messages: 308428
nosy: serhiy.storchaka, vstinner
priority: normal
severity: normal
status: open
title: safe_power(): CID 1426161:  Integer handling issues  (DIVIDE_BY_ZERO)
versions: Python 3.7

_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue32342>
_______________________________________


More information about the New-bugs-announce mailing list