Commit Graph

242 Commits

Author SHA1 Message Date
Jesse Smith ed85143837 Removed super loud PC speaker beep during shutdown.
Closes Debian bug #614893. Patch from Andreas Fackler.
2018-10-22 22:03:09 -03:00
Jesse Smith d27e34754a Unified shutdown and init to use 3 second wait between SIGTERM and
SIGKILL. Defined this value in init.h (WAIT_BETWEEN_SIGNALS) for
easy modification.
Updated documentation to address Debian bug #375274.
2018-10-22 21:44:39 -03:00
Jesse Smith 7b1d470949 Added check for kernel parameter init.autocon=1. If this exists, then
init will try to open its own console. If not, then any console=
parameters will be ignored. This avoids conflicts with native kernel
created consoles.
2018-09-29 17:12:12 -03:00
Jesse Smith c29655a5c8 Updated changelog with information on pidof's new -q flag.
Fixed Makefile to make sure it does proper clean before making
tarball. And properly creates signed tarball afterwards.
2018-09-08 23:29:02 -03:00
Jesse Smith f1ca96e1c1 Added patch from Walter Harms which allows pidof to run without
displaying output. In this mode pidof simply returns true or false
without displaying PID values.

Updated manual page with new -q (quiet) mode.

Added -h flag for pidof, which was recognized before, but not used.
The -h flag now displays brief usage information for pidof.
2018-09-08 17:19:21 -03:00
Jesse Smith eda1f0d6ba Fixed typo in Makefile 2018-09-07 21:46:12 -03:00
Jesse Smith 96b7285309 Fixed Makefile so it cleans up object files before creating tarball. 2018-09-07 21:42:47 -03:00
Jesse Smith 6e8323e9fb The init process now writes the current runlevel to /var/run/runlevel.
This information can be read by the "runlevel" command as well as "halt"
and "reboot". Having the information logged in /var/run/runlevel as
well as the utmp file means systems without utmp (like those running
the musl C library) can still check the current runlevel. This is
useful when running halt/reboot as these programs want to check the
runlevel.

Updated the changelog, and manual pages for halt and runlevel.
2018-07-07 20:19:03 -03:00
Jesse Smith 6b26692584 Added new runlevel log code which saves (and reads) the current runlevel
from /var/run/runlevel. Added test code to runlevel.c to confirm it works.

Will use this to save/restore runlevel on systems where utmp is not
available.
2018-07-07 18:49:04 -03:00
Jesse Smith aa80ddcc4b Updated init manual page to make "--version" flag behaviour more clear. 2018-07-01 18:51:31 -03:00
Jesse Smith 7656f9d5f9 Version information is now fetched and defined by the Makefile.
No more need to update the version manually in the init.c source.
2018-07-01 18:44:57 -03:00
Jesse Smith 8cc9f34ca4 Merge branch '2.91' of git.sv.gnu.org:/srv/git/sysvinit into 2.91 2018-06-22 17:05:35 -03:00
Jesse Smith 4438de4e50 Added --version flag to init and updated manual page. 2018-06-22 17:04:47 -03:00
Jesse Smith 2a61e2b029 Adjusted order of compile flags to make it possible to select optimization
level by setting CFLAGS at compile file.
2018-06-21 20:22:44 -03:00
Jesse Smith 5f6d86d216 Adjusted order of compile flags to make it possible to select optimization
level by setting CFLAGS at compile file.
2018-06-21 19:34:25 -03:00
Jesse Smith 3a6ebb3c07 Fixed tar flag and typo in Makefile to make sure archive is
properly compressed.
2018-06-18 20:26:58 -03:00
Jesse Smith 40f40a4166 Removed DATE define from init.c, not needed anymore.
Updated Changelog in prep for release.
2018-06-18 19:35:53 -03:00
Jesse Smith c229965b62 Fixed typo. Corrected by Radostin Stoyanov. 2018-06-11 13:06:04 -03:00
Jesse Smith 2d6d2bc0d3 Updated toplevel Makefile to avoid created unnecessary temporary
directories when they are not wanted/required.
2018-06-03 20:14:01 -03:00
Jesse Smith 108b31e284 Switched from using -fstack-protector to -fstack-protector-strong compile
flag. Tested with both GCC and Clang.
2018-06-02 16:50:35 -03:00
Jesse Smith 56e1041034 Updated Makefile and version information. 2018-05-20 17:21:18 -03:00
Jesse Smith 4732d28994 Reverted changes to Makefile which caused tarball to be
created with incorrect name and parent folder version.
2018-05-20 17:10:54 -03:00
Jesse Smith 75d85cc876 Fixed typo in Changelog. 2018-05-20 16:19:26 -03:00
Jesse Smith bed25016b1 Updated sulogin.c to pull in crypt.h as it is a new, undocumented
dependency on Fedora 28.
Confirmed we can still build on other/older platforms.
2018-05-09 17:55:35 -03:00
Jesse Smith 3f400a01a3 Updated install documentation, fixed typo. 2018-05-05 17:11:29 -03:00
Jesse Smith dbf996d888 Fixed some problems in the Makefile which caused it to grab wrong version/user
information for upload.
2018-05-05 14:51:22 -03:00
Jesse Smith 670d691e1a Updated Makefile to use git to find version. Remove unnecessary
username information checking.
2018-05-05 14:33:54 -03:00
Jesse Smith 828c2704a1 Removed old LSM file.
Added .gitignore files to avoid git tracking object files.
Removed old start-stop-daemon from contrib directory.
2018-05-04 22:08:38 -03:00
Jesse Smith e0cfd39728 Added "Fall through" comments to some switch statements where multiple
approaches are tried in order to prevent warnings from GCC 7 (and newer).

