Mock Version: 1.1.14 Mock Version: 1.1.14 Mock Version: 1.1.14 Mock Version: 1.1.14 Mock Version: 1.1.14 Mock Version: 1.1.14 Mock Version: 1.1.14 Mock Version: 1.1.14 Mock Version: 1.1.14 Mock Version: 1.1.14 Mock Version: 1.1.14 Mock Version: 1.1.14 Mock Version: 1.1.14 Mock Version: 1.1.14 Mock Version: 1.1.14 Mock Version: 1.1.14 Mock Version: 1.1.14 Mock Version: 1.1.14 Mock Version: 1.1.14 Mock Version: 1.1.14 Mock Version: 1.1.14 ENTER do(['bash', '--login', '-c', 'rpmbuild -bs --target x86_64 --nodeps builddir/build/SPECS/python-netifaces.spec'], False, '/var/lib/mock/fedora-16-x86_64/root/', None, 0, True, False, 500, 475, None, logger=) Executing command: ['bash', '--login', '-c', 'rpmbuild -bs --target x86_64 --nodeps builddir/build/SPECS/python-netifaces.spec'] Building target platforms: x86_64 Building for target x86_64 Wrote: /builddir/build/SRPMS/python-netifaces-0.5-2.fc16.src.rpm Child returncode was: 0 LEAVE do --> ENTER do(['bash', '--login', '-c', 'rpmbuild -bb --target x86_64 --nodeps builddir/build/SPECS/python-netifaces.spec'], False, '/var/lib/mock/fedora-16-x86_64/root/', None, 0, True, False, 500, 475, None, logger=) Executing command: ['bash', '--login', '-c', 'rpmbuild -bb --target x86_64 --nodeps builddir/build/SPECS/python-netifaces.spec'] Building target platforms: x86_64 Building for target x86_64 Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.MZu41n + umask 022 + cd /builddir/build/BUILD + LANG=C + export LANG + unset DISPLAY + cd /builddir/build/BUILD + rm -rf netifaces-0.5 + /usr/bin/gzip -dc /builddir/build/SOURCES/netifaces-0.5.tar.gz + /bin/tar -xf - + STATUS=0 + '[' 0 -ne 0 ']' + cd netifaces-0.5 + /bin/chmod -Rf a+rX,u+w,g-w,o-w . + exit 0 Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.qHX1DM + umask 022 + cd /builddir/build/BUILD + cd netifaces-0.5 + LANG=C + export LANG + unset DISPLAY + python setup.py build running build running build_ext checking for getifaddrs...found. checking for getnameinfo...found. checking for optional header files...netash/ash.h netatalk/at.h netax25/ax25.h neteconet/ec.h netipx/ipx.h netpacket/packet.h linux/irda.h linux/atm.h linux/llc.h linux/tipc.h linux/dn.h. checking whether struct sockaddr has a length field...no. checking which sockaddr_xxx structs are defined...at ax25 in in6 ipx un ash ec ll atmpvc atmsvc dn irda llc. building 'netifaces' extension gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -fPIC -DHAVE_GETIFADDRS=1 -DHAVE_GETNAMEINFO=1 -DHAVE_NETASH_ASH_H=1 -DHAVE_NETATALK_AT_H=1 -DHAVE_NETAX25_AX25_H=1 -DHAVE_NETECONET_EC_H=1 -DHAVE_NETIPX_IPX_H=1 -DHAVE_NETPACKET_PACKET_H=1 -DHAVE_LINUX_IRDA_H=1 -DHAVE_LINUX_ATM_H=1 -DHAVE_LINUX_LLC_H=1 -DHAVE_LINUX_TIPC_H=1 -DHAVE_LINUX_DN_H=1 -DHAVE_SOCKADDR_AT=1 -DHAVE_SOCKADDR_AX25=1 -DHAVE_SOCKADDR_IN=1 -DHAVE_SOCKADDR_IN6=1 -DHAVE_SOCKADDR_IPX=1 -DHAVE_SOCKADDR_UN=1 -DHAVE_SOCKADDR_ASH=1 -DHAVE_SOCKADDR_EC=1 -DHAVE_SOCKADDR_LL=1 -DHAVE_SOCKADDR_ATMPVC=1 -DHAVE_SOCKADDR_ATMSVC=1 -DHAVE_SOCKADDR_DN=1 -DHAVE_SOCKADDR_IRDA=1 -DHAVE_SOCKADDR_LLC=1 -I/usr/include/python2.7 -c netifaces.c -o build/temp.linux-x86_64-2.7/netifaces.o netifaces.c: In function 'initnetifaces': netifaces.c:920:1: note: this function is too complicated for the reference-count checker to fully analyze: not all paths were analyzed netifaces.c: In function 'interfaces': netifaces.c:824:32: error: Unhandled Python exception raised calling 'execute' method Traceback (most recent call last): File "/usr/lib/gcc/x86_64-redhat-linux/4.6.2/plugin/python2/libcpychecker/__init__.py", line 75, in execute self._check_refcounts(fun) File "/usr/lib/gcc/x86_64-redhat-linux/4.6.2/plugin/python2/libcpychecker/__init__.py", line 79, in _check_refcounts self.show_possible_null_derefs) File "/usr/lib/gcc/x86_64-redhat-linux/4.6.2/plugin/python2/libcpychecker/refcounts.py", line 3802, in check_refcounts limits=limits) File "/usr/lib/gcc/x86_64-redhat-linux/4.6.2/plugin/python2/libcpychecker/absinterp.py", line 3000, in iter_traces depth + 1): File "/usr/lib/gcc/x86_64-redhat-linux/4.6.2/plugin/python2/libcpychecker/absinterp.py", line 3000, in iter_traces depth + 1): File "/usr/lib/gcc/x86_64-redhat-linux/4.6.2/plugin/python2/libcpychecker/absinterp.py", line 3000, in iter_traces depth + 1): File "/usr/lib/gcc/x86_64-redhat-linux/4.6.2/plugin/python2/libcpychecker/absinterp.py", line 3000, in iter_traces depth + 1): File "/usr/lib/gcc/x86_64-redhat-linux/4.6.2/plugin/python2/libcpychecker/absinterp.py", line 3000, in iter_traces depth + 1): File "/usr/lib/gcc/x86_64-redhat-linux/4.6.2/plugin/python2/libcpychecker/absinterp.py", line 3000, in iter_traces depth + 1): File "/usr/lib/gcc/x86_64-redhat-linux/4.6.2/plugin/python2/libcpychecker/absinterp.py", line 3000, in iter_traces depth + 1): File "/usr/lib/gcc/x86_64-redhat-linux/4.6.2/plugin/python2/libcpychecker/absinterp.py", line 3000, in iter_traces depth + 1): File "/usr/lib/gcc/x86_64-redhat-linux/4.6.2/plugin/python2/libcpychecker/absinterp.py", line 3000, in iter_traces depth + 1): File "/usr/lib/gcc/x86_64-redhat-linux/4.6.2/plugin/python2/libcpychecker/absinterp.py", line 3000, in iter_traces depth + 1): File "/usr/lib/gcc/x86_64-redhat-linux/4.6.2/plugin/python2/libcpychecker/absinterp.py", line 3000, in iter_traces depth + 1): File "/usr/lib/gcc/x86_64-redhat-linux/4.6.2/plugin/python2/libcpychecker/absinterp.py", line 3000, in iter_traces depth + 1): File "/usr/lib/gcc/x86_64-redhat-linux/4.6.2/plugin/python2/libcpychecker/absinterp.py", line 3000, in iter_traces depth + 1): File "/usr/lib/gcc/x86_64-redhat-linux/4.6.2/plugin/python2/libcpychecker/absinterp.py", line 3000, in iter_traces depth + 1): File "/usr/lib/gcc/x86_64-redhat-linux/4.6.2/plugin/python2/libcpychecker/absinterp.py", line 3000, in iter_traces depth + 1): File "/usr/lib/gcc/x86_64-redhat-linux/4.6.2/plugin/python2/libcpychecker/absinterp.py", line 3000, in iter_traces depth + 1): File "/usr/lib/gcc/x86_64-redhat-linux/4.6.2/plugin/python2/libcpychecker/absinterp.py", line 3000, in iter_traces depth + 1): File "/usr/lib/gcc/x86_64-redhat-linux/4.6.2/plugin/python2/libcpychecker/absinterp.py", line 2964, in iter_traces transitions = curstate.get_transitions() File "/usr/lib/gcc/x86_64-redhat-linux/4.6.2/plugin/python2/libcpychecker/absinterp.py", line 2017, in get_transitions return self._get_transitions_for_stmt(stmt) File "/usr/lib/gcc/x86_64-redhat-linux/4.6.2/plugin/python2/libcpychecker/absinterp.py", line 2033, in _get_transitions_for_stmt return self._get_transitions_for_GimpleCall(stmt) File "/usr/lib/gcc/x86_64-redhat-linux/4.6.2/plugin/python2/libcpychecker/absinterp.py", line 2216, in _get_transitions_for_GimpleCall raise NotImplementedError('not yet implemented: %s' % fnname) NotImplementedError: not yet implemented: PySequence_Contains netifaces.c: In function 'ifaddrs': netifaces.c:360:1: note: this function is too complicated for the reference-count checker to fully analyze: not all paths were analyzed netifaces.c:753:1: warning: ob_refcnt of '*dict' is 1 too high [enabled by default] netifaces.c:753:1: note: was expecting final ob_refcnt to be N + 0 (for some unknown N) netifaces.c:753:1: note: but final ob_refcnt is N + 1 netifaces.c:539:15: note: PyDictObject allocated at: PyObject *dict = PyDict_New(); netifaces.c:372:25: note: when PyArg_ParseTuple() succeeds at: if (!PyArg_ParseTuple (args, "s", &ifname)) netifaces.c:372:6: note: taking False path at: if (!PyArg_ParseTuple (args, "s", &ifname)) netifaces.c:375:10: note: reaching: result = PyDict_New (); netifaces.c:375:10: note: when PyDict_New() succeeds at: result = PyDict_New (); netifaces.c:377:6: note: taking False path at: if (!result) netifaces.c:505:19: note: reaching: struct ifaddrs *addrs = NULL; netifaces.c:508:6: note: when considering range: 0 <= value <= 0x7fffffff at: if (getifaddrs (&addrs) < 0) { netifaces.c:508:6: note: taking False path at: if (getifaddrs (&addrs) < 0) { netifaces.c:514:13: note: reaching: for (addr = addrs; addr; addr = addr->ifa_next) { netifaces.c:514:3: note: when treating unknown struct ifaddrs * * from netifaces.c:508 as non-NULL at: for (addr = addrs; addr; addr = addr->ifa_next) { netifaces.c:514:3: note: taking True path at: for (addr = addrs; addr; addr = addr->ifa_next) { netifaces.c:516:15: note: reaching: PyObject *pyaddr = NULL, *netmask = NULL, *braddr = NULL; netifaces.c:518:8: note: when considering value == (int)0 from netifaces.c:518 at: if (strcmp (addr->ifa_name, ifname) != 0) netifaces.c:518:8: note: taking False path at: if (strcmp (addr->ifa_name, ifname) != 0) netifaces.c:525:14: note: reaching: if (!addr->ifa_addr) netifaces.c:525:8: note: when treating unknown struct sockaddr * from netifaces.c:525 as non-NULL at: if (!addr->ifa_addr) netifaces.c:525:8: note: taking False path at: if (!addr->ifa_addr) netifaces.c:528:11: note: reaching: found = TRUE; netifaces.c:530:8: note: when considering range: -0x80000000 <= value <= -1 at: if (string_from_sockaddr (addr->ifa_addr, buffer, sizeof (buffer)) == 0) netifaces.c:530:8: note: taking False path at: if (string_from_sockaddr (addr->ifa_addr, buffer, sizeof (buffer)) == 0) netifaces.c:533:30: note: reaching: if (string_from_sockaddr (addr->ifa_netmask, buffer, sizeof (buffer)) == 0) netifaces.c:533:8: note: when considering range: -0x80000000 <= value <= -1 at: if (string_from_sockaddr (addr->ifa_netmask, buffer, sizeof (buffer)) == 0) netifaces.c:533:8: note: taking False path at: if (string_from_sockaddr (addr->ifa_netmask, buffer, sizeof (buffer)) == 0) netifaces.c:536:30: note: reaching: if (string_from_sockaddr (addr->ifa_broadaddr, buffer, sizeof (buffer)) == 0) netifaces.c:536:8: note: when considering value == (int)0 from netifaces.c:536 at: if (string_from_sockaddr (addr->ifa_broadaddr, buffer, sizeof (buffer)) == 0) netifaces.c:536:8: note: taking True path at: if (string_from_sockaddr (addr->ifa_broadaddr, buffer, sizeof (buffer)) == 0) netifaces.c:537:14: note: reaching: braddr = PyString_FromString (buffer); netifaces.c:537:14: note: when PyString_FromString() succeeds at: braddr = PyString_FromString (buffer); netifaces.c:539:15: note: when PyDict_New() succeeds at: PyObject *dict = PyDict_New(); netifaces.c:539:15: note: ob_refcnt is now refs: 1 + N where N >= 0 netifaces.c:541:8: note: taking False path at: if (!dict) { netifaces.c:550:8: note: reaching: if (pyaddr) netifaces.c:550:8: note: taking False path at: if (pyaddr) netifaces.c:552:8: note: reaching: if (netmask) netifaces.c:552:8: note: taking False path at: if (netmask) netifaces.c:555:8: note: reaching: if (braddr) { netifaces.c:555:8: note: taking True path at: if (braddr) { netifaces.c:556:15: note: reaching: if (addr->ifa_flags & (IFF_POINTOPOINT | IFF_LOOPBACK)) netifaces.c:556:10: note: when considering value == (unsigned int)0 from netifaces.c:556 at: if (addr->ifa_flags & (IFF_POINTOPOINT | IFF_LOOPBACK)) netifaces.c:556:10: note: taking False path at: if (addr->ifa_flags & (IFF_POINTOPOINT | IFF_LOOPBACK)) netifaces.c:559:30: note: reaching: PyDict_SetItemString (dict, "broadcast", braddr); netifaces.c:559:30: note: when PyDict_SetItemString() succeeds at: PyDict_SetItemString (dict, "broadcast", braddr); netifaces.c:562:5: note: reaching: Py_XDECREF (pyaddr); netifaces.c:562:5: note: taking True path at: Py_XDECREF (pyaddr); netifaces.c:563:5: note: reaching: Py_XDECREF (netmask); netifaces.c:563:5: note: taking True path at: Py_XDECREF (netmask); netifaces.c:564:5: note: reaching: Py_XDECREF (braddr); netifaces.c:564:5: note: taking False path at: Py_XDECREF (braddr); netifaces.c:564:5: note: reaching: Py_XDECREF (braddr); netifaces.c:564:5: note: taking True path at: Py_XDECREF (braddr); netifaces.c:566:37: note: reaching: if (!add_to_family (result, addr->ifa_addr->sa_family, dict)) { netifaces.c:566:47: note: when treating unknown struct sockaddr * from netifaces.c:566 as non-NULL at: if (!add_to_family (result, addr->ifa_addr->sa_family, dict)) { netifaces.c:566:8: note: when considering range: -0x80000000 <= value <= -1 at: if (!add_to_family (result, addr->ifa_addr->sa_family, dict)) { netifaces.c:566:8: note: taking False path at: if (!add_to_family (result, addr->ifa_addr->sa_family, dict)) { netifaces.c:514:33: note: reaching: for (addr = addrs; addr; addr = addr->ifa_next) { netifaces.c:514:3: note: when treating unknown struct ifaddrs * from netifaces.c:514 as NULL at: for (addr = addrs; addr; addr = addr->ifa_next) { netifaces.c:514:3: note: taking False path at: for (addr = addrs; addr; addr = addr->ifa_next) { netifaces.c:573:15: note: reaching: freeifaddrs (addrs); netifaces.c:745:6: note: taking True path at: if (found) netifaces.c:746:5: note: reaching: return result; netifaces.c:753:1: note: returning netifaces.c:753:1: note: found 7 similar trace(s) to this netifaces.c:753:1: warning: returning (PyObject*)NULL without setting an exception [enabled by default] netifaces.c:372:25: note: when PyArg_ParseTuple() succeeds at: if (!PyArg_ParseTuple (args, "s", &ifname)) netifaces.c:372:6: note: taking False path at: if (!PyArg_ParseTuple (args, "s", &ifname)) netifaces.c:375:10: note: reaching: result = PyDict_New (); netifaces.c:375:10: note: when PyDict_New() succeeds at: result = PyDict_New (); netifaces.c:377:6: note: taking False path at: if (!result) netifaces.c:505:19: note: reaching: struct ifaddrs *addrs = NULL; netifaces.c:508:6: note: when considering range: 0 <= value <= 0x7fffffff at: if (getifaddrs (&addrs) < 0) { netifaces.c:508:6: note: taking False path at: if (getifaddrs (&addrs) < 0) { netifaces.c:514:13: note: reaching: for (addr = addrs; addr; addr = addr->ifa_next) { netifaces.c:514:3: note: when treating unknown struct ifaddrs * * from netifaces.c:508 as non-NULL at: for (addr = addrs; addr; addr = addr->ifa_next) { netifaces.c:514:3: note: taking True path at: for (addr = addrs; addr; addr = addr->ifa_next) { netifaces.c:516:15: note: reaching: PyObject *pyaddr = NULL, *netmask = NULL, *braddr = NULL; netifaces.c:518:8: note: when considering value == (int)0 from netifaces.c:518 at: if (strcmp (addr->ifa_name, ifname) != 0) netifaces.c:518:8: note: taking False path at: if (strcmp (addr->ifa_name, ifname) != 0) netifaces.c:525:14: note: reaching: if (!addr->ifa_addr) netifaces.c:525:8: note: when treating unknown struct sockaddr * from netifaces.c:525 as non-NULL at: if (!addr->ifa_addr) netifaces.c:525:8: note: taking False path at: if (!addr->ifa_addr) netifaces.c:528:11: note: reaching: found = TRUE; netifaces.c:530:8: note: when considering range: -0x80000000 <= value <= -1 at: if (string_from_sockaddr (addr->ifa_addr, buffer, sizeof (buffer)) == 0) netifaces.c:530:8: note: taking False path at: if (string_from_sockaddr (addr->ifa_addr, buffer, sizeof (buffer)) == 0) netifaces.c:533:30: note: reaching: if (string_from_sockaddr (addr->ifa_netmask, buffer, sizeof (buffer)) == 0) netifaces.c:533:8: note: when considering range: -0x80000000 <= value <= -1 at: if (string_from_sockaddr (addr->ifa_netmask, buffer, sizeof (buffer)) == 0) netifaces.c:533:8: note: taking False path at: if (string_from_sockaddr (addr->ifa_netmask, buffer, sizeof (buffer)) == 0) netifaces.c:536:30: note: reaching: if (string_from_sockaddr (addr->ifa_broadaddr, buffer, sizeof (buffer)) == 0) netifaces.c:536:8: note: when considering value == (int)0 from netifaces.c:536 at: if (string_from_sockaddr (addr->ifa_broadaddr, buffer, sizeof (buffer)) == 0) netifaces.c:536:8: note: taking True path at: if (string_from_sockaddr (addr->ifa_broadaddr, buffer, sizeof (buffer)) == 0) netifaces.c:537:14: note: reaching: braddr = PyString_FromString (buffer); netifaces.c:537:14: note: when PyString_FromString() succeeds at: braddr = PyString_FromString (buffer); netifaces.c:539:15: note: when PyDict_New() succeeds at: PyObject *dict = PyDict_New(); netifaces.c:541:8: note: taking False path at: if (!dict) { netifaces.c:550:8: note: reaching: if (pyaddr) netifaces.c:550:8: note: taking False path at: if (pyaddr) netifaces.c:552:8: note: reaching: if (netmask) netifaces.c:552:8: note: taking False path at: if (netmask) netifaces.c:555:8: note: reaching: if (braddr) { netifaces.c:555:8: note: taking True path at: if (braddr) { netifaces.c:556:15: note: reaching: if (addr->ifa_flags & (IFF_POINTOPOINT | IFF_LOOPBACK)) netifaces.c:556:10: note: when considering value == (unsigned int)0 from netifaces.c:556 at: if (addr->ifa_flags & (IFF_POINTOPOINT | IFF_LOOPBACK)) netifaces.c:556:10: note: taking False path at: if (addr->ifa_flags & (IFF_POINTOPOINT | IFF_LOOPBACK)) netifaces.c:559:30: note: reaching: PyDict_SetItemString (dict, "broadcast", braddr); netifaces.c:559:30: note: when PyDict_SetItemString() succeeds at: PyDict_SetItemString (dict, "broadcast", braddr); netifaces.c:562:5: note: reaching: Py_XDECREF (pyaddr); netifaces.c:562:5: note: taking True path at: Py_XDECREF (pyaddr); netifaces.c:563:5: note: reaching: Py_XDECREF (netmask); netifaces.c:563:5: note: taking True path at: Py_XDECREF (netmask); netifaces.c:564:5: note: reaching: Py_XDECREF (braddr); netifaces.c:564:5: note: taking False path at: Py_XDECREF (braddr); netifaces.c:564:5: note: reaching: Py_XDECREF (braddr); netifaces.c:564:5: note: taking True path at: Py_XDECREF (braddr); netifaces.c:566:37: note: reaching: if (!add_to_family (result, addr->ifa_addr->sa_family, dict)) { netifaces.c:566:47: note: when treating unknown struct sockaddr * from netifaces.c:566 as non-NULL at: if (!add_to_family (result, addr->ifa_addr->sa_family, dict)) { netifaces.c:566:8: note: when considering value == (int)0 from netifaces.c:566 at: if (!add_to_family (result, addr->ifa_addr->sa_family, dict)) { netifaces.c:566:8: note: taking True path at: if (!add_to_family (result, addr->ifa_addr->sa_family, dict)) { netifaces.c:567:7: note: reaching: Py_DECREF (result); netifaces.c:567:7: note: when taking True path at: Py_DECREF (result); netifaces.c:568:19: note: reaching: freeifaddrs (addrs); netifaces.c:753:1: note: returning netifaces.c:753:1: note: found 3 similar trace(s) to this netifaces.c:360:1: note: graphical error report for function 'ifaddrs' written out to 'build/temp.linux-x86_64-2.7/netifaces.c.ifaddrs-refcount-errors.html' netifaces.c: In function 'add_to_family': netifaces.c:356:1: warning: ob_refcnt of '*dict' is 1 too low [enabled by default] netifaces.c:356:1: note: was expecting final ob_refcnt to be N + 1 (for some unknown N) netifaces.c:356:1: note: due to object being referenced by: borrowed reference returned by PyDict_GetItem().ob_item[0] netifaces.c:356:1: note: but final ob_refcnt is N + 0 netifaces.c:330:13: note: when PyInt_FromLong() succeeds at: PyObject *py_family = PyInt_FromLong (family); netifaces.c:331:13: note: when PyDict_GetItem() succeeds at: PyObject *list = PyDict_GetItem (result, py_family); netifaces.c:333:6: note: taking False path at: if (!py_family) { netifaces.c:339:6: note: reaching: if (!list) { netifaces.c:339:6: note: taking False path at: if (!list) { netifaces.c:351:19: note: reaching: PyList_Append (list, dict); netifaces.c:351:19: note: when treating ob_size as 0 at: PyList_Append (list, dict); netifaces.c:351:19: note: when PyList_Append() succeeds at: PyList_Append (list, dict); netifaces.c:351:19: note: ob_refcnt is now refs: 1 + N where N >= 1 netifaces.c:351:19: note: '*dict' is now referenced by 1 non-stack value(s): borrowed reference returned by PyDict_GetItem().ob_item[0] netifaces.c:352:5: note: ob_refcnt is now refs: 0 + N where N >= 1 netifaces.c:352:5: note: taking True path at: Py_DECREF (dict); netifaces.c:355:3: note: reaching: return TRUE; netifaces.c:356:1: note: returning netifaces.c:356:1: note: found 9 similar trace(s) to this netifaces.c:356:1: warning: ob_refcnt of '*py_family' is 1 too high [enabled by default] netifaces.c:356:1: note: was expecting final ob_refcnt to be N + 0 (for some unknown N) netifaces.c:356:1: note: but final ob_refcnt is N + 1 netifaces.c:330:13: note: PyIntObject allocated at: PyObject *py_family = PyInt_FromLong (family); netifaces.c:330:13: note: when PyInt_FromLong() succeeds at: PyObject *py_family = PyInt_FromLong (family); netifaces.c:330:13: note: ob_refcnt is now refs: 1 + N where N >= 0 netifaces.c:331:13: note: when PyDict_GetItem() succeeds at: PyObject *list = PyDict_GetItem (result, py_family); netifaces.c:333:6: note: taking False path at: if (!py_family) { netifaces.c:339:6: note: reaching: if (!list) { netifaces.c:339:6: note: taking False path at: if (!list) { netifaces.c:351:19: note: reaching: PyList_Append (list, dict); netifaces.c:351:19: note: when treating ob_size as 0 at: PyList_Append (list, dict); netifaces.c:351:19: note: when PyList_Append() succeeds at: PyList_Append (list, dict); netifaces.c:352:5: note: taking True path at: Py_DECREF (dict); netifaces.c:355:3: note: reaching: return TRUE; netifaces.c:356:1: note: returning netifaces.c:356:1: note: found 5 similar trace(s) to this netifaces.c:331:13: warning: calling PyDict_GetItem with NULL as argument 2 (py_family) at netifaces.c:331 [enabled by default] netifaces.c:330:13: note: when PyInt_FromLong() fails at: PyObject *py_family = PyInt_FromLong (family); netifaces.c:331:13: note: PyDict_GetItem() invokes Py_TYPE() on the pointer via the PyString_CheckExact() macro, thus accessing (NULL)->ob_type netifaces.c:329:1: note: graphical error report for function 'add_to_family' written out to 'build/temp.linux-x86_64-2.7/netifaces.c.add_to_family-refcount-errors.html' error: command 'gcc' failed with exit status 1 error: Bad exit status from /var/tmp/rpm-tmp.qHX1DM (%build) Bad exit status from /var/tmp/rpm-tmp.qHX1DM (%build) RPM build errors: Child returncode was: 1 EXCEPTION: Command failed. See logs for output. # ['bash', '--login', '-c', 'rpmbuild -bb --target x86_64 --nodeps builddir/build/SPECS/python-netifaces.spec'] Traceback (most recent call last): File "/usr/lib/python2.7/site-packages/mockbuild/trace_decorator.py", line 70, in trace result = func(*args, **kw) File "/usr/lib/python2.7/site-packages/mockbuild/util.py", line 328, in do raise mockbuild.exception.Error, ("Command failed. See logs for output.\n # %s" % (command,), child.returncode) Error: Command failed. See logs for output. # ['bash', '--login', '-c', 'rpmbuild -bb --target x86_64 --nodeps builddir/build/SPECS/python-netifaces.spec'] LEAVE do --> EXCEPTION RAISED