Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package sysvinit for openSUSE:Factory checked in at 2021-10-04 18:38:54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/sysvinit (Old) and /work/SRC/openSUSE:Factory/.sysvinit.new.2443 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "sysvinit" Mon Oct 4 18:38:54 2021 rev:176 rq:921949 version:3.00 Changes: -------- --- /work/SRC/openSUSE:Factory/sysvinit/sysvinit.changes 2021-04-10 15:27:11.282365097 +0200 +++ /work/SRC/openSUSE:Factory/.sysvinit.new.2443/sysvinit.changes 2021-10-04 18:38:55.669956439 +0200 @@ -1,0 +2,6 @@ +Tue Sep 21 07:17:20 UTC 2021 - Dr. Werner Fink <wer...@suse.de> + +- Update to sysvinit 3.00: + * Better device detection of bootlogd + +------------------------------------------------------------------- Old: ---- sysvinit-2.99.tar.xz New: ---- sysvinit-3.00.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ sysvinit.spec ++++++ --- /var/tmp/diff_new_pack.uUO0Ty/_old 2021-10-04 18:38:56.393957615 +0200 +++ /var/tmp/diff_new_pack.uUO0Ty/_new 2021-10-04 18:38:56.397957621 +0200 @@ -26,7 +26,7 @@ Name: sysvinit %define KPVER 2.23 -%define SIVER 2.99 +%define SIVER 3.00 %define START 0.65 Version: %{SIVER} Release: 0 ++++++ sysvinit-2.99.tar.xz -> sysvinit-3.00.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysvinit-2.99/doc/Changelog new/sysvinit-3.00/doc/Changelog --- old/sysvinit-2.99/doc/Changelog 2021-02-21 19:02:25.000000000 +0100 +++ new/sysvinit-3.00/doc/Changelog 2021-09-20 23:37:29.000000000 +0200 @@ -1,3 +1,10 @@ +sysvinit (3.00) released; urgency=low + + * Applied patch from Matthias Schiffer which allows bootlogd to read from + a wider range of consoles. The console name is already passed in from the + kernel command line using "console=". We no longer filter out names as strictly + but do now check to confirm the "console=" device points to a valid TTY. + sysvinit (2.99) released; urgency=low * Fixed typos and missing underlines in shutdown manual page. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysvinit-2.99/src/bootlogd.c new/sysvinit-3.00/src/bootlogd.c --- old/sysvinit-2.99/src/bootlogd.c 2021-02-21 19:02:25.000000000 +0100 +++ new/sysvinit-3.00/src/bootlogd.c 2021-09-20 23:37:29.000000000 +0200 @@ -212,6 +212,22 @@ return 0; } + +static int istty(const char *dev) +{ + int fd, ret; + + fd = open(dev, O_RDONLY|O_NONBLOCK); + if (fd < 0) + return 0; + + ret = isatty(fd); + + close(fd); + + return ret; +} + /* * See if a console taken from the kernel command line maps * to a character device we know about, and if we can open it. @@ -228,7 +244,7 @@ l = strlen(c->cmdline); if (sl <= l) continue; p = s + l; - if (strncmp(s, c->cmdline, l) != 0 || !isdigit(*p)) + if (strncmp(s, c->cmdline, l) != 0) continue; for (i = 0; i < 2; i++) { snprintf(res, rlen, i ? c->dev1 : c->dev2, p); @@ -239,6 +255,13 @@ } } } + + /* Fallback: accept any TTY device */ + snprintf(res, rlen, "/dev/%s", s); + if ((q = strchr(res, ',')) != NULL) *q = 0; + if (istty(res)) + return 1; + return 0; }