dbus/bus
Simon McVittie b034b83b59 bus: Don't explicitly clear BusConnections.monitors
Each connection that is an active monitor holds a pointer to its own
link in this list, via BusConnectionData.link_in_monitors. We can't
validly free the list while these pointers exist: that would be a
use-after-free, when each connection gets disconnected and tries to
remove itself from the list.

Instead, let each connection remove itself from the list, then assert
that the list has become empty.

Signed-off-by: Simon McVittie <smcv@collabora.com>
Resolves: https://gitlab.freedesktop.org/dbus/dbus/issues/291
2020-02-20 12:43:34 +00:00
..
legacy-config On Windows, load local configuration relative to bus setup 2015-10-02 11:24:05 +01:00
systemd-user bus: Notify systemd when we are ready 2018-03-02 14:48:49 +00:00
sysusers.d systemd: add sysusers.d snippet for booting up with unpopulated /etc 2017-02-13 14:49:52 +00:00
tmpfiles.d tmpfiles: Add a note that one line is not needed with newer systemd 2018-01-29 11:59:40 +00:00
.gitignore .gitignore: Ignore many more generated files 2018-12-14 13:28:50 +00:00
activation-exit-codes.h trivial: Remove trailing whitespace from copyright notices 2018-12-17 11:22:39 +00:00
activation-helper-bin.c launch-helper: fix error code parsing 2013-10-09 10:51:39 +01:00
activation-helper.c activation-helper: Rename bus_config_parser_get_service_dirs 2017-02-21 13:23:37 +00:00
activation-helper.h trivial: Remove trailing whitespace from copyright notices 2018-12-17 11:22:39 +00:00
activation.c Configure option to disable traditional activation 2019-03-25 21:51:33 +02:00
activation.h Mediate auto-activation attempts through AppArmor 2016-11-28 12:11:45 +00:00
apparmor.c Mediate auto-activation attempts through AppArmor 2016-11-28 12:11:45 +00:00
apparmor.h Do not auto-activate services if we could not send a message 2016-11-28 12:11:41 +00:00
audit.c bus: Make audit initialization idempotent 2019-07-03 11:11:23 +01:00
audit.h audit: use DBUS_SYSTEM_LOG_WARNING if we cannot open the audit fd 2015-08-06 17:12:37 +01:00
bus.c bus: Try to raise soft fd limit to match hard limit 2019-04-18 11:54:48 +01:00
bus.h bus_context_get_policy: Remove, unused 2018-08-30 17:39:34 +01:00
CMakeLists.txt cmake: complete adding version info to all installed executables on Windows 2020-02-19 10:23:01 +01:00
config-loader-expat.c config-loader-expat: Tell Expat not to defend against hash collisions 2017-07-28 11:17:04 +01:00
config-parser-common.c trivial: Remove trailing whitespace from copyright notices 2018-12-17 11:22:39 +00:00
config-parser-common.h trivial: Remove trailing whitespace from copyright notices 2018-12-17 11:22:39 +00:00
config-parser-trivial.c embedded tests: Conform to the same API for all tests 2018-12-17 14:12:59 +00:00
config-parser-trivial.h trivial: Remove trailing whitespace from copyright notices 2018-12-17 11:22:39 +00:00
config-parser.c dbus-daemon: add send_destination_prefix support 2019-04-26 13:29:42 +02:00
config-parser.h trivial: Remove trailing whitespace from copyright notices 2018-12-17 11:22:39 +00:00
connection.c bus: Don't explicitly clear BusConnections.monitors 2020-02-20 12:43:34 +00:00
connection.h bus: Clarify names of methods that query owned names 2019-05-30 15:59:10 +01:00
containers.c bus_container_instance_new: Don't leak empty DBusString object 2018-11-19 11:35:22 +00:00
containers.h containers: Add a method to ask to be sent the connection instance header 2018-02-16 15:27:51 +00:00
dbus.service.in bus: Notify systemd when we are ready 2018-03-02 14:48:49 +00:00
dbus.socket.in systemd: enable the dbus service unconditionally 2010-09-06 03:21:17 +02:00
desktop-file.c trivial: Remove trailing whitespace from copyright notices 2018-12-17 11:22:39 +00:00
desktop-file.h BusDesktopFile: Refactor logic to free the parser contents 2018-11-20 12:01:12 +00:00
dir-watch-default.c trivial: Remove trailing whitespace from copyright notices 2018-12-17 11:22:39 +00:00
dir-watch-inotify.c trivial: Remove trailing whitespace from copyright notices 2018-12-17 11:22:39 +00:00
dir-watch-kqueue.c trivial: Remove trailing whitespace from copyright notices 2018-12-17 11:22:39 +00:00
dir-watch.h trivial: Remove trailing whitespace from copyright notices 2018-12-17 11:22:39 +00:00
dispatch.c Configure option to disable traditional activation 2019-03-25 21:51:33 +02:00
dispatch.h trivial: Remove trailing whitespace from copyright notices 2018-12-17 11:22:39 +00:00
driver.c bus_driver_credentials_fill_unix_gids: Comment on a non-error 2019-04-17 14:22:15 +01:00
driver.h trivial: Remove trailing whitespace from copyright notices 2018-12-17 11:22:39 +00:00
example-session-disable-stats.conf.in config: add examples to show how to enable/disable the Stats interface 2014-10-01 16:38:40 +01:00
example-system-enable-stats.conf.in config: add examples to show how to enable/disable the Stats interface 2014-10-01 16:38:40 +01:00
example-system-hardening-without-traditional-activation.conf Configure option to disable traditional activation 2019-03-25 21:51:33 +02:00
expirelist.c embedded tests: Conform to the same API for all tests 2018-12-17 14:12:59 +00:00
expirelist.h Bug 21161 - Update the FSF address 2009-07-14 15:39:47 -04:00
main.c Don't let dbus-daemon and its subprocesses inherit unnecessary fds 2018-11-20 19:09:18 +00:00
Makefile.am Configure option to disable traditional activation 2019-03-25 21:51:33 +02:00
org.freedesktop.dbus-session.plist.in 10.4 is old so set more sensible launchd defaults. 2010-12-09 08:20:07 +01:00
policy.c bus: Clarify names of methods that query owned names 2019-05-30 15:59:10 +01:00
policy.h dbus-daemon: add send_destination_prefix support 2019-04-26 13:29:42 +02:00
selinux.c Stop using selinux_set_mapping() function 2019-10-22 19:12:13 +02:00
selinux.h trivial: Remove trailing whitespace from copyright notices 2018-12-17 11:22:39 +00:00
services.c bus: Clarify names of methods that query owned names 2019-05-30 15:59:10 +01:00
services.h bus: Clarify names of methods that query owned names 2019-05-30 15:59:10 +01:00
session.conf.in bus: Add (unused) settings for resource limits for containers 2017-12-12 16:22:35 +00:00
signals.c embedded tests: Conform to the same API for all tests 2018-12-17 14:12:59 +00:00
signals.h Mediation of processes eavesdropping 2015-02-18 18:59:46 +00:00
stats.c driver: Share bus_driver_get_conn_helper with other modules 2017-06-29 15:42:20 +01:00
stats.h Implement GetAllMatchRules on the Stats interface 2014-09-25 12:59:50 +01:00
system.conf.in system.conf: Allow creating containers on the system bus 2017-12-12 16:22:35 +00:00
test.c bus tests: Collect possible copyright holders from git history 2019-01-21 15:15:21 +00:00
test.h bus tests: Collect possible copyright holders from git history 2019-01-21 15:15:21 +00:00
utils.c trivial: Remove trailing whitespace from copyright notices 2018-12-17 11:22:39 +00:00
utils.h trivial: Remove trailing whitespace from copyright notices 2018-12-17 11:22:39 +00:00