rejectold forked and re-execed the test binary with --reject-address just to call dbus_connection_open_private once against the crashed daemon's abstract address, then waited on the helper, drained its stderr pipe and checked its exit status. An abstract socket with no listener refuses the connection immediately, so the call cannot block and needs no separate process. Open the address in-process and require a null connection with the D-Bus error set, freeing the error afterwards. This drops the helper process, its stderr capture, the Test.helper fields and the argv dispatch in main. killdaemon stays; the daemons still need it.
9.4 KiB
9.4 KiB