Miljen, I think your code snippet is trying to access a memory location that it
is not allowed to access. For e.g. you might be writing some illegal location
using some pointer (may be one of them my_test,my_test2). Try changing the
HANDLER_CAN_RWRITE in the declaration portion to HANDLER_CAN_READ (in both).
Your pointers might be trying to access eachothers location.
Hope it helps!
Regards,
Syed Mujtaba
Date: Fri, 11 Jul 2008 15:52:31 +0200From: [EMAIL PROTECTED]: [EMAIL
PROTECTED]: Segmentation fault problemHi everyone,I am trying to add SNMP
support in the IKEv2 project (http://sourceforge.net/projects/ikev2) and I am
using net-snmp, 5.4.1.Firstly, there is a great number of variables which I
plan to register. I am wondering whether is possible (or harmful) to use one
oid variable as:oid session_oid[] = {.., 13, 1};and then change last element of
this array (to 2,3,..etc.) before registering different variables? The
alternative is to declare and use different oid array for each variable that I
want to register.More importantly, there is a problem which gives me a headache
- a segmentation fault occasionally happens. Here is a backtrace:(gdb) bt#0
0x080fc3e1 in snmp_sess_timeout ()#1 0x080fc579 in snmp_timeout ()#2
0x080d8cb5 in snmp_synch_response_cb ()#3 0x080c9f57 in agentx_synch_response
()#4 0x080ca702 in agentx_register ()#5 0x080ba735 in
agentx_registration_callback ()#6 0x0811c0c9 in snmp_call_callbacks ()#7
0x080ab5b2 in netsnmp_register_mib ()#8 0x080b04cd in netsnmp_register_handler
()#9 0x080793aa in sm_sessions_register () at sm.c:441#10 0x0807e93f in
sm_main_thread (data=0xbfd33c28) at sm.c:7778#11 0x00c1a8ef in
g_thread_create_full () from /usr/lib/libglib-2.0.so.0#12 0x001b53b6 in
start_thread () from /lib/libpthread.so.0#13 0x00b2933e in clone () from
/lib/libc.so.6Function sm_sessions_register() is defined as:void
sm_sessions_register(){ netsnmp_handler_registration *my_test;
netsnmp_handler_registration *my_test2; my_test =
netsnmp_create_handler_registration("example",
sm_sess_handle,
session_oid,
OID_LENGTH(session_oid),
HANDLER_CAN_RWRITE); netsnmp_register_instance(my_test); // --> THIS
IS LINE 441! my_test2 =
netsnmp_create_handler_registration("example2",
sm_sess_handle,
session_oid2,
OID_LENGTH(session_oid2),
HANDLER_CAN_RWRITE); netsnmp_register_instance(my_test2);}session_oid
and session_oid2 are defined as:oid session_oid[] = { 1, 3, 6, 1, 3, 411249,
13, 2, 1 };oid session_oid2[] = { 1, 3, 6, 1, 3, 411249, 13, 2, 2 };and they
are globals. Sm_sess_handle is written by example in your tutorial
(delayed_instance.c) and I can include this code also if necessary.I would be
very grateful for any help or hint!Miljen
_________________________________________________________________
Connect to the next generation of MSN Messenger
http://imagine-msn.com/messenger/launch80/default.aspx?locale=en-us&source=wlmailtagline-------------------------------------------------------------------------
Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW!
Studies have shown that voting for your favorite open source project,
along with a healthy diet, reduces your potential for chronic lameness
and boredom. Vote Now at http://www.sourceforge.net/community/cca08
_______________________________________________
Net-snmp-users mailing list
[email protected]
Please see the following page to unsubscribe or change other options:
https://lists.sourceforge.net/lists/listinfo/net-snmp-users