3
0
mirror of https://git.kernel.org/pub/scm/network/wireless/iwd.git synced 2025-04-13 03:57:51 +02:00
James Prestwood e4f22f0a5d ap: fix crash when stopping AP
The AP structure was getting cleaned up twice. When the DBus stop method came
in we do AP_STOP on nl80211. In this callback the AP was getting freed in
ap_reset. Also when the DBus interface was cleaned up it triggered ap_reset.

Since ap->started gets set to false in ap_reset, we now check this and bail
out if the AP is already stopped.

Fixes:
++++++++ backtrace ++++++++
0  0x7f099c11ef20 in /lib/x86_64-linux-gnu/libc.so.6
1  0x43fed0 in l_queue_foreach() at ell/queue.c:441 (discriminator 3)
2  0x423a6c in ap_reset() at src/ap.c:140
3  0x423b69 in ap_free() at src/ap.c:162
4  0x44ee86 in interface_instance_free() at ell/dbus-service.c:513
5  0x451730 in _dbus_object_tree_remove_interface() at ell/dbus-service.c:1650
6  0x405c07 in netdev_newlink_notify() at src/netdev.c:4449 (discriminator 9)
7  0x440775 in l_hashmap_foreach() at ell/hashmap.c:534
8  0x4455d3 in process_broadcast() at ell/netlink.c:158
9  0x4439b3 in io_callback() at ell/io.c:126
10 0x442c4e in l_main_iterate() at ell/main.c:473
11 0x442d1c in l_main_run() at ell/main.c:516
12 0x442f2b in l_main_run_with_signal() at ell/main.c:644
13 0x403ab3 in main() at src/main.c:504
14 0x7f099c101b97 in /lib/x86_64-linux-gnu/libc.so.6
+++++++++++++++++++++++++++
2019-01-25 18:51:18 -06:00
..
2018-10-08 21:38:30 -05:00
2018-04-19 11:49:41 -05:00
2018-04-19 11:49:41 -05:00
2019-01-25 18:51:18 -06:00
2018-07-17 18:52:59 -05:00
2018-11-16 16:59:59 -06:00
2019-01-22 11:40:07 -06:00
2018-10-19 00:20:35 -05:00
2018-11-29 11:34:07 -06:00
2019-01-11 17:36:33 -06:00
2018-08-08 19:43:05 -05:00
2017-11-28 13:20:33 -06:00
2019-01-17 15:20:28 -06:00
2018-11-16 16:59:45 -06:00
2018-11-16 16:59:45 -06:00
2019-01-17 15:24:56 -06:00
2018-11-16 18:06:42 -06:00
2017-11-28 13:30:06 -06:00
2017-11-28 13:30:06 -06:00
2016-07-20 15:29:39 -05:00
2018-08-13 20:40:59 -05:00
2018-07-17 19:12:48 -05:00
2017-02-17 12:27:13 -06:00