Compare commits
	
		
			6 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|   | 3a96ca1c96 | ||
|   | 934530914b | ||
|   | b717625cd2 | ||
|   | b475396134 | ||
|   | e7b1d898ca | ||
|   | 5cd09a6f44 | 
							
								
								
									
										69
									
								
								ChangeLog
									
									
									
									
									
								
							
							
						
						
									
										69
									
								
								ChangeLog
									
									
									
									
									
								
							| @@ -1,3 +1,48 @@ | ||||
| commit 934530914bd507476b428d3f6572bbb1c5bbfd16 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     add "unsupervised" status and return code 64 to supervise-daemon status function | ||||
|      | ||||
|     This is to be used if the service is being supervised and the | ||||
|     supervisor is somehow killed. | ||||
|      | ||||
|     Currently, this is very linux specific, but I will expand to other | ||||
|     platforms, patches are welcome. | ||||
|  | ||||
| commit b717625cd27950c3f00b5345bc1cee9700e79498 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     version 0.34.2 | ||||
|  | ||||
| commit b47539613431521e5e99bc388e6a9d8eb0e48801 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     Update ChangeLog | ||||
|  | ||||
| commit e7b1d898ca7896d6443ba1e5167eb6bcf3f92929 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     supervise-daemon: fix build issue for >=glibc-2.26 | ||||
|      | ||||
|     X-Gentoo-Bug: 635334 | ||||
|     X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=635334 | ||||
|  | ||||
| commit 5cd09a6f44aa7d16ab7de1453e37d01448426031 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     version 0.34.1 | ||||
|  | ||||
| commit f3c70bf5b5aa18e8dc94d4949f05568e0741c5cb | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     Update ChangeLog | ||||
|  | ||||
| commit f5acc66db7d1a0bfad6a40eefc0240b80f52df94 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
| @@ -1448,27 +1493,3 @@ Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     src/rc/rc: do not try to start services if fork fails | ||||
|  | ||||
| commit 003657c973ea338a19f2b7294190af9d76cf5cea | ||||
| Author: Robin H. Johnson <robbat2@gentoo.org> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     init.d/loopback: drop scope on loopback | ||||
|      | ||||
|     Busybox does not support the 'scope' argument on 'ip address add' or 'ip | ||||
|     route add', this is documented in BUSYBOX.md, but is no longer actually | ||||
|     needed, as the kernel does get it right without manual specification, | ||||
|     and the ifconfig variant already relies on the kernel to get it right. | ||||
|     This is part of #103. | ||||
|      | ||||
|     X-Gentoo-Bug: 487208 | ||||
|     X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=487208 | ||||
|  | ||||
| commit 4fd144c0a6526963c70f18cb34a65354c2f0a48c | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     src/rc/rc-misc.c: report error if call to flock() fails | ||||
|      | ||||
|     X-Gentoo-Bug: 597390 | ||||
|     X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=597390 | ||||
|   | ||||
| @@ -1,3 +1,3 @@ | ||||
| NAME=		openrc | ||||
| VERSION=	0.34 | ||||
| VERSION=	0.34.2 | ||||
| PKG=		${NAME}-${VERSION} | ||||
|   | ||||
| @@ -56,7 +56,50 @@ supervise_stop() | ||||
| 	eend $? "Failed to stop ${name:-$RC_SVCNAME}" | ||||
| } | ||||
|  | ||||
| _check_supervised() | ||||
| { | ||||
| 	[ "$RC_UNAME" != Linux ] && return 0 | ||||
| 	local child_pid="$(service_get_value "child_pid")" | ||||
| 	local pid="$(cat ${pidfile})" | ||||
| 	if [ -n "${child_pid}" ]; then | ||||
| 		if ! [ -e "/proc/${pid}" ] && [ -e "/proc/${child_pid}" ]; then | ||||
| 			if [ -e "/proc/self/ns/pid" ] && [ -e "/proc/${child_pid}/ns/pid" ]; then | ||||
| 				local n1 n2 | ||||
| 				n1=$(readlink "/proc/self/ns/pid") | ||||
| 				n2=$(readlink "/proc/${child_pid}/ns/pid") | ||||
| 				if [ "${n1}" = "${n2}" ]; then | ||||
| 					return 1 | ||||
| 				fi | ||||
| 			fi | ||||
| 		fi | ||||
| 	fi | ||||
| 	return 0 | ||||
| } | ||||
|  | ||||
| supervise_status() | ||||
| { | ||||
| 	_status | ||||
| 	if service_stopping; then | ||||
| 		ewarn "status: stopping" | ||||
| 		return 4 | ||||
| 	elif service_starting; then | ||||
| 		ewarn "status: starting" | ||||
| 		return 8 | ||||
| 	elif service_inactive; then | ||||
| 		ewarn "status: inactive" | ||||
| 		return 16 | ||||
| 	elif service_started; then | ||||
| 		if service_crashed; then | ||||
| 			if ! _check_supervised; then | ||||
| 				eerror "status: unsupervised" | ||||
| 				return 64 | ||||
| 			fi | ||||
| 			eerror "status: crashed" | ||||
| 			return 32 | ||||
| 		fi | ||||
| 		einfo "status: started" | ||||
| 		return 0 | ||||
| 	else | ||||
| 		einfo "status: stopped" | ||||
| 		return 3 | ||||
| 	fi | ||||
| } | ||||
|   | ||||
| @@ -447,7 +447,9 @@ static void supervisor(char *exec, char **argv) | ||||
| #endif | ||||
| 	signal_setup_restart(SIGIO, handle_signal); | ||||
| 	signal_setup_restart(SIGPWR, handle_signal); | ||||
| #ifdef SIGUNUSED | ||||
| 	signal_setup_restart(SIGUNUSED, handle_signal); | ||||
| #endif | ||||
| #ifdef SIGRTMIN | ||||
| 	for (i = SIGRTMIN; i <= SIGRTMAX; i++) | ||||
| 		signal_setup_restart(i, handle_signal); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user