William Hubbs
2504a2c25b
Do not complain if interrupted by a signal
...
In start-stop-daemon and rc-schedules, we were printing out a warning if
the nanosleep call was interrupted by a signal, but we did not treat
this as an error situation other than displaying the message, so there
is no need for the message.
2018-11-15 14:03:06 -06:00
William Hubbs
008c9d0036
supervise-daemon: reap zombies
...
We need to make sure to reap zombies so that we can shut down
successfully.
Fixes #252 .
Possibly related to #250 .
2018-11-05 21:35:00 -06:00
William Hubbs
025c9693cc
rc-service: fix help output
2018-11-05 11:39:39 -06:00
William Hubbs
ee3c4afdb7
openrc-init: add SELinux support
...
This is for #173 .
2018-11-02 18:22:11 -05:00
William Hubbs
e2416d0893
openrc-shutdown: do not require a time for -w switch
...
X-Gentoo-Bug: 669500
X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=669500
2018-10-24 15:24:40 -05:00
William Hubbs
c1e582586d
supervise-daemon: add health checks
...
Health checks are a way to monitor a service and make sure it stays
healthy.
If a service is not healthy, it will be automatically restarted after
running the unhealthy() function to clean up.
2018-10-23 13:38:14 -05:00
William Hubbs
3f918161aa
openrc-shutdown: Add scheduled shutdown and the ability to cancel a shutdown
...
You can now schedule a shutdown for a certain time or a cpecific number
of minutes into the future.
When a shutdown is running, you can now cancel it with ^c from the
keyboard or by running "openrc-shutdown -c" from another shell.
2018-10-18 17:56:36 -05:00
Zac Medico
710c874e6e
supervise-daemon: fix respawn_max off by one
...
Fix the comparison between respawn_count and respawn_max so that
respawn_max = 1 will allow for one respawn. Since respawn_count is
incremented before the comparison, use a 'greater than' comparison
so that respawn will be triggered when respawn_count is equal to
respawn_max.
Fixes: https://github.com/OpenRC/openrc/issues/247
Fixes: https://github.com/OpenRC/openrc/issues/248
2018-10-15 11:50:42 -05:00
Austin English
07908be090
misc: style fixups
2018-10-13 12:53:54 -04:00
Austin English
02af093043
misc: whitespace fixes
2018-10-13 12:53:54 -04:00
William Hubbs
67e2d6033d
Complete implementation of forever timeout value in stop schedules
2018-10-09 11:34:52 -05:00
William Hubbs
eca4357892
supervise-daemon: use nanosleep() instead of sleep()
...
We will be using sigalrm in this process for health checking, and
sigalrm cannot be used with sleep() safely.
2018-10-06 12:51:04 -05:00
William Hubbs
7ee3e5b2d6
openrc-init: convert sleep() call to nanosleep()
...
Nanosleep is the safer call to use in case we need to use alarms
eventually.
2018-10-06 12:49:44 -05:00
Zac Medico
84ed570eae
librc: fix EACCES errno false-positive crash
...
Use errno != EACCES to fix false-positive for non-root users
with grsecurity kernels.
Fixes: 37e2944272
("librc: Add check for crashed state")
This fixes #237
2018-08-06 17:39:52 -05:00
Holger Hoffstätte
79648ac1c6
rc-status: initialize uptime pointer to prevent memory corruption
...
This fixes #231 .
2018-06-29 08:49:13 -05:00
William Hubbs
56ddda54b5
supervise-daemon.c: clean up memory leaks
2018-06-27 17:37:11 -05:00
William Hubbs
3a803b3135
librc-daemon.c: fix memory leaks
2018-06-27 12:06:19 -05:00
William Hubbs
72df51e17b
librc-daemon: convert most snprintf calls to xasprintf
2018-06-22 15:41:25 -05:00
William Hubbs
b2f5531194
librc-misc: convert snprintf calls to xasprintf
2018-06-20 17:45:01 -05:00
William Hubbs
19bf49a710
libeinfo: convert remaining snprintf calls to xasprintf
2018-06-20 12:36:51 -05:00
William Hubbs
64354831da
openrc: convert snprintf calls to xasprintf
2018-06-20 09:37:20 -05:00
William Hubbs
e14edd765f
supervise-daemon: convert snprintf calls to xasprintf
2018-06-19 17:57:10 -05:00
William Hubbs
f9d41243d8
start-stop-daemon: convert snprintf calls to xasprintf
2018-06-19 17:46:12 -05:00
William Hubbs
be7ad06d4a
rc-status: convert snprintf calls to xasprintf
2018-06-19 17:06:33 -05:00
William Hubbs
a616516895
rc-status: fix gcc 7 warnings
2018-06-19 16:18:48 -05:00
William Hubbs
04721ece03
start-stop-daemon: fix gcc 7 warnings
2018-06-19 15:32:10 -05:00
William Hubbs
c7e8f1133a
checkpath: fix gcc 7 warnings
2018-06-19 14:01:54 -05:00
William Hubbs
47e4bfae57
fix gcc 7 warnings in pipe routines
2018-06-19 13:59:16 -05:00
William Hubbs
8a945194af
libeinfo: clean up gcc 7 compiler warnings
2018-06-19 13:52:40 -05:00
William Hubbs
e6d01471fe
start-stop-daemon: add ability to log stdout or stderr to processes
2018-06-15 12:23:50 -05:00
William Hubbs
d4501a9f06
fix a typo
2018-06-14 14:55:42 -05:00
Mike Gilbert
ec8abea460
Add helper to spawn process with stdin connected to a pipe
2018-06-13 13:49:42 -05:00
William Hubbs
7e56a49e23
Logger: only log printable characters and newlines
...
X-Gentoo-Bug: 651412
X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=651412
2018-05-22 17:11:43 -05:00
William Hubbs
0f4fa41574
Add mark_service_crashed binary
2018-05-22 12:20:38 -05:00
William Hubbs
5d6dd97bba
rc-misc: add the crashed state
2018-05-22 12:20:38 -05:00
William Hubbs
37e2944272
librc: Add check for crashed state
...
In rc_service_state,, call rc_service_daemons_crashed to check for
a crashed daemon if the service is started.
2018-05-22 12:19:41 -05:00
William Hubbs
4e0eace837
librc: Add crashed state
2018-05-22 12:19:22 -05:00
William Hubbs
faa8318b3b
Remove the _rc_can_find_pids function
...
This test to find if we could see pid 1 was being used inconsistently in
rc-status and mark_service_crashed to decide whether we could test to
see if the daemon for the service was crashed, and it was not part of
the librc library.
I am removing it from the executables because of inconsistent usage. I
will add it to the library if it is needed there.
2018-05-18 16:48:21 -05:00
William Hubbs
08da36149c
rc-service: add --ifstarted and --ifstopped options
2018-05-16 13:25:22 -05:00
William Hubbs
4d47ce440c
rc-service: add -d/--debug and -D/--nodeps options
2018-05-15 16:59:21 -05:00
William Hubbs
958f57d895
openrc-run: respect the RC_NODEPS environment variable
2018-05-15 16:27:42 -05:00
William Hubbs
04886efd85
Add RC_DEBUG and RC_NODEPS to environment whitelist
...
These are needed so rc-service can pass debug and nodeps options to
openrc-run.
2018-05-15 16:18:19 -05:00
William Hubbs
d980798d64
openrc-run: respect the IN_DRYRUN environment variable
...
This allows rc-service to pass the tryrun option to openrc-run.
This is for #225 .
2018-05-14 19:08:19 -05:00
William Hubbs
414a9aae6c
rc-misc.c: Add IN_DRYRUN to environment whitelist
...
This allows rc-service to pass the dryrun option to openrc-run.
This is for #225 .
2018-05-14 19:04:42 -05:00
William Hubbs
a7f475ca04
rc-service: add a --dry-run option
...
This is for #225 .
2018-05-14 19:00:04 -05:00
William Hubbs
b35e03b6b1
Revert "Logger: only log printable characters and newlines"
...
This reverts commit 2b1392af2f
.
This seems to create issues shutting down, so I need to look into it
further.
2018-05-10 19:35:24 -05:00
William Hubbs
2b1392af2f
Logger: only log printable characters and newlines
...
X-Gentoo-Bug: 651412
X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=651412
2018-05-09 17:30:08 -05:00
Andrey Utkin
0200002b8c
start-stop-daemon: don't fail stopping if pidfile is gone
...
If pidfile does not exist when we are stopping the daemon, assume it is
already stopped, and report success.
hostapd is an example of a daemon which removes its pidfile when it is
exiting. If this daemon terminates prematurely, that is, without s-s-d
involvement, then openrc fails to restart it, because s-s-d "stop"
command fails when pidfile is missing.
X-Gentoo-Bug: 646274
X-Gentoo-Bug-URL: https://bugs.gentoo.org/646274
2018-05-02 13:42:59 -05:00
Scall
2ae60ca041
rc-update: fix typo
2018-03-21 08:33:33 -04:00
William Hubbs
5346fbf2c9
supervise-daemon: fix off-by-one error
2018-03-14 20:05:45 -05:00