Bug 773678

Summary: NMClient Gobject introspection: segfault for NMIP6Address.get_address()
Product: [Fedora] Fedora Reporter: Radek Vykydal <rvykydal>
Component: pythonAssignee: Dave Malcolm <dmalcolm>
Status: CLOSED WONTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 16CC: dcbw, dmalcolm, ivazqueznet, jklimes, johnp, jonathansteffan
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-02-13 14:03:04 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Radek Vykydal 2012-01-12 15:00:27 UTC
Fedora 16, NetworkManager-glib-0.9.2-1.fc16.i686

Python 2.7.2 (default, Oct 27 2011, 01:36:46).
[GCC 4.6.1 20111003 (Red Hat 4.6.1-10)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from gi.repository import NMClient
>>> c = NMClient.Client.new()
>>> eth = c.get_devices()[0]
>>> eth
<DeviceEthernet object at 0xb7525f2c (NMDeviceEthernet at 0xa0d1800)>
>>> ip6cfg = eth.get_ip6_config()
>>> addrs = ip6cfg.get_addresses()
>>> addrs
[<NMIP6Address at 0xa0be348>]
>>> a = addrs[0]
>>> a
<NMIP6Address at 0xa0be348>
>>> aa = a.get_address()
>>> aa
<refcnt -1431699164 at 0xa0be34c>
>>> print aa
Segmentation fault (core dumped)

[rvykydal@localhost ~]$ ip addr show dev p2p1
2: p2p1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:16:d3:39:0c:1b brd ff:ff:ff:ff:ff:ff
    inet 10.34.102.16/24 brd 10.34.102.255 scope global p2p1
    inet6 2001:aaaa::1/64 scope global.
       valid_lft forever preferred_lft forever
    inet6 fe80::216:d3ff:fe39:c1b/64 scope link.
       valid_lft forever preferred_lft forever

Comment 1 Jirka Klimes 2012-02-10 13:02:49 UTC
Test program:
-----------------------------
#! /usr/bin/python
       
from gi.repository import NMClient
from ctypes import *

c = NMClient.Client.new()
eth0 = c.get_devices()[0]

ip6cfg = eth0.get_ip6_config()
addrs6 = ip6cfg.get_addresses()
a1_6 = addrs6[0]

# getting prefix works
prefix = a1_6.get_prefix()

# causes crash
ip = a1_6.get_address()
-----------------------------

causes SIGSEGV in python's gmodule.c - see next comment for backtrace (a).

Changing the last line to
ip = cast(pointer(a1_6.get_address()), c_byte * 16)

result in another backtrace (b).

There is probably a problem with gpointer type (return value of get_address())

Comment 2 Jirka Klimes 2012-02-10 13:07:07 UTC
(a) backtrace
=============
Starting program: /usr/bin/python sandbox/python/nm-gi-crash.py
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".

Program received signal SIGSEGV, Segmentation fault.
visit_decref (op=<unknown at remote 0x7ef7e4>, data=0x0) at /usr/src/debug/Python-2.7.2/Modules/gcmodule.c:320
320         if (PyObject_IS_GC(op)) {
(gdb) bt
#0  visit_decref (op=<unknown at remote 0x7ef7e4>, data=0x0) at /usr/src/debug/Python-2.7.2/Modules/gcmodule.c:320
#1  0x0000003245a7fbff in dict_traverse (op=
    {'addrs6': [<IP6Address at remote 0x7ffff053d598>], 'NMClient': <DynamicModule(_overrides_module=None, _namespace='NMClient', _introspection_module=<IntrospectionModule(_namespace='NMClient', IP6Config=<GObjectMeta(__module__='gi.repository.NMClient', get_routes=<function at remote 0x7fffef89af50>, parent=<property at remote 0x7fffef893c58>, get_domains=<function at remote 0x7fffef89aed8>, get_addresses=<function at remote 0x7fffef89ae60>, new=<staticmethod at remote 0x7fffef899c58>, __gtype__=<gobject.GType at remote 0x7ffff7f42480>, __info__=<ObjectInfo at remote 0x7fffef898ef0>, __doc__=None) at remote 0x7ed950>, DeviceWifi=<GObjectMeta(do_access_point_removed=<NativeVFunc(_info=<gi.VFuncInfo at remote 0x7fffef898bd8>) at remote 0x7fffef89c050>, __module__='gi.repository.NMClient', get_hw_address=<function at remote 0x7fffef89ac80>, get_permanent_hw_address=<function at remote 0x7fffef89ad70>, parent=<property at remote 0x7fffef893ba8>, get_active_access_point=<function at remote 0x7fffef89ab18>, get_mode=...(truncated), visit=0x3245b0ee80 <visit_decref>, arg=0x0) at /usr/src/debug/Python-2.7.2/Objects/dictobject.c:2080
#2  0x0000003245b0f247 in subtract_refs (containers=0x3245da2d20) at /usr/src/debug/Python-2.7.2/Modules/gcmodule.c:345
#3  collect (generation=2) at /usr/src/debug/Python-2.7.2/Modules/gcmodule.c:874
#4  0x0000003245b0fc74 in PyGC_Collect () at /usr/src/debug/Python-2.7.2/Modules/gcmodule.c:1386
#5  0x0000003245afdaf6 in Py_Finalize () at /usr/src/debug/Python-2.7.2/Python/pythonrun.c:437
#6  Py_Finalize () at /usr/src/debug/Python-2.7.2/Python/pythonrun.c:393
#7  0x0000003245b0e0aa in Py_Main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/Python-2.7.2/Modules/main.c:624
#8  0x000000322e22169d in __libc_start_main (main=0x400620 <main>, argc=2, ubp_av=0x7fffffffdcd8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffdcc8)
    at libc-start.c:226
#9  0x0000000000400651 in _start ()

(gdb) bt full
#0  visit_decref (op=<unknown at remote 0x7ef7e4>, data=0x0) at /usr/src/debug/Python-2.7.2/Modules/gcmodule.c:320
No locals.
#1  0x0000003245a7fbff in dict_traverse (op=
    {'addrs6': [<IP6Address at remote 0x7ffff053d598>], 'NMClient': <DynamicModule(_overrides_module=None, _namespace='NMClient', _introspection_module=<IntrospectionModule(_namespace='NMClient', IP6Config=<GObjectMeta(__module__='gi.repository.NMClient', get_routes=<function at remote 0x7fffef89af50>, parent=<property at remote 0x7fffef893c58>, get_domains=<function at remote 0x7fffef89aed8>, get_addresses=<function at remote 0x7fffef89ae60>, new=<staticmethod at remote 0x7fffef899c58>, __gtype__=<gobject.GType at remote 0x7ffff7f42480>, __info__=<ObjectInfo at remote 0x7fffef898ef0>, __doc__=None) at remote 0x7ed950>, DeviceWifi=<GObjectMeta(do_access_point_removed=<NativeVFunc(_info=<gi.VFuncInfo at remote 0x7fffef898bd8>) at remote 0x7fffef89c050>, __module__='gi.repository.NMClient', get_hw_address=<function at remote 0x7fffef89ac80>, get_permanent_hw_address=<function at remote 0x7fffef89ad70>, parent=<property at remote 0x7fffef893ba8>, get_active_access_point=<function at remote 0x7fffef89ab18>, get_mode=...(truncated), visit=0x3245b0ee80 <visit_decref>, arg=0x0) at /usr/src/debug/Python-2.7.2/Objects/dictobject.c:2080
        vret = <optimized out>
        i = 38
        pk = 'ip'
        pv = <unknown at remote 0x7ef7e4>
#2  0x0000003245b0f247 in subtract_refs (containers=0x3245da2d20) at /usr/src/debug/Python-2.7.2/Modules/gcmodule.c:345
        traverse = <optimized out>
        gc = 0x640f40
#3  collect (generation=2) at /usr/src/debug/Python-2.7.2/Modules/gcmodule.c:874
        i = <optimized out>
        m = 0
        n = 0
        young = 0x3245da2d20
        old = 0x3245da2d20
        unreachable = {gc = {gc_next = 0x0, gc_prev = 0x7ffff054ba70, gc_refs = 1}, dummy = <invalid float value>}
        finalizers = {gc = {gc_next = 0x7bdc50, gc_prev = 0x3245a9d0d6, gc_refs = 154}, dummy = <invalid float value>}
        gc = <optimized out>
        t1 = 0
#4  0x0000003245b0fc74 in PyGC_Collect () at /usr/src/debug/Python-2.7.2/Modules/gcmodule.c:1386
        n = 2666130979403333632
#5  0x0000003245afdaf6 in Py_Finalize () at /usr/src/debug/Python-2.7.2/Python/pythonrun.c:437
        interp = 0x602010
#6  Py_Finalize () at /usr/src/debug/Python-2.7.2/Python/pythonrun.c:393
No locals.
#7  0x0000003245b0e0aa in Py_Main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/Python-2.7.2/Modules/main.c:624
        c = <optimized out>
        sts = 0
        command = 0x0
        filename = 0x7fffffffe094 "sandbox/python/nm-gi-crash.py"
        module = 0x0
        fp = 0x6c79e0
        p = <optimized out>
        unbuffered = <optimized out>
        skipfirstline = 0
        stdin_is_interactive = 1
        help = <optimized out>
        version = <optimized out>
        saw_unbuffered_flag = -8044
        cf = {cf_flags = 0}
#8  0x000000322e22169d in __libc_start_main (main=0x400620 <main>, argc=2, ubp_av=0x7fffffffdcd8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffdcc8)
    at libc-start.c:226
        result = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {0, -4568864477698389638, 4195880, 140737488346320, 0, 0, 4568864478768335226, -4540616117360326278}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 
    0x7fffffffdcf0, 0x1}, data = {prev = 0x0, cleanup = 0x0, canceltype = -8976}}}
        not_first_call = <optimized out>
#9  0x0000000000400651 in _start ()


(b) backtrace
=============
Starting program: /usr/bin/python sandbox/python/nm-gi-crash.py
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".

Program received signal SIGSEGV, Segmentation fault.
0x0000003245a7eccf in PyDict_GetItem (op=
    {<_ctypes.PyCSimpleType at remote 0x7bc1a0>: <_ctypes.PyCPointerType at remote 0x7bc8c0>, <_ctypes.PyCSimpleType at remote 0x7b91d0>: <_ctypes.PyCPointerType at remote 0x7bd140>, None: <_ctypes.PyCSimpleType at remote 0x7ba620>}, key=<unknown at remote 0x2500000000000000>) at /usr/src/debug/Python-2.7.2/Objects/dictobject.c:705
705         if (!PyString_CheckExact(key) ||
(gdb) bt
#0  0x0000003245a7eccf in PyDict_GetItem (op=
    {<_ctypes.PyCSimpleType at remote 0x7bc1a0>: <_ctypes.PyCPointerType at remote 0x7bc8c0>, <_ctypes.PyCSimpleType at remote 0x7b91d0>: <_ctypes.PyCPointerType at remote 0x7bd140>, None: <_ctypes.PyCSimpleType at remote 0x7ba620>}, key=<unknown at remote 0x2500000000000000>) at /usr/src/debug/Python-2.7.2/Objects/dictobject.c:705
#1  0x00007fffef676414 in pointer (self=<optimized out>, arg=<unknown at remote 0x7ef7e4>) at /usr/src/debug/Python-2.7.2/Modules/_ctypes/callproc.c:1842
#2  0x0000003245ae06f9 in call_function (oparg=<optimized out>, pp_stack=0x7fffffffd888) at /usr/src/debug/Python-2.7.2/Python/ceval.c:4078
#3  PyEval_EvalFrameEx (f=<optimized out>, throwflag=<optimized out>) at /usr/src/debug/Python-2.7.2/Python/ceval.c:2740
#4  0x0000003245ae15a5 in PyEval_EvalCodeEx (co=<optimized out>, globals=<optimized out>, locals=<optimized out>, args=<optimized out>, argcount=0, kws=0x0, kwcount=0, defs=0x0, defcount=0, closure=0x0)
    at /usr/src/debug/Python-2.7.2/Python/ceval.c:3330
#5  0x0000003245ae16d2 in PyEval_EvalCode (co=<optimized out>, globals=<optimized out>, locals=<optimized out>) at /usr/src/debug/Python-2.7.2/Python/ceval.c:689
#6  0x0000003245afb9ec in run_mod (mod=<optimized out>, filename=<optimized out>, globals=
    {'addrs6': [<IP6Address at remote 0x7ffff053d600>], 'NMClient': <DynamicModule(_overrides_module=None, _namespace='NMClient', _introspection_module=<IntrospectionModule(_namespace='NMClient', IP6Config=<GObjectMeta(__module__='gi.repository.NMClient', get_routes=<function at remote 0x7fffef89af50>, parent=<property at remote 0x7fffef893c58>, get_domains=<function at remote 0x7fffef89aed8>, get_addresses=<function at remote 0x7fffef89ae60>, new=<staticmethod at remote 0x7fffef899c58>, __gtype__=<gobject.GType at remote 0x7ffff7f42480>, __info__=<ObjectInfo at remote 0x7fffef898ef0>, __doc__=None) at remote 0x7ed950>, DeviceWifi=<GObjectMeta(do_access_point_removed=<NativeVFunc(_info=<gi.VFuncInfo at remote 0x7fffef898bd8>) at remote 0x7fffef89c050>, __module__='gi.repository.NMClient', get_hw_address=<function at remote 0x7fffef89ac80>, get_permanent_hw_address=<function at remote 0x7fffef89ad70>, parent=<property at remote 0x7fffef893ba8>, get_active_access_point=<function at remote 0x7fffef89ab18>, get_mode=...(truncated), locals=
    {'addrs6': [<IP6Address at remote 0x7ffff053d600>], 'NMClient': <DynamicModule(_overrides_module=None, _namespace='NMClient', _introspection_module=<IntrospectionModule(_namespace='NMClient', IP6Config=<GObjectMeta(__module__='gi.repository.NMClient', get_routes=<function at remote 0x7fffef89af50>, parent=<property at remote 0x7fffef893c58>, get_domains=<function at remote 0x7fffef89aed8>, get_addresses=<function at remote 0x7fffef89ae60>, new=<staticmethod at remote 0x7fffef899c58>, __gtype__=<gobject.GType at remote 0x7ffff7f42480>, __info__=<ObjectInfo at remote 0x7fffef898ef0>, __doc__=None) at remote 0x7ed950>, DeviceWifi=<GObjectMeta(do_access_point_removed=<NativeVFunc(_info=<gi.VFuncInfo at remote 0x7fffef898bd8>) at remote 0x7fffef89c050>, __module__='gi.repository.NMClient', get_hw_address=<function at remote 0x7fffef89ac80>, get_permanent_hw_address=<function at remote 0x7fffef89ad70>, parent=<property at remote 0x7fffef893ba8>, get_active_access_point=<function at remote 0x7fffef89ab18>, get_mode=...(truncated), flags=<optimized out>, arena=<optimized out>) at /usr/src/debug/Python-2.7.2/Python/pythonrun.c:1354
#7  0x0000003245afc7f0 in PyRun_FileExFlags (fp=0x6c79e0, filename=0x7fffffffe094 "sandbox/python/nm-gi-crash.py", start=<optimized out>, globals=
    {'addrs6': [<IP6Address at remote 0x7ffff053d600>], 'NMClient': <DynamicModule(_overrides_module=None, _namespace='NMClient', _introspection_module=<IntrospectionModule(_namespace='NMClient', IP6Config=<GObjectMeta(__module__='gi.repository.NMClient', get_routes=<function at remote 0x7fffef89af50>, parent=<property at remote 0x7fffef893c58>, get_domains=<function at remote 0x7fffef89aed8>, get_addresses=<function at remote 0x7fffef89ae60>, new=<staticmethod at remote 0x7fffef899c58>, __gtype__=<gobject.GType at remote 0x7ffff7f42480>, __info__=<ObjectInfo at remote 0x7fffef898ef0>, __doc__=None) at remote 0x7ed950>, DeviceWifi=<GObjectMeta(do_access_point_removed=<NativeVFunc(_info=<gi.VFuncInfo at remote 0x7fffef898bd8>) at remote 0x7fffef89c050>, __module__='gi.repository.NMClient', get_hw_address=<function at remote 0x7fffef89ac80>, get_permanent_hw_address=<function at remote 0x7fffef89ad70>, parent=<property at remote 0x7fffef893ba8>, get_active_access_point=<function at remote 0x7fffef89ab18>, get_mode=...(truncated), locals=
    {'addrs6': [<IP6Address at remote 0x7ffff053d600>], 'NMClient': <DynamicModule(_overrides_module=None, _namespace='NMClient', _introspection_module=<IntrospectionModule(_namespace='NMClient', IP6Config=<GObjectMeta(__module__='gi.repository.NMClient', get_routes=<function at remote 0x7fffef89af50>, parent=<property at remote 0x7fffef893c58>, get_domains=<function at remote 0x7fffef89aed8>, get_addresses=<function at remote 0x7fffef89ae60>, new=<staticmethod at remote 0x7fffef899c58>, __gtype__=<gobject.GType at remote 0x7ffff7f42480>, __info__=<ObjectInfo at remote 0x7fffef898ef0>, __doc__=None) at remote 0x7ed950>, DeviceWifi=<GObjectMeta(do_access_point_removed=<NativeVFunc(_info=<gi.VFuncInfo at remote 0x7fffef898bd8>) at remote 0x7fffef89c050>, __module__='gi.repository.NMClient', get_hw_address=<function at remote 0x7fffef89ac80>, get_permanent_hw_address=<function at remote 0x7fffef89ad70>, parent=<property at remote 0x7fffef893ba8>, get_active_access_point=<function at remote 0x7fffef89ab18>, get_mode=...(truncated), closeit=1, flags=0x7fffffffdbb0) at /usr/src/debug/Python-2.7.2/Python/pythonrun.c:1340
#8  0x0000003245afd26f in PyRun_SimpleFileExFlags (fp=0x6c79e0, filename=0x7fffffffe094 "sandbox/python/nm-gi-crash.py", closeit=1, flags=0x7fffffffdbb0)
    at /usr/src/debug/Python-2.7.2/Python/pythonrun.c:944
#9  0x0000003245b0e745 in Py_Main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/Python-2.7.2/Modules/main.c:599
#10 0x000000322e22169d in __libc_start_main (main=0x400620 <main>, argc=2, ubp_av=0x7fffffffdcd8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffdcc8)
    at libc-start.c:226
#11 0x0000000000400651 in _start ()

(gdb) bt full
#0  0x0000003245a7eccf in PyDict_GetItem (op=
    {<_ctypes.PyCSimpleType at remote 0x7bc1a0>: <_ctypes.PyCPointerType at remote 0x7bc8c0>, <_ctypes.PyCSimpleType at remote 0x7b91d0>: <_ctypes.PyCPointerType at remote 0x7bd140>, None: <_ctypes.PyCSimpleType at remote 0x7ba620>}, key=<unknown at remote 0x2500000000000000>) at /usr/src/debug/Python-2.7.2/Objects/dictobject.c:705
        hash = <optimized out>
        mp = 0x7a4fc0
        ep = <optimized out>
        tstate = <optimized out>
#1  0x00007fffef676414 in pointer (self=<optimized out>, arg=<unknown at remote 0x7ef7e4>) at /usr/src/debug/Python-2.7.2/Modules/_ctypes/callproc.c:1842
        result = <type at remote 0x3245d8c040>
        typ = <optimized out>
#2  0x0000003245ae06f9 in call_function (oparg=<optimized out>, pp_stack=0x7fffffffd888) at /usr/src/debug/Python-2.7.2/Python/ceval.c:4078
        arg = <unknown at remote 0x7ef7e4>
        meth = <optimized out>
        self = <optimized out>
        flags = <optimized out>
        tstate = <optimized out>
        func = <built-in function pointer>
        w = <optimized out>
        na = 1
        nk = <optimized out>
        n = <optimized out>
        pfunc = 0x6c8000
        x = <optimized out>
#3  PyEval_EvalFrameEx (f=<optimized out>, throwflag=<optimized out>) at /usr/src/debug/Python-2.7.2/Python/ceval.c:2740
        sp = 0x6c8008
        stack_pointer = <optimized out>
        next_instr = 0x7ffff7e9a22d "e\022"
        opcode = <optimized out>
        oparg = <optimized out>
        why = WHY_NOT
        err = 0
        x = <optimized out>
        v = <optimized out>
        w = <optimized out>
        u = <optimized out>
        t = <optimized out>
        stream = 0x0
        fastlocals = <optimized out>
        freevars = 0x6c7ff8
        retval = 0x0
        tstate = <optimized out>
        co = 0x7ffff7f05c30
        instr_ub = -1
        instr_lb = 0
        instr_prev = -1
        first_instr = 0x7ffff7e9a1b4 "d"
        names = 
    ('gi.repository', 'NMClient', 'ctypes', 'Client', 'new', 'c', 'get_devices', 'eth0', 'get_ip6_config', 'ip6cfg', 'get_addresses', 'addrs6', 'a1_6', 'get_prefix', 'prefix', 'cast', 'pointer', 'get_address', 'c_byte', 'ip')
        consts = (-1, ('NMClient',), ('*',), 0, 16, None)
#4  0x0000003245ae15a5 in PyEval_EvalCodeEx (co=<optimized out>, globals=<optimized out>, locals=<optimized out>, args=<optimized out>, argcount=0, kws=0x0, kwcount=0, defs=0x0, defcount=0, closure=0x0)
    at /usr/src/debug/Python-2.7.2/Python/ceval.c:3330
        f = <optimized out>
        retval = 0x0
        fastlocals = <optimized out>
        freevars = 0x6c7ff8
        tstate = 0x6020a0
        x = <optimized out>
        u = <optimized out>
#5  0x0000003245ae16d2 in PyEval_EvalCode (co=<optimized out>, globals=<optimized out>, locals=<optimized out>) at /usr/src/debug/Python-2.7.2/Python/ceval.c:689
No locals.
#6  0x0000003245afb9ec in run_mod (mod=<optimized out>, filename=<optimized out>, globals=
---Type <return> to continue, or q <return> to quit---
    {'addrs6': [<IP6Address at remote 0x7ffff053d600>], 'NMClient': <DynamicModule(_overrides_module=None, _namespace='NMClient', _introspection_module=<IntrospectionModule(_namespace='NMClient', IP6Config=<GObjectMeta(__module__='gi.repository.NMClient', get_routes=<function at remote 0x7fffef89af50>, parent=<property at remote 0x7fffef893c58>, get_domains=<function at remote 0x7fffef89aed8>, get_addresses=<function at remote 0x7fffef89ae60>, new=<staticmethod at remote 0x7fffef899c58>, __gtype__=<gobject.GType at remote 0x7ffff7f42480>, __info__=<ObjectInfo at remote 0x7fffef898ef0>, __doc__=None) at remote 0x7ed950>, DeviceWifi=<GObjectMeta(do_access_point_removed=<NativeVFunc(_info=<gi.VFuncInfo at remote 0x7fffef898bd8>) at remote 0x7fffef89c050>, __module__='gi.repository.NMClient', get_hw_address=<function at remote 0x7fffef89ac80>, get_permanent_hw_address=<function at remote 0x7fffef89ad70>, parent=<property at remote 0x7fffef893ba8>, get_active_access_point=<function at remote 0x7fffef89ab18>, get_mode=...(truncated), locals=
    {'addrs6': [<IP6Address at remote 0x7ffff053d600>], 'NMClient': <DynamicModule(_overrides_module=None, _namespace='NMClient', _introspection_module=<IntrospectionModule(_namespace='NMClient', IP6Config=<GObjectMeta(__module__='gi.repository.NMClient', get_routes=<function at remote 0x7fffef89af50>, parent=<property at remote 0x7fffef893c58>, get_domains=<function at remote 0x7fffef89aed8>, get_addresses=<function at remote 0x7fffef89ae60>, new=<staticmethod at remote 0x7fffef899c58>, __gtype__=<gobject.GType at remote 0x7ffff7f42480>, __info__=<ObjectInfo at remote 0x7fffef898ef0>, __doc__=None) at remote 0x7ed950>, DeviceWifi=<GObjectMeta(do_access_point_removed=<NativeVFunc(_info=<gi.VFuncInfo at remote 0x7fffef898bd8>) at remote 0x7fffef89c050>, __module__='gi.repository.NMClient', get_hw_address=<function at remote 0x7fffef89ac80>, get_permanent_hw_address=<function at remote 0x7fffef89ad70>, parent=<property at remote 0x7fffef893ba8>, get_active_access_point=<function at remote 0x7fffef89ab18>, get_mode=...(truncated), flags=<optimized out>, arena=<optimized out>) at /usr/src/debug/Python-2.7.2/Python/pythonrun.c:1354
        co = 0x7ffff7f05c30
        v = <optimized out>
#7  0x0000003245afc7f0 in PyRun_FileExFlags (fp=0x6c79e0, filename=0x7fffffffe094 "sandbox/python/nm-gi-crash.py", start=<optimized out>, globals=
    {'addrs6': [<IP6Address at remote 0x7ffff053d600>], 'NMClient': <DynamicModule(_overrides_module=None, _namespace='NMClient', _introspection_module=<IntrospectionModule(_namespace='NMClient', IP6Config=<GObjectMeta(__module__='gi.repository.NMClient', get_routes=<function at remote 0x7fffef89af50>, parent=<property at remote 0x7fffef893c58>, get_domains=<function at remote 0x7fffef89aed8>, get_addresses=<function at remote 0x7fffef89ae60>, new=<staticmethod at remote 0x7fffef899c58>, __gtype__=<gobject.GType at remote 0x7ffff7f42480>, __info__=<ObjectInfo at remote 0x7fffef898ef0>, __doc__=None) at remote 0x7ed950>, DeviceWifi=<GObjectMeta(do_access_point_removed=<NativeVFunc(_info=<gi.VFuncInfo at remote 0x7fffef898bd8>) at remote 0x7fffef89c050>, __module__='gi.repository.NMClient', get_hw_address=<function at remote 0x7fffef89ac80>, get_permanent_hw_address=<function at remote 0x7fffef89ad70>, parent=<property at remote 0x7fffef893ba8>, get_active_access_point=<function at remote 0x7fffef89ab18>, get_mode=...(truncated), locals=
    {'addrs6': [<IP6Address at remote 0x7ffff053d600>], 'NMClient': <DynamicModule(_overrides_module=None, _namespace='NMClient', _introspection_module=<IntrospectionModule(_namespace='NMClient', IP6Config=<GObjectMeta(__module__='gi.repository.NMClient', get_routes=<function at remote 0x7fffef89af50>, parent=<property at remote 0x7fffef893c58>, get_domains=<function at remote 0x7fffef89aed8>, get_addresses=<function at remote 0x7fffef89ae60>, new=<staticmethod at remote 0x7fffef899c58>, __gtype__=<gobject.GType at remote 0x7ffff7f42480>, __info__=<ObjectInfo at remote 0x7fffef898ef0>, __doc__=None) at remote 0x7ed950>, DeviceWifi=<GObjectMeta(do_access_point_removed=<NativeVFunc(_info=<gi.VFuncInfo at remote 0x7fffef898bd8>) at remote 0x7fffef89c050>, __module__='gi.repository.NMClient', get_hw_address=<function at remote 0x7fffef89ac80>, get_permanent_hw_address=<function at remote 0x7fffef89ad70>, parent=<property at remote 0x7fffef893ba8>, get_active_access_point=<function at remote 0x7fffef89ab18>, get_mode=...(truncated), closeit=1, flags=0x7fffffffdbb0) at /usr/src/debug/Python-2.7.2/Python/pythonrun.c:1340
        ret = <optimized out>
        mod = 0x6d8858
        arena = 0x66fe00
#8  0x0000003245afd26f in PyRun_SimpleFileExFlags (fp=0x6c79e0, filename=0x7fffffffe094 "sandbox/python/nm-gi-crash.py", closeit=1, flags=0x7fffffffdbb0)
    at /usr/src/debug/Python-2.7.2/Python/pythonrun.c:944
        m = <optimized out>
        d = 
    {'addrs6': [<IP6Address at remote 0x7ffff053d600>], 'NMClient': <DynamicModule(_overrides_module=None, _namespace='NMClient', _introspection_module=<IntrospectionModule(_namespace='NMClient', IP6Config=<GObjectMeta(__module__='gi.repository.NMClient', get_routes=<function at remote 0x7fffef89af50>, parent=<property at remote 0x7fffef893c58>, get_domains=<function at remote 0x7fffef89aed8>, get_addresses=<function at remote 0x7fffef89ae60>, new=<staticmethod at remote 0x7fffef899c58>, __gtype__=<gobject.GType at remote 0x7ffff7f42480>, __info__=<ObjectInfo at remote 0x7fffef898ef0>, __doc__=None) at remote 0x7ed950>, DeviceWifi=<GObjectMeta(do_access_point_removed=<NativeVFunc(_info=<gi.VFuncInfo at remote 0x7fffef898bd8>) at remote 0x7fffef89c050>, __module__='gi.repository.NMClient', get_hw_address=<function at remote 0x7fffef89ac80>, get_permanent_hw_address=<function at remote 0x7fffef89ad70>, parent=<property at remote 0x7fffef893ba8>, get_active_access_point=<function at remote 0x7fffef89ab18>, get_mode=...(truncated)
        v = <optimized out>
        ext = <optimized out>
        set_file_name = 1
        ret = <optimized out>
        len = <optimized out>
#9  0x0000003245b0e745 in Py_Main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/Python-2.7.2/Modules/main.c:599
        c = <optimized out>
        sts = -1
        command = 0x0
        filename = 0x7fffffffe094 "sandbox/python/nm-gi-crash.py"
        module = 0x0
        fp = 0x6c79e0
        p = <optimized out>
        unbuffered = <optimized out>
        skipfirstline = 0
        stdin_is_interactive = 1
        help = <optimized out>
        version = <optimized out>
        saw_unbuffered_flag = -8044
        cf = {cf_flags = 0}
#10 0x000000322e22169d in __libc_start_main (main=0x400620 <main>, argc=2, ubp_av=0x7fffffffdcd8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffdcc8)
    at libc-start.c:226
---Type <return> to continue, or q <return> to quit---
        result = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {0, 2839545548212813008, 4195880, 140737488346320, 0, 0, -2839545549260833584, 2813707316274412752}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 
    0x7fffffffdcf0, 0x1}, data = {prev = 0x0, cleanup = 0x0, canceltype = -8976}}}
        not_first_call = <optimized out>
#11 0x0000000000400651 in _start ()

Comment 4 Fedora End Of Life 2013-01-16 13:18:32 UTC
This message is a reminder that Fedora 16 is nearing its end of life.
Approximately 4 (four) weeks from now Fedora will stop maintaining
and issuing updates for Fedora 16. It is Fedora's policy to close all
bug reports from releases that are no longer maintained. At that time
this bug will be closed as WONTFIX if it remains open with a Fedora 
'version' of '16'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version prior to Fedora 16's end of life.

Bug Reporter: Thank you for reporting this issue and we are sorry that 
we may not be able to fix it before Fedora 16 is end of life. If you 
would still like to see this bug fixed and are able to reproduce it 
against a later version of Fedora, you are encouraged to click on 
"Clone This Bug" and open it against that version of Fedora.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

The process we are following is described here: 
http://fedoraproject.org/wiki/BugZappers/HouseKeeping

Comment 5 Fedora End Of Life 2013-02-13 14:03:06 UTC
Fedora 16 changed to end-of-life (EOL) status on 2013-02-12. Fedora 16 is 
no longer maintained, which means that it will not receive any further 
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of 
Fedora please feel free to reopen this bug against that version.

Thank you for reporting this bug and we are sorry it could not be fixed.