Opened 5 years ago

Closed 5 years ago

#4297 closed enhancement (fixed)

Sysvinit 2.90

Reported by: Anton Maisak Owned by: lfs-book
Priority: normal Milestone: 8.3
Component: Book Version: SVN
Severity: normal Keywords: sysvinit

Description (last modified by bdubbs@…)

new release

sysvinit (2.90) world; urgency=low

[ Jesse Smith ]

  • Updated some comments in init.c to answer questions or remove old notes we no longer need.
  • Removed unneeded "count" variable in utmpdump.c.
  • Fixed typo in accidental wrote_wtmp_rlevel == 0 || wrote_wtmp_rlevel comparison so the latter is wrote_utmp_rlevel.
  • Simplified logic in mountpoint.c when testing for same device or same inode.
  • When we run shutdown and then the computer is put to sleep, the shutdown command recognizes time has passed and continues its countdown taking the time lapse into consideration. This prevents longer waits if we slept past the time we should have shutdown. Accurate to the nearest minute. Closes Savannah bug #36279.
  • Added document article and manual page for the initctl (/run/initctl) named pipe. Makes it easier for people to communicate with and extend communication to init.
  • Added check that named pipe is open before trying to close it when something goes wrong or we receive SIGUSER1. Avoids potential crash if we receive SIGUSR1 while pipe is not open.
  • Added new signal handler for SIGUSR2. When init receives SIGUSR2 it closes (and leaves closed) the named pipe /run/initctl. This can be used to make sure init does not have any files open. However, it also means we cannot switch run levels or bring down the system. The pipe can be re-opened by sending init the SIGUSR1 signal.
  • Added "Fall through" comments to some switch statements where multiple approaches are tried in order to prevent warnings from GCC 7 (and newer). (Thanks to Matias Fonzo for this fix.)
  • Added includes on Linux for sys/sysmacros.h as the old defines in the sys/types.h file will be removed in the future. (Thanks to Matias Fonzo for this fix.)
  • Removed old LSM file. Added .gitignore files to avoid git tracking object files. Removed old start-stop-daemon from contrib directory. (Patches provided by Guillem Jover.)
  • Cleaned up most warnings generated by GCC 7 & 8. We still get some from faulty "nonstring" reports, but silencing them on GCC 8 results in more warnings on GCC 7 and Clang, so leaving them for now.
  • Fixed compile error on Fedora 28 where crypt() will not link due to undocumented dependency change.
  • Updated Makefile to make sure correct version number and correct version of files are used. Makefile was pulling from master to create tarballs with old version information when trying to create beta snapshot.
  • Updated version information in init.c
  • Updated compiler flag from -fstack-protector to -fstack-protector-strong for better protection.
  • Cleaned up toplevel Makefile so it stops creating unnecessary temporary directories.
  • Fixed typo in mountpoint.c. Patch provided by Radostin Stoyanov.

Attachments (1)

sysvinit-2.90-consolidated-1.patch (2.2 KB ) - added by Anton Maisak 5 years ago.
patch for new version. Not checked yet. See

Download all attachments as: .zip

Change History (3)

comment:1 by bdubbs@…, 5 years ago

Description: modified (diff)

comment:2 by bdubbs@…, 5 years ago

Resolution: fixed
Status: newclosed

Fixed at revision 11426.

by Anton Maisak, 5 years ago

patch for new version. Not checked yet. See

Note: See TracTickets for help on using tickets.