From 47fb4f6219e6936fd99d28a1e43135544d10b4ff Mon Sep 17 00:00:00 2001 From: Vadim Kochan Date: Sun, 3 May 2015 11:14:07 +0300 Subject: trafgen: Delete rfmon mac80211 device on panic Fixed case when rfmon mac80211 created device remains after trafgen failed (for ex. - incorrect cfg file), so just delete it when panic occured. Also made panic handlers invoking per process and only once. Signed-off-by: Vadim Kochan Signed-off-by: Tobias Klauser --- trafgen.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'trafgen.c') diff --git a/trafgen.c b/trafgen.c index deef1f2..4a9fde5 100644 --- a/trafgen.c +++ b/trafgen.c @@ -852,6 +852,11 @@ static unsigned int generate_srand_seed(void) return _seed; } +static void on_panic_del_rfmon(void *arg) +{ + leave_rfmon_mac80211(arg); +} + int main(int argc, char **argv) { bool slow = false, invoke_cpp = false, reseed = true, cpustats = true; @@ -1067,6 +1072,7 @@ int main(int argc, char **argv) xfree(ctx.device); enter_rfmon_mac80211(ctx.device_trans, &ctx.device); + panic_func_add(on_panic_del_rfmon, ctx.device); sleep(0); } -- cgit v1.2.3-54-g00ecf