Added includes on Linux for sys/sysmacros.h as the old defines in
the sys/types.h file will be removed in the future.
2018-05-04 14:51:40 -03:00
Jesse Smith cfb39b573f Updated init.c to remove some old notes and answer questions
that were flagged in comments or FIXME labels.
2018-04-23 00:09:49 -03:00
Jesse Smith 272f112c98 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.

Updated the man pages for initctl and init to include this information.
2018-04-17 19:44:50 -03:00
Jesse Smith f09da9cb55 Add check to make sure /run/initctl is open before we try to close
it when receiving SIGUSR1. Avoids crashing upon receiving signal.
2018-04-15 14:09:33 -03:00
Jesse Smith aee28b3292 Updated init page to reference the initctl manual page instead of
telling people to read the source code to learn how to use
the /run/initctl named pipe. Updated Makefile to install
the initctl.5 manual page.
2018-04-14 19:19:18 -03:00
Jesse Smith 01ca5252e8 Added new manual page for the initctl named pipe.
This provides information on how to send messages
to the init command.
2018-04-14 19:16:12 -03:00
Jesse Smith 266671c968 Added documentation page for initctl (/run/initctl). 2018-04-08 22:03:07 -03:00
Jesse Smith a4508479f5 Updated shutdown to check if time has lapsed when we did not
notice. For example if the computer was in sleep mode pending
a shutdown. The shutdown command now notices time has past
and adjusts its countdown clock to compensate. Accurate
to the nearest minute.
Closes Savannah bug #36279
2018-04-04 23:12:25 -03:00
Jesse Smith d9b6475d85 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.

Thanks to David Binderman for pointing out the above three issues.
2018-03-30 22:15:04 -03:00
Jesse Smith e02e001f7a Updated changelog in preparation for release. 2018-03-27 20:47:49 -03:00
Jesse Smith a436cdc993 Merge branch 'mountpoint' 2018-03-27 20:33:52 -03:00
Jesse Smith 4f7a210940 Merge branch 'speedup' 2018-03-27 20:33:34 -03:00
Jesse Smith 21a982f36a Fix merge issue. 2018-03-27 20:33:16 -03:00
Jesse Smith c0f5983562 Merge branch 'beta' 2018-03-27 20:31:48 -03:00
Jesse Smith 9bbabbfda4 Updated manual page to include -p flag description. 2018-03-08 12:32:50 -04:00
Jesse Smith 8c8172349e Updated mountpoint to search for circular mount points when using
the -p parameter. This works around mountpoint not recognizing
circular mounts where /a/b/c/d and /a/b are the same location
(ie the same device and same inode).
Closes Savannah bug #37114.
2018-03-07 16:25:53 -04:00
Jesse Smith a8ef2a24c5 Updated changelog. 2018-03-07 13:59:51 -04:00
Jesse Smith a3f38afc34 Updated documentation and install instructions. Refreshed copyright notice. 2018-02-27 17:28:10 -04:00
Jesse Smith d6f9d19745 Updated Makefile to sign and upload packages created
from the git repository when we use "make upload".
2018-02-23 18:08:34 -04:00
Jesse Smith bdd2bc12e3 Updated documentation to be more relevant to modern (2018)
systems.
Updated copyright notice.
Fixed start-stop-daemon.c so that it will compile.
Updated install instructions.
Removed references to "obsolete" directory which, fittingly,
no longer exists.
2018-02-23 17:34:30 -04:00
Jesse Smith 2e1f87635e Removed extra sleep() calls from shutting down process since we use
sync() anyway to pause and make sure data is written out to disk.
2018-02-22 21:07:51 -04:00
Jesse Smith 2b651b469e Fixed Clang compiler warning when calling sprintf() with
variable number of data parameters.
2018-02-21 18:05:58 -04:00