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