signal_to_string:
Produce names for SIGRTMIN+n.
Never give an "n/a" result. In the worst case give the number itself as
a string.
signal_from_string:
Parse "RTMIN+n".
Parse any valid signal number.
CONDITION_PATH_IS_DIRECTORY, CONDITION_PATH_IS_SYMBOLIC_LINK and
CONDITION_FILE_IS_EXECUTABLE gave reversed results when the path
did not exist at all.
Warn if a service promises to write a PID file (using 'PIDFile=' in the
unit file or '# pidfile:' in SysV header), but fails to keep the
promise.
This warning will likely trigger also for the forking services with a
racy daemonization, which exit the original process before the PID file
is written.
This is useful for inetd-style per-connection services, so that they
again can simply specify StandardOutput=socket to connect all three fds
to the socket.
Return 0 only if the PID was really loaded. If no PIDFile= is defined,
return -ENOENT.
Only one caller cares about the return value of this function and this
change makes the usage nicer.
When some forking daemons receive a SIGHUP, they re-execute themselves
and consequently change to a new main PID. As long as they update the
PID file in the right order (before exiting the old PID), we can detect
that and avoid killing them.
The logic never worked since reading from the boot console is useless
when a service is started after boot. Hence drop this half-baked code,
since we now have a place document incompatibilities like this.
http://www.freedesktop.org/wiki/Software/systemd/Incompatibilities
Otherwise, access-denied dbus errors were not caught, and only
caused a message to be printed out on the console. After this
change a proper popup window pops up :).
The new WrapLabel is there to work around a deficiency in GTK,
namely the fact that it is hard to make labels which are both
resizable and wrappable. The code is a port from libview.
Since the timezone is always local, it doesn't make much sense to
display it. The timestamp is now formatted without the timezone.
I guess it can be further improved, which should be easier now
that it is tucked-away in a separate function.
If we managed to reeexec the init system via the bus this allows us to
provide synchronous behaviour to callers. This is all lost if we then
repeat the reexecution via SIGTERM.
https://bugzilla.redhat.com/show_bug.cgi?id=698198