pipewire/src/modules
Barnabás Pőcze d2f0573369 pipewire: module-zeroconf-discover: handle module destroy events
module-zeroconf-discover loads module-pulse-tunnel for each entity
exposed on the network. Previously, however, the destroy event
of the loaded pulse-tunnel modules were not handled.

This resulted in a use-after-free because both `pw_context_destroy()`
and `module-zeroconf-discover.c:impl_free()` tried to destroy
the pulse-tunnel modules. The reason for that is that since
1de16afc40 the modules
are prepended to the module list of the context, not appended,
therefore modules are destroyed in LIFO order, thus the pulse-tunnel
modules were destroyed before the zeroconf-discover module that
loaded them.

Fix that by handling the destroy event of the loaded pulse-tunnel
modules.

Fixes #1653
2021-09-29 10:35:16 +02:00
..
module-adapter modules: use the new topic-based logging from various pipewire modules 2021-09-28 09:35:39 +02:00
module-client-device tree-wide: replace strstr(a, b) == a with spa_strstartswith() 2021-08-02 08:24:21 +00:00
module-client-node modules: use the new topic-based logging from various pipewire modules 2021-09-28 09:35:39 +02:00
module-echo-cancel module-echo-cancel: Change extension .cc to .cpp for aec-webrtc 2021-06-02 18:26:19 -04:00
module-filter-chain filter-chain: add dirac pulse 2021-09-07 20:12:58 +02:00
module-metadata includes: update all references to extensions to point to pipewire/extensions 2021-06-18 17:54:18 +03:00
module-profiler modules: use the new topic-based logging from various pipewire modules 2021-09-28 09:35:39 +02:00
module-protocol-native modules: switch protocol-native to the new logging system 2021-09-28 09:35:39 +02:00
module-protocol-pulse modules: add log topics to module-protocol-pulse 2021-09-28 09:35:39 +02:00
module-session-manager treewide: mark things static and const 2021-06-30 14:44:08 +02:00
module-zeroconf-discover pipewire: module-zeroconf-discover: free correct pointer 2021-06-16 17:39:25 +00:00
spa modules: use the new topic-based logging from various pipewire modules 2021-09-28 09:35:39 +02:00
meson.build modules: print the optional modules as part of the meson summary 2021-09-15 11:24:09 +10:00
module-access.c modules: use the new topic-based logging from various pipewire modules 2021-09-28 09:35:39 +02:00
module-adapter.c modules: use the new topic-based logging from various pipewire modules 2021-09-28 09:35:39 +02:00
module-client-device.c modules: use the new topic-based logging from various pipewire modules 2021-09-28 09:35:39 +02:00
module-client-node.c modules: use the new topic-based logging from various pipewire modules 2021-09-28 09:35:39 +02:00
module-echo-cancel.c modules: use the new topic-based logging from various pipewire modules 2021-09-28 09:35:39 +02:00
module-example-sink.c modules: use the new topic-based logging from various pipewire modules 2021-09-28 09:35:39 +02:00
module-example-source.c modules: use the new topic-based logging from various pipewire modules 2021-09-28 09:35:39 +02:00
module-filter-chain.c modules: use the new topic-based logging from various pipewire modules 2021-09-28 09:35:39 +02:00
module-link-factory.c modules: use the new topic-based logging from various pipewire modules 2021-09-28 09:35:39 +02:00
module-loopback.c modules: use the new topic-based logging from various pipewire modules 2021-09-28 09:35:39 +02:00
module-metadata.c modules: use the new topic-based logging from various pipewire modules 2021-09-28 09:35:39 +02:00
module-portal.c modules: use the new topic-based logging from various pipewire modules 2021-09-28 09:35:39 +02:00
module-profiler.c modules: use the new topic-based logging from various pipewire modules 2021-09-28 09:35:39 +02:00
module-protocol-native.c modules: switch protocol-native to the new logging system 2021-09-28 09:35:39 +02:00
module-protocol-pulse.c modules: add log topics to module-protocol-pulse 2021-09-28 09:35:39 +02:00
module-protocol-simple.c modules: use the new topic-based logging from various pipewire modules 2021-09-28 09:35:39 +02:00
module-pulse-tunnel.c modules: use the new topic-based logging from various pipewire modules 2021-09-28 09:35:39 +02:00
module-roc-sink.c modules: use the new topic-based logging from various pipewire modules 2021-09-28 09:35:39 +02:00
module-roc-source.c modules: use the new topic-based logging from various pipewire modules 2021-09-28 09:35:39 +02:00
module-rt.c modules: use the new topic-based logging from various pipewire modules 2021-09-28 09:35:39 +02:00
module-rtkit.c modules: use the new topic-based logging from various pipewire modules 2021-09-28 09:35:39 +02:00
module-session-manager.c doc: add the documentation infrastructure for pipewire modules 2021-06-25 08:42:24 +00:00
module-zeroconf-discover.c pipewire: module-zeroconf-discover: handle module destroy events 2021-09-29 10:35:16 +02:00