Bug 710667
Summary: | Net-SNMP python bindings core dump with SNMPv3 | ||
---|---|---|---|
Product: | Red Hat Enterprise Linux 6 | Reporter: | Erinn Looney-Triggs <erinn.looneytriggs> |
Component: | net-snmp | Assignee: | Jan Safranek <jsafrane> |
Status: | CLOSED ERRATA | QA Contact: | BaseOS QE Security Team <qe-baseos-security> |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | 6.1 | CC: | ksrot, rvokal, spoyarek |
Target Milestone: | rc | ||
Target Release: | --- | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: |
The netsnmp python module did not properly initialize SNMP session with SNMPv3 authentication and crashed. With this update, the SNMP session with SNMPv3 authentication is properly initialized and can be used in python modules. (BZ#710667).
|
Story Points: | --- |
Clone Of: | Environment: | ||
Last Closed: | 2011-12-06 17:12:05 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Erinn Looney-Triggs
2011-06-03 23:55:54 UTC
It generates following stack trace: #0 snmp_sess_synch_response (sessp=0x0, pdu=0x25f0d50, response=0x7fff42c01618) at snmp_client.c:1093 #1 0x00007fba6fc26e99 in __send_sync_pdu (ss=0x0, pdu=0x25f0d50, response=0x7fff42c01618, retry_nosuch=0, err_str=0x7fff42c01640 "", err_num=0x7fff42c01630, err_ind=0x7fff42c01634) at netsnmp/client_intf.c:1013 #2 0x00007fba6fc28ce3 in netsnmp_get (self=<value optimized out>, args=<value optimized out>) at netsnmp/client_intf.c:1469 #3 0x00007fba769d5ba4 in call_function (f=<value optimized out>, throwflag=<value optimized out>) at Python/ceval.c:3794 #4 PyEval_EvalFrameEx (f=<value optimized out>, throwflag=<value optimized out>) at Python/ceval.c:2453 #5 0x00007fba769d6d4f in fast_function (f=<value optimized out>, throwflag=<value optimized out>) at Python/ceval.c:3880 #6 call_function (f=<value optimized out>, throwflag=<value optimized out>) at Python/ceval.c:3815 #7 PyEval_EvalFrameEx (f=<value optimized out>, throwflag=<value optimized out>) at Python/ceval.c:2453 #8 0x00007fba769d781c in PyEval_EvalCodeEx (co=0x7fba76de1738, globals=<value optimized out>, locals=<value optimized out>, args=<value optimized out>, argcount=0, kws=0x0, kwcount=0, defs=0x0, defcount=0, closure=0x0) at Python/ceval.c:3044 #9 0x00007fba769d78f2 in PyEval_EvalCode (co=<value optimized out>, globals=<value optimized out>, locals=<value optimized out>) at Python/ceval.c:545 #10 0x00007fba769f296c in run_mod (mod=<value optimized out>, filename=<value optimized out>, globals= {'vars': <VarList(varbinds=[<Varbind(iid='0', tag='sysDescr', type=None, val=None) at remote 0x7fba76df9290>]) at remote 0x7fba76d9b3d0>, 'f': <Session(Timeout=1000000, PrivProto='AES', SecLevel='authPriv', sess_ptr=0, Version=3, ErrorInd=0, SecName='snmpuser', BestGuess=0, UseLongNames=0, LocalPort=0, ErrorStr='', AuthPass='foo', ErrorNum=0, ContextEngineId='', SecEngineId='', UseSprintValue=0, UseNumeric=0, Retries=3, AuthProto='SHA', RemotePort=161, DestHost='localhost', Context='', Engineboots=0, PrivPass='foo', RetryNoSuch=0, Community='public', UseEnums=0, Enginetime=0) at remote 0x7fba76d9b390>, '__builtins__': <module at remote 0x7fba76e96868>, 'netsnmp': <module at remote 0x7fba76df6c90>, '__file__': 'test.py', '__package__': None, 'r': ('Linux rhel6 2.6.32-125.el6.x86_64 #1 SMP Mon Mar 21 10:06:08 EDT 2011 x86_64',), '__name__': '__main__', '__doc__': None}, locals= {'vars': <VarList(varbinds=[<Varbind(iid='0', tag='sysDescr', type=None, val=None) at remote 0x7fba76df9290>]) at remote 0x7fba76d9b3d0>, 'f': <Session(Timeout=1000000, PrivProto='AES', SecLevel='authPriv', sess_ptr=0, Version=3, ErrorInd=0, SecName='snmpuser', BestGuess=0, UseLongNames=0, LocalPort=0, ErrorStr='', AuthPass='foo', ErrorNum=0, ContextEngineId='', SecEngineId='', UseSprintValue=0, UseNumeric=0, Retries=3, AuthProto='SHA', RemotePort=161, DestHost='localhost', Context='', Engineboots=0, PrivPass='foo', RetryNoSuch=0, Community='public', UseEnums=0, Enginetime=0) at remote 0x7fba76d9b390>, '__builtins__': <module at remote 0x7fba76e96868>, 'netsnmp': <module at remote 0x7fba76df6c90>, '__file__': 'test.py', '__package__': None, 'r': ('Linux rhel6 2.6.32-125.el6.x86_64 #1 SMP Mon Mar 21 10:06:08 EDT 2011 x86_64',), '__name__': '__main__', '__doc__': None}, flags=<value optimized out>, arena=<value optimized out>) at Python/pythonrun.c:1351 #11 0x00007fba769f2a40 in PyRun_FileExFlags (fp=0x25b5d60, filename=0x7fff42c048df "test.py", start=<value optimized out>, globals= {'vars': <VarList(varbinds=[<Varbind(iid='0', tag='sysDescr', type=None, val=None) at remote 0x7fba76df9290>]) at remote 0x7fba76d9b3d0>, 'f': <Session(Timeout=1000000, PrivProto='AES', SecLevel='authPriv', sess_ptr=0, Version=3, ErrorInd=0, SecName='snmpuser', BestGuess=0, UseLongNames=0, LocalPort=0, ErrorStr='', AuthPass='foo', ErrorNum=0, ContextEngineId='', SecEngineId='', UseSprintValue=0, UseNumeric=0, Retries=3, AuthProto='SHA', RemotePort=161, DestHost='localhost', Context='', Engineboots=0, PrivPass='foo', RetryNoSuch=0, Community='public', UseEnums=0, Enginetime=0) at remote 0x7fba76d9b390>, '__builtins__': <module at remote 0x7fba76e96868>, 'netsnmp': <module at remote 0x7fba76df6c90>, '__file__': 'test.py', '__package__': None, 'r': ('Linux rhel6 2.6.32-125.el6.x86_64 #1 SMP Mon Mar 21 10:06:08 EDT 2011 x86_64',), '__name__': '__main__', '__doc__': None}, locals= {'vars': <VarList(varbinds=[<Varbind(iid='0', tag='sysDescr', type=None, val=None) at remote 0x7fba76df9290>]) at remote 0x7fba76d9b3d0>, 'f': <Session(Timeout=1000000, PrivProto='AES', SecLevel='authPriv', sess_ptr=0, Version=3, ErrorInd=0, SecName='snmpuser', BestGuess=0, UseLongNames=0, LocalPort=0, ErrorStr='', AuthPass='foo', ErrorNum=0, ContextEngineId='', SecEngineId='', UseSprintValue=0, UseNumeric=0, Retries=3, AuthProto='SHA', RemotePort=161, DestHost='localhost', Context='', Engineboots=0, PrivPass='foo', RetryNoSuch=0, Community='public', UseEnums=0, Enginetime=0) at remote 0x7fba76d9b390>, '__builtins__': <module at remote 0x7fba76e96868>, 'netsnmp': <module at remote 0x7fba76df6c90>, '__file__': 'test.py', '__package__': None, 'r': ('Linux rhel6 2.6.32-125.el6.x86_64 #1 SMP Mon Mar 21 10:06:08 EDT 2011 x86_64',), '__name__': '__main__', '__doc__': None}, closeit=1, flags=0x7fff42c03c60) at Python/pythonrun.c:1337 #12 0x00007fba769f3f2c in PyRun_SimpleFileExFlags (fp=0x25b5d60, filename=0x7fff42c048df "test.py", closeit=1, flags=0x7fff42c03c60) at Python/pythonrun.c:941 #13 0x00007fba76a005af in Py_Main (argc=<value optimized out>, argv=<value optimized out>) at Modules/main.c:577 Technical note added. If any revisions are required, please edit the "Technical Notes" field accordingly. All revisions will be proofread by the Engineering Content Services team. New Contents: /* intentionally skipped from errata description */ Technical note updated. If any revisions are required, please edit the "Technical Notes" field accordingly. All revisions will be proofread by the Engineering Content Services team. Diffed Contents: @@ -1 +1 @@ -/* intentionally skipped from errata description */+The snmp python module did not properly initialize SNMP session with SNMPv3 authentication and crashed. With this update, the SNMP session with SNMPv3 authentication is properly initialized and can be used in python modules. (BZ#710667). Technical note updated. If any revisions are required, please edit the "Technical Notes" field accordingly. All revisions will be proofread by the Engineering Content Services team. Diffed Contents: @@ -1 +1 @@ -The snmp python module did not properly initialize SNMP session with SNMPv3 authentication and crashed. With this update, the SNMP session with SNMPv3 authentication is properly initialized and can be used in python modules. (BZ#710667).+The netsnmp python module did not properly initialize SNMP session with SNMPv3 authentication and crashed. With this update, the SNMP session with SNMPv3 authentication is properly initialized and can be used in python modules. (BZ#710667). I still see the segfault on ppc64 and s390x platforms with net-snmp-5.5-34.el6. Unfortunately I am unable to get a backtrace. Generated stack trace is different: #0 snmp_sess_session (sessp=0x3e914bb0) at snmp_api.c:7465 #1 0x00000fff7bcf6090 in snmp_sess_synch_response (sessp=<value optimized out>, pdu=<value optimized out>, response=<value optimized out>) at snmp_client.c:1090 #2 0x00000fff7be047e0 in __send_sync_pdu (ss=0x3e914bb0, pdu=0x1003e85ee30, response=0xfffd8cc2300, retry_nosuch=<value optimized out>, err_str=0xfffd8cc2328 "", err_num=0xfffd8cc2318, err_ind= 0xfffd8cc231c) at netsnmp/client_intf.c:1013 #3 0x00000fff7be06e58 in netsnmp_get (self=<value optimized out>, args=<value optimized out>) at netsnmp/client_intf.c:1470 This has been already fixed upstream in commit 7e1cae42bd79a0cdfb70521558a0dedc5aa0c42d. I've chosen a bit different approach though (PyInt_AsVoidPtr is not available on RHEL6???) Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. http://rhn.redhat.com/errata/RHBA-2011-1524.html |