41 Commits

Author SHA1 Message Date
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
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
1d24d576f1 Add fscanf checks to init.c to warn us if calls fail.
Mostly to clean up compiler warnings.
2018-02-20 19:38:40 -04:00
Jesse Smith
f52d703c8e Updated bootlogd and init to better compile and run on GNU/kFreeBSD. 2018-02-20 19:30:46 -04:00
Jesse Smith
80dbcf3de3 Moved the named communication pipe from /dev/initctl to /run/initctl. This
patch was supplied by Robert Millan from Debian. FreeBSD apparently does not
like named piped in /dev, so we move it to /run for better cross-platform
compatibility.
2018-02-20 19:29:08 -04:00
Jesse Smith
6e3e87bf32 Patch to automatically spawn agetty on kernel consoles
The feature is useful for developers and admins that occasionally need
to boot with e.g. console=ttyS0.
The built in default can be overridden via inittab for each device. An
entry like "S0::off:" turns off the getty on ttyS0.
2018-02-20 19:18:58 -04:00
Petter Reinholdtsen
ca4561271e Check exit code from dup() in spawn() and log error if it fail.
Patch from Michał Kulling.
2014-02-10 22:47:27 +00:00
Petter Reinholdtsen
d53cccb542 Use narrowly scoped file descriptor for handling opened TTY in
spawn().  Patch from Michał Kulling.
2014-02-10 22:44:15 +00:00
Petter Reinholdtsen
a05987e281 Document length limit for the process field in the inittab. Patch
from Johannes Truschnigg and Debian.
2014-02-07 17:41:58 +00:00
Petter Reinholdtsen
3f08c42b06 Make sure to report an error if chdir(/) fail. 2014-02-07 13:45:06 +00:00
Petter Reinholdtsen
cc3a4e2f9e Avoid reusing open file descriptor to make it easier to pinpoint Coverity CID 1164479 resource leak. 2014-02-07 09:50:14 +00:00
Petter Reinholdtsen
992c7a70d7 No use checkinf if env is true in the branch where it is false (Coverity CID 1164462). 2014-01-28 22:29:30 +00:00
Petter Reinholdtsen
f11cdf9554 Adjust included headers to be compatible with the musl C library. Patch from Matias A. Fonzo and Dragora. 2014-01-26 22:00:42 +00:00
Petter Reinholdtsen
1c9808ec42 Close open file descriptor if the version is wrong (Coverity CID 1164481). 2014-01-26 09:58:04 +00:00
Petter Reinholdtsen
568c01bbb5 Document a fall through case block (Coverity CID 1164467). 2014-01-26 09:41:51 +00:00
Petter Reinholdtsen
571c45f3e6 Improve message printed when signaling processes to stop. Patch from Matias A. Fonzo at the dragora project. 2014-01-25 21:20:22 +00:00
Werner Fink
ec06765756 * Do not forget room for last NULL of new environment (was local bug 35866) 2012-03-19 12:50:36 +00:00
Werner Fink
d1a0609ab0 * Allow init to delte extra environment variables (was local bug
#35858)
* Avoid that init double environment variables for its childs
  (was local bug #35855)
2012-03-16 15:58:21 +00:00
Werner Fink
2f904f7848 fix minor typo 2011-11-14 08:53:05 +00:00
Werner Fink
d9122565a0 * Fix counting message lines in wall. Patch from Petr Lautrbach.
* Fix bad printf conversion specifier in wall. Patch from Sébastien Luttringer.
* Add patches from Openwall project. Thanks goes to Solar Designer.
2011-03-15 13:16:55 +00:00
Werner Fink
5114500187 Add fix for Debian bug #580272 2010-05-17 09:44:34 +00:00
Petter Reinholdtsen
cdb70c3a56 Only set the VSWTC field for termios in init if it is available, to get the source building on FreeBSD. 2010-04-27 19:51:01 +00:00
Petter Reinholdtsen
9abf8cc828 The next release will be 2.89. 2010-04-27 14:33:32 +00:00
Werner Fink
d886c94c9f * Correct fix for Debian bug #547073: use IUTF8 flag if defined
and if already set to make sure the utf-8 flag is not cleared
  from the tty. Patch from Samuel Thibault.
2010-04-27 12:32:52 +00:00
Werner Fink
080abb9f99 * Set version in init.c : 2.88 2010-04-12 08:34:38 +00:00
Petter Reinholdtsen
b6ecd1eadc Incude definition for MNT_DETACH which is missing in older GNU libc headers. 2010-04-11 07:42:27 +00:00
Petter Reinholdtsen
66299c783d Add compatibility code to handle old path /etc/powerstatus for a while. 2010-04-11 07:41:25 +00:00
Werner Fink
8d4557c16b * Remove PAM session start part from init as sulogin do not use
and will not use a PAM conv() function.  The current sulogin
   is able to handle DES as well as MD5, SHA, and Blowfish encrypted
   passwords due using getpwnam(3).
 * Enable the sulogin fallback password check to handle  MD5, SHA, and
   Blowfish encrypted passwords in case of getpwnam(3) fails.
2010-04-01 08:34:05 +00:00
Werner Fink
b2fec03199 * Test out PAM support, extend PAM support by providing environment
is specified by /etc/pam.d/init
 * Move utmp/wtmp before the execvp() in spawn() to be sure to
   use the correct pid even on a controlling tty
 * Remaining problem is that the pid of the second fork() for
   getting a controlling tty isn't that reported by spawn()
 * Re-enable writting utmp/wtmp for boot scripts
 * Provide a simply /etc/pam.d/init as without it will not work (sigh!)
2010-03-26 16:31:05 +00:00
Werner Fink
f69ea1f550 * Add fix for Debian bug #536574 -- Can be enabled by -DACCTON_OFF
* Add helper program fstab-decode to make it easier to handle
   /etc/mtab content. Patch by Miloslav Trmac and Fedora.
 * Add fix for Debian bug #335023 - Make sure TERM is set on FreeBSD.
 * Add fix for Debian bug #374038 - Make it clear that shutdown -c can
   only cancel a waiting shutdown, not an active one.
 * Add not to pidof manual page about the use of readlink(2). Patch by
   Bill Nottingham and Fedora.
 * Add changes for Debian bug #68621 - Add PAM support for programs spawned
   by init on the console like sulogin. Based on patch by Topi Miettinen.
2010-03-23 14:37:01 +00:00
Werner Fink
210e6a26a6 * Fix some minor problems
* init - enable is_selinux_enabled() to detect selinuxfs
2010-03-19 16:53:57 +00:00
Werner Fink
d80bb06fec * init - avoid compiler warnings
* init - initialize console by using the macros from ttydefaults.h
  * init - add the possiblity to ignore further interrupts from keyboard
  * init - add the possiblity to set sane terminal line settings
2010-02-26 13:45:49 +00:00
Werner Fink
13de2e9e05 Add the comment from Andrea Arcangeli about the correct
place of setting the default childhandler within spawn().
Make sure that newline is printed out for last(1) even
if an utmp record entry is truncated.
Check if utmp not only exists but is writable and delay
writing out of the utmp runlevel record if utmp is not writable.
Be able to find libcrypt also on 64 bit based architectures.
2009-11-24 10:03:19 +00:00
Petter Reinholdtsen
093ad0026b Hide unused variable when not building with WITH_SELINUX. 2009-11-22 21:53:37 +00:00
Petter Reinholdtsen
de91f43eb8 Fix race condition in utmp writing. Patch from Gil Kloepfer via
Mike Frysinger and Gentoo.
2009-11-22 21:03:03 +00:00
Petter Reinholdtsen
0088601eef Change tty handling in init to make sure the UTF-8 flag is not cleared on boot. Patch from Samuel Thibault. 2009-11-14 21:28:32 +00:00
Petter Reinholdtsen
6d894fd45b Add casts to get rid of compiler warning about signed/unsigned issues. 2009-11-14 21:27:13 +00:00
Petter Reinholdtsen
8caa4e87f5 Fix minor bug in optimizing of argument parsing. Based on report from jakemus on freshmeat. 2009-11-14 21:12:00 +00:00
Petter Reinholdtsen
cd2937d3b7 Revert change from Fedora/RedHat where the now obsolete command
INIT_CMD_CHANGECONS was introduced.  Based on feedback and patch
from Bill Nottingham.
2009-11-14 21:00:43 +00:00
Petter Reinholdtsen
7d5009103e Next version will be 2.88. 2009-11-14 20:52:17 +00:00
Petter Reinholdtsen
2fe47a3c9f Drop hurd specific dependency on libc0.3 (>= 2.3.2.ds1-12). It is
no longer needed according to Michael Bunk.  Patch from Michael
Biebl.
2009-09-10 08:28:49 +00:00