Compare commits
	
		
			9 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|   | da7e35ebc4 | ||
|   | 809c205c35 | ||
|   | 238bffca9b | ||
|   | da0ddd521a | ||
|   | 1967cd402c | ||
|   | a7f3eb466c | ||
|   | ae7490929d | ||
|   | ddbd1caa35 | ||
|   | a249651218 | 
							
								
								
									
										146
									
								
								ChangeLog
									
									
									
									
									
								
							
							
						
						
									
										146
									
								
								ChangeLog
									
									
									
									
									
								
							| @@ -1,3 +1,63 @@ | |||||||
|  | commit 809c205c356992145b8781ae07a5d3c98b79a8c9 | ||||||
|  | Author: Sergei Trofimovich <slyfox@inbox.ru> | ||||||
|  | Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||||
|  |  | ||||||
|  |     rc-logger.c: fix crash on fclose(NULL) (#137) | ||||||
|  |      | ||||||
|  |     Only close the log if we successfully opened it. | ||||||
|  |      | ||||||
|  |     Reported-by: Brian Evans <grknight@gentoo.org> | ||||||
|  |     Tested-by: Brian Evans <grknight@gentoo.org> | ||||||
|  |     Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org> | ||||||
|  |  | ||||||
|  | commit 238bffca9bbec8ed723b9e46fbc04407e5daddeb | ||||||
|  | Author: William Hubbs <w.d.hubbs@gmail.com> | ||||||
|  | Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||||
|  |  | ||||||
|  |     version 0.26.3 | ||||||
|  |  | ||||||
|  | commit da0ddd521ad15d030308fbf2017577acc422f1d6 | ||||||
|  | Author: William Hubbs <w.d.hubbs@gmail.com> | ||||||
|  | Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||||
|  |  | ||||||
|  |     update ChangeLog | ||||||
|  |  | ||||||
|  | commit 1967cd402caf6e229263f15aef40c6c4d8f60ce3 | ||||||
|  | Author: William Hubbs <w.d.hubbs@gmail.com> | ||||||
|  | Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||||
|  |  | ||||||
|  |     rc_status: calculate time differences in time_t and display seconds in uptime | ||||||
|  |  | ||||||
|  | commit a7f3eb466c750eee160c49ab728ad1f8cd3380ee | ||||||
|  | Author: William Hubbs <w.d.hubbs@gmail.com> | ||||||
|  | Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||||
|  |  | ||||||
|  |     version 0.26.2 | ||||||
|  |  | ||||||
|  | commit ae7490929d35322e1ce19daaa9f1edadbfe8dfd6 | ||||||
|  | Author: William Hubbs <w.d.hubbs@gmail.com> | ||||||
|  | Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||||
|  |  | ||||||
|  |     update ChangeLog | ||||||
|  |  | ||||||
|  | commit ddbd1caa35986b9f1be0070dad1cedfc427a1bf1 | ||||||
|  | Author: William Hubbs <w.d.hubbs@gmail.com> | ||||||
|  | Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||||
|  |  | ||||||
|  |     supervise-daemon: save start time and respawn count before dropping privs | ||||||
|  |  | ||||||
|  | commit a24965121834b64cc5e62c52c67b88886e5c5f5c | ||||||
|  | Author: William Hubbs <w.d.hubbs@gmail.com> | ||||||
|  | Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||||
|  |  | ||||||
|  |     version 0.26.1 | ||||||
|  |  | ||||||
|  | commit e4bfb4530a86a4ccdff312c857df37fa0da36fd6 | ||||||
|  | Author: William Hubbs <w.d.hubbs@gmail.com> | ||||||
|  | Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||||
|  |  | ||||||
|  |     update ChangeLog | ||||||
|  |  | ||||||
| commit 78e0042eccaf5a5554b195ad391b3ab0b8974cf6 | commit 78e0042eccaf5a5554b195ad391b3ab0b8974cf6 | ||||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | Author: William Hubbs <w.d.hubbs@gmail.com> | ||||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||||
| @@ -1393,89 +1453,3 @@ Author: William Hubbs <w.d.hubbs@gmail.com> | |||||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||||
|  |  | ||||||
|     increment version to 0.22 |     increment version to 0.22 | ||||||
|  |  | ||||||
| commit 5bfb7d6c77ff533e34e2bbfe5b6e57410d961d70 |  | ||||||
| Author: William Hubbs <w.d.hubbs@gmail.com> |  | ||||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> |  | ||||||
|  |  | ||||||
|     Update ChangeLog |  | ||||||
|  |  | ||||||
| commit 12c8248b5f53879935d4e62ef42023f703c7b636 |  | ||||||
| Author: William Hubbs <w.d.hubbs@gmail.com> |  | ||||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> |  | ||||||
|  |  | ||||||
|     update news for 0.21 |  | ||||||
|  |  | ||||||
| commit 820ef6dab674c2878d72edc8ea21e7250b1b5aec |  | ||||||
| Author: William Hubbs <w.d.hubbs@gmail.com> |  | ||||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> |  | ||||||
|  |  | ||||||
|     supervise-daemon: clarify documentation about configuring daemon not to fork |  | ||||||
|  |  | ||||||
| commit 87884db66767eba6317b506a4d7270dd22721831 |  | ||||||
| Author: William Hubbs <w.d.hubbs@gmail.com> |  | ||||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> |  | ||||||
|  |  | ||||||
|     Make deprecation warnings for rc and runscript more visible |  | ||||||
|      |  | ||||||
|     These warnings were inserted in verbose only mode in OpenRC-0.13.A |  | ||||||
|     Now, we are making them more visible in preparation for removing these |  | ||||||
|     compatibility binaries in the future. |  | ||||||
|  |  | ||||||
| commit 94077d264e14783e6ca5603d64e9d579fb206c20 |  | ||||||
| Author: William Hubbs <w.d.hubbs@gmail.com> |  | ||||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> |  | ||||||
|  |  | ||||||
|     supervise-daemon: log the exit code or signal when a child process dies |  | ||||||
|  |  | ||||||
| commit 3351c8b4c3027f09003f8ba33e43f46762f5c453 |  | ||||||
| Author: William Hubbs <w.d.hubbs@gmail.com> |  | ||||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> |  | ||||||
|  |  | ||||||
|     supervise-daemon.sh: add support for chroot variable |  | ||||||
|  |  | ||||||
| commit a8214af2fe3aa91930e3270af99cf1d9b7ef5b0a |  | ||||||
| Author: William Hubbs <w.d.hubbs@gmail.com> |  | ||||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> |  | ||||||
|  |  | ||||||
|     start-stop-daemon.sh: fix regression in chroot support |  | ||||||
|      |  | ||||||
|     The support for the chroot variable was broken in 0.16, this fixes that |  | ||||||
|     breakage. |  | ||||||
|  |  | ||||||
| commit 9a372812c78ea8efc55b3dea6a39c2d0559bca45 |  | ||||||
| Author: William Hubbs <w.d.hubbs@gmail.com> |  | ||||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> |  | ||||||
|  |  | ||||||
|     guide.md: typo fix |  | ||||||
|      |  | ||||||
|     This fixes #86. |  | ||||||
|  |  | ||||||
| commit 3fa9015b8e5610d38366f781a08789e34159b0dc |  | ||||||
| Author: Jason Zaman <jason@perfinion.com> |  | ||||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> |  | ||||||
|  |  | ||||||
|     rc-selinux: access check was backwards |  | ||||||
|  |  | ||||||
| commit 3b5a8b331e81ecd9a9362553c16f4527291d5528 |  | ||||||
| Author: William Hubbs <w.d.hubbs@gmail.com> |  | ||||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> |  | ||||||
|  |  | ||||||
|     supervise-daemon: add pam service file |  | ||||||
|  |  | ||||||
| commit b3a04e797e5e459842c2c239886ab6ea08a8dc29 |  | ||||||
| Author: Anthony G. Basile <blueness@gentoo.org> |  | ||||||
| Commit: Anthony G. Basile <blueness@gentoo.org> |  | ||||||
|  |  | ||||||
|     runlevels/Makefile: add support for runlevel ‘nonetwork’ |  | ||||||
|      |  | ||||||
|     Traditional System V reserves runlevel 2 for multiuser with no |  | ||||||
|     networking.  We add support for this which is already defined in |  | ||||||
|     the inittab as |  | ||||||
|      |  | ||||||
|         l2:2:wait:/sbin/rc nonetwork |  | ||||||
|      |  | ||||||
|     X-Gentoo-Bug: 533828 |  | ||||||
|     X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=533828 |  | ||||||
|      |  | ||||||
|     Signed-off-by: Anthony G. Basile <blueness@gentoo.org> |  | ||||||
|   | |||||||
| @@ -1,3 +1,3 @@ | |||||||
| NAME=		openrc | NAME=		openrc | ||||||
| VERSION=	0.26 | VERSION=	0.26.3 | ||||||
| PKG=		${NAME}-${VERSION} | PKG=		${NAME}-${VERSION} | ||||||
|   | |||||||
| @@ -261,12 +261,12 @@ rc_logger_open(const char *level) | |||||||
| 						break; | 						break; | ||||||
| 					} | 					} | ||||||
| 				} | 				} | ||||||
|  | 				fclose(log); | ||||||
| 			} else { | 			} else { | ||||||
| 				log_error = 1; | 				log_error = 1; | ||||||
| 				eerror("Error: fopen(%s) failed: %s", TMPLOG, strerror(errno)); | 				eerror("Error: fopen(%s) failed: %s", TMPLOG, strerror(errno)); | ||||||
| 			} | 			} | ||||||
|  |  | ||||||
| 			fclose(log); |  | ||||||
| 			fclose(plog); | 			fclose(plog); | ||||||
| 		} else { | 		} else { | ||||||
| 			/* | 			/* | ||||||
|   | |||||||
| @@ -83,11 +83,11 @@ static void get_uptime(const char *service, char *uptime, int uptime_size) | |||||||
| 	time_t now; | 	time_t now; | ||||||
| 	char *start_time_string; | 	char *start_time_string; | ||||||
| 	time_t start_time; | 	time_t start_time; | ||||||
| 	double time_diff; | 	time_t time_diff; | ||||||
| 	double diff_tmp; | 	time_t diff_days = (time_t) 0; | ||||||
| 	double diff_days; | 	time_t diff_hours = (time_t) 0; | ||||||
| 	double diff_hours; | 	time_t diff_mins = (time_t) 0; | ||||||
| 	double diff_mins; | 	time_t diff_secs = (time_t) 0; | ||||||
|  |  | ||||||
| 	uptime[0] = '\0'; | 	uptime[0] = '\0'; | ||||||
| 	if (state & RC_SERVICE_STARTED) { | 	if (state & RC_SERVICE_STARTED) { | ||||||
| @@ -96,26 +96,29 @@ static void get_uptime(const char *service, char *uptime, int uptime_size) | |||||||
| 		if (start_count && start_time_string) { | 		if (start_count && start_time_string) { | ||||||
| 			start_time = to_time_t(start_time_string); | 			start_time = to_time_t(start_time_string); | ||||||
| 			now = time(NULL); | 			now = time(NULL); | ||||||
| 			time_diff = difftime(now, start_time); | 			time_diff = (time_t) difftime(now, start_time); | ||||||
| 			diff_tmp = time_diff; | 			diff_secs = time_diff; | ||||||
| 			if (diff_tmp > 86400.0) { | 			if (diff_secs > (time_t) 86400) { | ||||||
| 				diff_days = diff_tmp / 86400.0; | 				diff_days = diff_secs / (time_t) 86400; | ||||||
| 				diff_tmp -= diff_days * 86400.0; | 				diff_secs %= diff_days * (time_t) 86400; | ||||||
| 			} | 			} | ||||||
| 			if (diff_tmp > 3600.0) { | 			if (diff_secs > (time_t) 3600) { | ||||||
| 				diff_hours = diff_tmp / 3600.0; | 				diff_hours = diff_secs / (time_t) 3600; | ||||||
| 				diff_tmp -= diff_hours * 3600.0; | 				diff_secs %= diff_hours * (time_t) 3600; | ||||||
| 			} | 			} | ||||||
| 			if (diff_tmp > 60.0) { | 			if (diff_secs > (time_t) 60) { | ||||||
| 				diff_mins = diff_tmp / 60.0; | 				diff_mins = diff_secs / (time_t) 60; | ||||||
| 				diff_tmp -= diff_mins * 60.0; | 				diff_secs %= diff_mins * (time_t) 60; | ||||||
| 			} | 			} | ||||||
| 			if ((int) diff_days > 0) | 			if (diff_days > 0) | ||||||
| 				snprintf(uptime, uptime_size, "%.0f days %02.0f:%02.0f (%s)", | 				snprintf(uptime, uptime_size, | ||||||
| 						diff_days, diff_hours, diff_mins, start_count); | 						"%ld day(s) %02ld:%02ld:%02ld (%s)", | ||||||
|  | 						diff_days, diff_hours, diff_mins, diff_secs, | ||||||
|  | 						start_count); | ||||||
| 			else | 			else | ||||||
| 				snprintf(uptime, uptime_size, "%02.0f:%02.0f (%s)", | 				snprintf(uptime, uptime_size, | ||||||
| 						diff_hours, diff_mins, start_count); | 						"%02ld:%02ld:%02ld (%s)", | ||||||
|  | 						diff_hours, diff_mins, diff_secs, start_count); | ||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
| } | } | ||||||
|   | |||||||
| @@ -196,6 +196,14 @@ static void child_process(char *exec, char **argv, char *svcname, | |||||||
|  |  | ||||||
| 	setsid(); | 	setsid(); | ||||||
|  |  | ||||||
|  | 	if (svcname) { | ||||||
|  | start_time = time(NULL); | ||||||
|  | from_time_t(start_time_string, start_time); | ||||||
|  | 		rc_service_value_set(svcname, "start_time", start_time_string); | ||||||
|  | sprintf(start_count_string, "%i", start_count); | ||||||
|  | 		rc_service_value_set(svcname, "start_count", start_count_string); | ||||||
|  | 	} | ||||||
|  |  | ||||||
| 	if (nicelevel) { | 	if (nicelevel) { | ||||||
| 		if (setpriority(PRIO_PROCESS, getpid(), nicelevel) == -1) | 		if (setpriority(PRIO_PROCESS, getpid(), nicelevel) == -1) | ||||||
| 			eerrorx("%s: setpriority %d: %s", applet, nicelevel, | 			eerrorx("%s: setpriority %d: %s", applet, nicelevel, | ||||||
| @@ -342,13 +350,6 @@ static void child_process(char *exec, char **argv, char *svcname, | |||||||
| 		c++; | 		c++; | ||||||
| 	} | 	} | ||||||
| 	syslog(LOG_INFO, "Running command line: %s", cmdline); | 	syslog(LOG_INFO, "Running command line: %s", cmdline); | ||||||
| 	if (svcname) { |  | ||||||
| start_time = time(NULL); |  | ||||||
| from_time_t(start_time_string, start_time); |  | ||||||
| 		rc_service_value_set(svcname, "start_time", start_time_string); |  | ||||||
| sprintf(start_count_string, "%i", start_count); |  | ||||||
| 		rc_service_value_set(svcname, "start_count", start_count_string); |  | ||||||
| 	} |  | ||||||
| 	execvp(exec, argv); | 	execvp(exec, argv); | ||||||
|  |  | ||||||
| #ifdef HAVE_PAM | #ifdef HAVE_PAM | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user