core: check return value of rm_rf_dangerous and warn if it fails
shared: free dt (temporary dir name) on fail

[zj: modified to not to try to rmdir() dir we haven't created.]
systemd-sysctl: Handle missing /etc/sysctl.conf properly

Since fabe5c0e5fce730aa66e10a9c4f9fdd443d7aeda, systemd-sysctl returns
a non-zero exit code if /etc/sysctl.conf does not exist, due to a
broken ENOENT check.
sd-bus: check c->path for null instead of path
log: fix error codes handling in catalog_list_items

It does not make sense to print error code from previous loop.