aboutsummaryrefslogtreecommitdiff
path: root/init/init.c
AgeCommit message (Collapse)Author
2007-01-21Introduce FEATURE_EXEC_PREFER_APPLETS = "re-execute our ownDenis Vlasenko
executable if we asked to exec someting with argv[0] == known_applet" Use it in init. Also respect PATH in init, remove explicit "/sbin" etc from exec. Patch by Gabriel L. Somlo <somlo@cmu.edu>
2007-01-03convert calloc to xzallocDenis Vlasenko
fix sleep-on-die option
2006-12-26style fixesDenis Vlasenko
last xcalloc replaced by xzalloc
2006-12-21introduce LONE_CHAR (optimized strcmp with one-char string)Denis Vlasenko
2006-10-27reshuffle libbb.h contents so that order of decls makes senseDenis Vlasenko
Found bad typo in largefile support :)
2006-10-20message string changes, mostly for consistency, also -32 bytes in .rodataDenis Vlasenko
2006-10-14add open_read_close() and similar stuffDenis Vlasenko
2006-10-03bb_applet_name -> applet_nameDenis Vlasenko
2006-09-27usage.h: remove ugly tricks. We have USE_FEATURE_xxx now.Denis Vlasenko
Few bugs are now exposed...
2006-08-29Svn 16007 broke the build under gcc 4.0.3. This fixes up some of the damageRob Landley
(the e2fsprogs directory is too twisty and evil to easily fix, but I plan to rewrite it anyway so I'll just bump that up in priority a bit).
2006-07-16Cleaup read() and write() variants, plus a couple of new functions likeRob Landley
xlseek and fdlength() for the new mkswap.
2006-07-09Patch from Shaun Jackman to set environment variable RUNLEVEL equal toRob Landley
init's argv[1], so if you append "single" to your kernel command line and the kernel doesn't parse it, RUNLELEL=single. Plus a few unrelated header cleanups while I was in the area...
2006-07-01More removal of "#if 0" content."Robert P. J. Day"
2006-06-02- fix CONFIG_DEBUG_INIT compile failureBernhard Reutner-Fischer
2006-06-01make halt and poweroff messages more accurate (i.e., claim "we're about to",Paul Fox
rather than "it's done", and combine with reboot handler to save space.
2006-05-30- consolidate "Sending SIG%s to all processes"; untested..Bernhard Reutner-Fischer
text data bss dec hex filename 5379 32 8 5419 152b init/init.o.oorig 5358 32 8 5398 1516 init/init.o
2006-05-30- remove useless variable "status" from init_main.Bernhard Reutner-Fischer
http://www.opengroup.org/onlinepubs/009695399/functions/waitpid.html suggests that we need not specify a status if we don't want, and we don't. "If wait() or waitpid() return because the status of a child process is available, these functions shall return a value equal to the process ID of the child process. In this case, if the value of the argument stat_loc is not a null pointer, information shall be stored in the location pointed to by stat_loc. " text data bss dec hex filename 5391 32 8 5431 1537 init/init.o.06 5379 32 8 5419 152b init/init.o
2006-05-30- use config_buffer for message()Bernhard Reutner-Fischer
- add second argument to waitfor(*action,pid); if action==NULL then use pid tor wait for. If an action was given, we wait for the action to finish just as before. In run() remove second and third occurance of the same functionality the waitfor() call now provides. Adjust the former only caller of waitfor accordingly. PS: Not using waitfor but creating a second function used a few bytes more than simply extending and reusing waitfor. text data bss dec hex filename 5426 32 8 5466 155a init/init.o.orig 5391 32 8 5431 1537 init/init.o
2006-05-29- DEBUG_INIT -> config CONFIG_DEBUG_INITBernhard Reutner-Fischer
2006-05-29- landley, remove this?Bernhard Reutner-Fischer
2006-05-29- set_term() doesn't need an argument. (Like r15220 this is just compile-tested)Bernhard Reutner-Fischer
text data bss dec hex filename 5432 32 8 5472 1560 init/init.o.r15220 5426 32 8 5466 155a init/init.o
2006-05-29- move common code into new open_new_terminal() function;Bernhard Reutner-Fischer
text data bss dec hex filename 864434 10244 645892 1520570 1733ba busybox_old 864386 10244 645892 1520522 17338a busybox_unstripped add/remove: 1/0 grow/shrink: 0/2 up/down: 92/-143 (-51) function old new delta open_new_terminal - 92 +92 exec_signal 345 276 -69 run 1527 1453 -74 Again, 48 != 51 so let's trust the former..
2006-05-27Consolidate #include <sys/time.h> so libbb.h does it.Rob Landley
2006-05-19- remove emacs layout block as suggested by Robert P.J. DayBernhard Reutner-Fischer
- use shorter boilerplate while at it
2006-05-13fix whitespaceMike Frysinger
2006-04-29just include fcntl.h not sys/fcntl.hMike Frysinger
2006-03-27More from Jan Kiszka: this is a port of the latest sysv-init SELinux patch.Rob Landley
It makes busybox invoke the libselinux library function to load the binary policy right at system start-up. It was successfully tested on a mini-SELinux system. Note: requires recent libselinux. I'm using 1.28.
2006-03-22Patch from Rogelio Serrano to defer checking whether the tty exists untilRob Landley
we actually need to spawn something on it.
2006-03-10Patch from Denis Vlasenko turning static const int (which gets emitted intoRob Landley
the busybox binary) into enums (which don't).
2006-03-06Robert P. Day removed 8 gazillion occurrences of "extern" on functionRob Landley
definitions. (That should only be on prototypes.)
2006-02-01removed anoinig `unused' warnings"Vladimir N. Oleynik"
2006-01-30Re-add initrd support, unify halt/reboot/poweroff, add -n and -f options.Rob Landley
2006-01-25just whitespaceTim Riker
2006-01-22The whole "init is sometimes pid 3" thing is silly. Init is pid 1, anythingRob Landley
else is a kernel bug. Both 2.4 and 2.6 should get this right now. This should fix the bug IraquiGeek is seeing (although killall still needs to be fixed.)
2005-10-12usage bb_dev_null"Vladimir N. Oleynik"
2005-09-29don't out \r to syslog"Vladimir N. Oleynik"
2005-08-30Why have a separate CONFIG_INIT_SWAPON when we already have CONFIG_SWAPONOFF?Rob Landley
2005-08-30Bug system entry #1 says that when busybox doesn't have swapoff,Rob Landley
init shouldn't call swapoff.
2005-08-01applying patch from bug 24:Paul Fox
0000024 03-16-05 patch: allow init to set controlling tty
2005-07-06move var decls around a little to help gcc make smaller codeMike Frysinger
2005-07-062005-07-04 Shaun Jackman <sjackman@gmail.com>Mike Frysinger
* init/init.c: Do not include sys/mount.h. (message): Use O_NONBLOCK instead of O_NDELAY. (console_init): Ditto.
2005-07-062005-07-05 Shaun Jackman <sjackman@gmail.com>Mike Frysinger
* init/Config.in (CONFIG_FEATURE_INIT_SWAPON): New option. * init/init.c (check_memory): Disable the swapon feature unless CONFIG_FEATURE_INIT_SWAPON is defined.
2005-07-05rename log var to log_console so we dont override internal gcc/glibc log funcMike Frysinger
2005-04-16jfb2 writes in Bug 119:Mike Frysinger
The init applet will restart (re-exec) itsself when it receives a SIGHUP. However, just before it enters its main loop, it resets SIGHUP to either re-load the inittab (or ignore it if no inittab is used). Thus preventing the re-exec option from being triggerable. This patch adds a signal handler for SIGQUIT for init that always causes init to re-exec itsself (along with killing anything else that might be still running).
2004-10-08Hiroshi Ito writes:Eric Andersen
Hello, all. Busybox init does not handle removed inittab entry correctly. # I'm sorry about my poor english, but you can find # what I would like to say from patch, isn't it? even if you apply this path, when yoy try to change a command line option in inittab, you have to do following steps. 1. remove old line from initrd 2. send HUP signal to init 3. kill old proces which is invoked from init. 4. append new line to inittab 5. send HUP signal to init, again patch is against current CVS + last patch witch I send it last.
2004-10-08Hiroshi Ito writes:Eric Andersen
"kill -HUP 1" reloads inittab, and when I append one line to inittab and send HUP signal two times, It will starts 2 process. patch against current CVS is attached.
2004-08-16Do not use vfork, as init is not vfork safe. Do not allowEric Andersen
askfirst when mmuless.
2004-06-22Patch from Bastian Blank:Eric Andersen
On Sat, Jun 19, 2004 at 10:57:37PM +0200, Bastian Blank wrote: > The following patch changes klogd to use openlog/syslog themself > instead of calling syslog_msg which always calls the triple > openlog/syslog/closelog. Updated patch: get rid of syslog_msg entirely. Request from Erik Andersen. Bastian
2004-04-12Silly meEric Andersen
2004-04-12As reported by Quy Tonthat, init has problems with inittab's thatEric Andersen
contain only actions sysinit/wait/once. It does not clean up zombies in that case.