runit: patch from Debian to make utmpset(8) use time_t; remove html docs.

This commit is contained in:
Juan RP 2014-10-09 09:52:53 +02:00
parent b518873c1c
commit c168a2c973
2 changed files with 57 additions and 4 deletions

View File

@ -0,0 +1,56 @@
From 20a0afcd367666efc17c59cf121a0d991ff1bd09 Mon Sep 17 00:00:00 2001
From: Gerrit Pape <pape@smarden.org>
Date: Thu, 31 Jul 2014 12:25:49 +0000
Subject: [PATCH] utmpset.c: mixes "int32_t *" and "time_t *"
Don't pass int32_t to time(), thx Lorenzo Beretta,
https://bugs.debian.org/754849
---
runit-2.1.2/src/utmpset.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/runit-2.1.2/src/utmpset.c b/runit-2.1.2/src/utmpset.c
index eea41a5..2e8a525 100644
--- runit-2.1.2/src/utmpset.c
+++ runit-2.1.2/src/utmpset.c
@@ -24,6 +24,7 @@ void usage(void) { strerr_die4x(1, "usage: ", progname, USAGE, "\n"); }
int utmp_logout(const char *line) {
int fd;
uw_tmp ut;
+ time_t t;
int ok =-1;
if ((fd =open(UW_TMP_UFILE, O_RDWR, 0)) < 0)
@@ -35,7 +36,8 @@ int utmp_logout(const char *line) {
if (!ut.ut_name[0] || (str_diff(ut.ut_line, line) != 0)) continue;
memset(ut.ut_name, 0, sizeof ut.ut_name);
memset(ut.ut_host, 0, sizeof ut.ut_host);
- if (time(&ut.ut_time) == -1) break;
+ if (time(&t) == -1) break;
+ ut.ut_time = t;
#ifdef DEAD_PROCESS
ut.ut_type =DEAD_PROCESS;
#endif
@@ -52,6 +54,7 @@ int wtmp_logout(const char *line) {
int len;
struct stat st;
uw_tmp ut;
+ time_t t;
if ((fd = open_append(UW_TMP_WFILE)) == -1)
strerr_die4sys(111, FATAL, "unable to open ", UW_TMP_WFILE, ": ");
@@ -65,10 +68,11 @@ int wtmp_logout(const char *line) {
memset(&ut, 0, sizeof(uw_tmp));
if ((len =str_len(line)) > sizeof ut.ut_line) len =sizeof ut.ut_line -2;
byte_copy(ut.ut_line, len, line);
- if (time(&ut.ut_time) == -1) {
+ if (time(&t) == -1) {
close(fd);
return(-1);
}
+ ut.ut_time = t;
#ifdef DEAD_PROCESS
ut.ut_type =DEAD_PROCESS;
#endif
--
2.0.1

View File

@ -1,7 +1,7 @@
# Template file for 'runit' # Template file for 'runit'
pkgname=runit pkgname=runit
version=2.1.2 version=2.1.2
revision=1 revision=2
wrksrc="admin" wrksrc="admin"
short_desc="A UNIX init scheme with service supervision" short_desc="A UNIX init scheme with service supervision"
maintainer="Juan RP <xtraeme@gmail.com>" maintainer="Juan RP <xtraeme@gmail.com>"
@ -37,8 +37,5 @@ do_install() {
vmkdir usr/share/man/man8 vmkdir usr/share/man/man8
install -m0644 man/* ${DESTDIR}/usr/share/man/man8 install -m0644 man/* ${DESTDIR}/usr/share/man/man8
vmkdir usr/share/doc/runit
install -m0644 doc/*.html ${DESTDIR}/usr/share/doc/runit
vinstall ${FILESDIR}/_sv 644 usr/share/zsh/site-functions vinstall ${FILESDIR}/_sv 644 usr/share/zsh/site-functions
} }