Bug 809974

Summary: Bugs found in pyxattr-0.5.0-4.fc17 using gcc-with-cpychecker static analyzer
Product: [Fedora] Fedora Reporter: Dave Malcolm <dmalcolm>
Component: pyxattrAssignee: Marcin Zajaczkowski <mszpak>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: iustin, mszpak
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
URL: http://fedorapeople.org/~dmalcolm/gcc-python-plugin/2012-04-04/pyxattr-0.5.0-4.fc17/
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-08-09 18:53:25 EDT Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
Bug Depends On:    
Bug Blocks: 789472    

Description Dave Malcolm 2012-04-04 14:58:46 EDT
Description of problem:
I've been writing an experimental static analysis tool to detect bugs commonly occurring within C Python extension modules:
  https://fedorahosted.org/gcc-python-plugin/
  http://gcc-python-plugin.readthedocs.org/en/latest/cpychecker.html
  http://fedoraproject.org/wiki/Features/StaticAnalysisOfPythonRefcounts

I ran the latest version of the tool (in git master; post 0.9) on
pyxattr-0.5.0-4.fc17.src.rpm, and it reports various errors.

You can see a list of errors here, triaged into categories (from most significant to least significant):
http://fedorapeople.org/~dmalcolm/gcc-python-plugin/2012-04-04/pyxattr-0.5.0-4.fc17/

I've manually reviewed the issues reported by the tool.

Within the category "Reference leaks" the 1 issue reported appears to be a genuine leak.

Within the category "Reference leak within initialization" the 1 issues reported is likely to be inconsequential.

Within the category "Segfaults within error-handling paths" the 3 issues reported appear to be genuine crashers under low-memory conditions

Within the category "Returning (PyObject*)NULL without setting an exception" the 6 issues reported appear to all be false positives.

There may of course be other bugs in my checker tool.

Hope this is helpful; let me know if you need help reading the logs that the tool generates - I know that it could use some improvement.

Version-Release number of selected component (if applicable):
pyxattr-0.5.0-4.fc17
gcc-python-plugin post-0.9 git 796fa7a73adfddb182c2edad70694b5ebca337b9 running the checker in an *f16* chroot
Comment 1 Marcin Zajaczkowski 2012-04-04 17:51:39 EDT
Thanks for your work. I will contact Iustin which is also the author of pylibacl (bug 800126).
Comment 2 Iustin Pop 2012-05-15 19:59:33 EDT
Hi,

Just released a new version on GitHub, https://github.com/downloads/iustin/pyxattr/pyxattr-0.5.1.tar.gz. It should fix all reported issues, plus additionaly I've used the very nice cpychecker_negative_result_sets_exception so that the false positives went away and found a few other small issues. Package doesn't generate any messages anymore (not even non-error ones). Thanks again Dave!

Marcin, I hope you won't have any issues updating to this version; some other things have changed, but it should be straightforward.
Comment 3 Fedora Update System 2012-06-26 17:18:44 EDT
pyxattr-0.5.1-1.fc17 has been submitted as an update for Fedora 17.
https://admin.fedoraproject.org/updates/pyxattr-0.5.1-1.fc17
Comment 4 Fedora Update System 2012-06-26 17:19:37 EDT
pyxattr-0.5.1-1.fc16 has been submitted as an update for Fedora 16.
https://admin.fedoraproject.org/updates/pyxattr-0.5.1-1.fc16
Comment 5 Fedora Update System 2012-06-27 15:49:00 EDT
pyxattr-0.5.1-2.fc16 has been submitted as an update for Fedora 16.
https://admin.fedoraproject.org/updates/pyxattr-0.5.1-2.fc16
Comment 6 Fedora Update System 2012-06-27 23:19:54 EDT
Package pyxattr-0.5.1-1.fc17:
* should fix your issue,
* was pushed to the Fedora 17 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing pyxattr-0.5.1-1.fc17'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2012-9969/pyxattr-0.5.1-1.fc17
then log in and leave karma (feedback).
Comment 7 Fedora Update System 2012-08-09 18:53:25 EDT
pyxattr-0.5.1-1.fc17 has been pushed to the Fedora 17 stable repository.  If problems still persist, please make note of it in this bug report.