Releases: bus1/dbus-broker
Releases · bus1/dbus-broker
dbus-broker-36
# dbus-broker - Linux D-Bus Message Broker
## CHANGES WITH 36:
* Fix possible file-descriptor use-after-close, which can lead to
broker termination or disclosure of internal file-desciptors to
clients.
* Be more verbose about activation failures and include suitable
information in related log messages.
* New Meson build option `tests` allows installing tests as part
of the distribution into `<prefix>/lib/dbus-broker/tests`. This
is not recommended for production environments.
* Many updates to the test suite and packing of the upstream project.
Contributions from: Camron Carter, David Rheinsberg, Frantisek Sumsal,
Jake Dane, Tom Gundersen
- Dußlingen, 2024-04-12
dbus-broker-35
# dbus-broker - Linux D-Bus Message Broker
## CHANGES WITH 35:
* Fix crash on startup/reload when corrupt configuration or
service files are used.
Contributions from: Allison Karlitskaya, David Rheinsberg, Lily Danzig
- Dußlingen, 2023-12-20
dbus-broker-34
# dbus-broker - Linux D-Bus Message Broker
## CHANGES WITH 34:
* Use `AT_RANDOM` for libexpat initialization to avoid a hidden
dependency in libexpat-hashtables on `/dev/urandom` at runtime.
* Check for SELinux Enforcing-mode and honor its value.
* Support the new `ProcessFD` key in `GetConnectionCredentials()`.
* Loading files from a directory will not enumerate the files in a
predictable order rather than the pseudo-random order returned by
the kernel.
Contributions from: David Rheinsberg, Luca Boccassi, Mark Esler,
Stefan Agner, Tom Gundersen
- Dußlingen, 2023-12-12
dbus-broker-33
# dbus-broker - Linux D-Bus Message Broker
## CHANGES WITH 33:
* Fix a race-condition when starting systemd-services from the
launcher. In particular, services with guarding systemd `Condition*`
configurations might have incorrectly stalled activation attempts.
* Return `org.freedesktop.DBus.Error.Failed` rather than a permission
error for unimplemented functionality. The human-readable part of the
error will contain "Unimplemented functionality" as explanation.
* Improve resiliency of the launcher against runtime changes in dbus
service-files. Changes to the files will no longer affect ongoing
activation attempts.
* Fix `GetStats()` returning two replies.
* Fix missing origin-information in the startup log-message.
Contributions from: David Rheinsberg, draconicfae, Marcus Sundberg,
Mike Gilbert, Stefan Agner, Tom Gundersen
- Dußlingen, 2023-02-03
dbus-broker-32
# dbus-broker - Linux D-Bus Message Broker
## CHANGES WITH 32:
* Fix several bugs in the d-bus marshalling layer c-dvar, including
out-of-bound reads.
* Fix ubsan and asan warnings in c-stdaux and related subprojects.
* Add initial infrastructure for the upcoming AppArmor security layer.
This does not include full AppArmor support, yet, but merely prepares
the code-base for it.
Contributions from: David Rheinsberg, Evgeny Vereshchagin, Frantisek
Sumsal, Sebastian Reichel
- Dußlingen, 2022-08-05
dbus-broker-31
# dbus-broker - Linux D-Bus Message Broker
## CHANGES WITH 31:
* Fix assertion failures in the user accounting, uncovered by the
changes to accounting in v30.
* Fix a memory leak in service-file re-loading, in particular in the
command-line argument handling.
* Fix a set of UBs related to memcpy(3), memset(3), and others, called
with NULL on empty memory areas.
Contributions from: David Rheinsberg, Evgeny Vereshchagin, Mel34,
Torge Matthies
- Dußlingen, 2022-05-16
dbus-broker-30
# dbus-broker - Linux D-Bus Message Broker
## CHANGES WITH 30:
* Pull in subprojects via meson wraps. Subprojects are no longer
included via git submodules, but instead pulled in at build-time via
meson. All subprojects are converted to follow semver-style
versioning, and dbus-broker pulls them in via a versioned dependency.
All subprojects are still statically linked and considered part of
dbus-broker. Any critical update to any subproject will cause a new
release of dbus-broker, as it always did. Distributions are not
required to monitor the subprojects manually.
The official release-tarballs of dbus-broker include up-to-date
subproject sources and can be used for offline builds. Distributions
are free to use newer subproject sources for their rebuilds, and this
is explicitly supported.
Please refer to the meson documentation for details on how to manage
subprojects. You can still pull in other versions of the dependencies
by putting the sources into ./subprojects/. This change merely makes
meson pull in the newest sources via a meson-wrap-file, if, and only
if, no other sources have been provided.
This change requires `meson-0.60` or newer.
* Systemd units with failed `Condition*=` directives are now correctly
considered failed, even if they report success.
* Failed service activations now report more detailed information on
the activation failure back through the activating client. The exact
error information is now transmitted back from the launcher to the
broker and then included in the dbus error message to the client.
* Order the broker unit explicitly after `dbus.socket` to enforce the
dependency even if the broker is disable temporarily. When the unit
is enabled, this dependency is implicit due to the used alias to
`dbus.service`.
* The broker now runs in `session.slice` if applicable. The broker is
thus considered more vital to the session and thus is less likely to
be collected on resource exhaustion.
* The `GetStats()` call on `org.freedeskop.DBus.Debug` now properly
returns reply-owner statistics. Before, those were always set to 0.
* Fix incorrect resource accounting of connecting peers. Before, only
the data a peer actually transmitted/received was accounted, but the
management object of the peer itself was not. This is now fixed to
properly account all resources a peer uses.
* Fix NULL-derefs in the XML configuration parser. Empty XML tags could
have caused NULL-derefs before. This is now fixed.
* Fix a buffer-overflow in shell-quote parsing, used by the `Exec=`
line in activation service files.
* Fix the launcher to obtain service-paths from systemd directly rather
than building them manually. This will correctly resolve unit aliases
and other quirks of systemd units.
Contributions from: David Rheinsberg, Hugo Osvaldo Barrera, Luca
Boccassi, Zbigniew Jędrzejewski-Szmek, msizanoen1
- Dußlingen, 2022-05-10
dbus-broker-29
# dbus-broker - Linux D-Bus Message Broker
## CHANGES WITH 29:
* Improve SELinux audit messages. This requires the new libselinux-3.2
and libaudit-3.0 releases. If audit/selinux support is enabled, those
are now the minimum required versions.
* Make linux-4.17 a hard-requirements. Older kernels are no longer
supported.
* Fix startup failures when at-console users have consecutive uids.
Contributions from: Chris PeBenito, David Rheinsberg, Thomas Mühlbacher
- Dußlingen, 2021-06-02
dbus-broker-28
# dbus-broker - Linux D-Bus Message Broker
## CHANGES WITH 28:
* Further improvements to the service activation tracking. This better
tracks units in systemd and closes some races where a repeated
activation would incorrectly fail.
* Fix a crash where duplicate monitor matches would be incorrectly
installed in the broker.
* Clear the ambient capability set to harden against possible exploits.
* A couple of bug-fixes in the utility libraries, and static
dependencies of the broker.
Contributions from: David Rheinsberg
- Dußlingen, 2021-03-17
dbus-broker-27
# dbus-broker - Linux D-Bus Message Broker
## CHANGES WITH 27:
* Fix several bugs with the new service-activation tracking, including
a race-condition when restarting activatable services. Note that this
includes a change to the internal controller API, which is used to
communicate between the launcher and the broker.
* Be more verbose about denied configuration access and print the
file-path for better diagnostics.
Contributions from: David Rheinsberg
- Dußlingen, 2021-02-24