From 7844d8e3d12e5e4c2ffbd1d1fb477970d2743696 Mon Sep 17 00:00:00 2001 From: Dmitry Kozlov Date: Tue, 3 Sep 2013 16:40:13 +0400 Subject: snmp: properly terminate snmp thread --- accel-pppd/extra/net-snmp/agent.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'accel-pppd') diff --git a/accel-pppd/extra/net-snmp/agent.c b/accel-pppd/extra/net-snmp/agent.c index 878cd9a7..7e06a79b 100644 --- a/accel-pppd/extra/net-snmp/agent.c +++ b/accel-pppd/extra/net-snmp/agent.c @@ -76,6 +76,7 @@ static void *snmp_thread(void *a) sigfillset(&set); sigdelset(&set, SIGKILL); sigdelset(&set, SIGSTOP); + sigdelset(&set, 32); pthread_sigmask(SIG_BLOCK, &set, NULL); snmp_register_callback(SNMP_CALLBACK_LIBRARY, SNMP_CALLBACK_LOGGING, agent_log, NULL); @@ -118,7 +119,8 @@ static void *snmp_thread(void *a) static void snmp_ctx_close(struct triton_context_t *ctx) { snmp_term = 1; - snmp_shutdown(conf_agent_name); + pthread_cancel(snmp_thr); + pthread_join(snmp_thr, NULL); triton_context_unregister(ctx); } -- cgit v1.2.3