Based on findings of @BrandonSchmitt in PR #297, the current implementation does not handle authentication correctly when acting in server mode.
This is at least broken since mid of 2021 when dbus-java was split into core library and transports.
The split changed some internals to use java.nio instead of java.io. That means Socket and ServerSocket was replaced by SocketChannel.
Server mode of dbus-java was never really good (the SASL code is also pretty messy). MatchRule support was added recently and was not supported before. It was mainly designed to allow testing the client without external dependencies (like a running dbus-daemon). Anyway, the server's SASL implementation should handle this part correctly.
Based on findings of @BrandonSchmitt in PR #297, the current implementation does not handle authentication correctly when acting in server mode.
This is at least broken since mid of 2021 when dbus-java was split into core library and transports.
The split changed some internals to use
java.nioinstead ofjava.io. That meansSocketandServerSocketwas replaced bySocketChannel.Server mode of dbus-java was never really good (the SASL code is also pretty messy). MatchRule support was added recently and was not supported before. It was mainly designed to allow testing the client without external dependencies (like a running dbus-daemon). Anyway, the server's SASL implementation should handle this part correctly.