On Tue, 23 Feb 2010 09:11:40 +0100 Bart wrote:
BVA> Handling alarms via SIGALRM was already broken by r16831 (
BVA> 
http://net-snmp.svn.sourceforge.net/viewvc/net-snmp?view=rev&revision=16831).
BVA> In that revision a helper thread was added in
BVA> agent/mibgroup/if-mib/data_access/interface_linux.c. Because no provisions
BVA> are taken in snmpd to restrict delivery of SIGALRM to a certain thread,
BVA> SIGALRM can be delivered to either the main agent thread or the helper
BVA> thread. If SIGALRM is delivered to the prefix listener helper thread, the
BVA> invocation of run_alarms() from the SIGALRM handler will trigger several
BVA> data races and may even cause a crash.

Ok, is this only true in the non-default case where
NETSNMP_DS_LIB_ALARM_DONT_USE_SIG is set, or can it happen in the default case 
too?

Most likely we should not be creating a thread, but instead be forking off a
child process to do the listening...

------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Net-snmp-coders mailing list
Net-snmp-coders@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/net-snmp-coders

Reply via email to