Files
finit/CHANGELOG.md
T
Joachim Nilsson a091b69dd6 Another try ...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2015-01-18 23:45:16 +01:00

9.1 KiB

Change Log

All notable changes to the project are documented in this file.

1.11 - UNRELEASED

The libuEv release.

Changes

  • Now using the asynchronous libuEv library for handling all events: signals, timers and listening to sockets or file descriptors.
  • Rename NEWS.md --> CHANGELOG.md, with symlinks for make install
  • Attempt to align with http://keepachangelog.com/ for this file.

Fixes

  • Fix bug with finit dying when no tty is defined in finit.conf, now even the fallback shell has control over its TTY, see fix in GIT commit [dea3ae8] for this.

1.10 - 2014-11-27

Major bug fix release.

Changes

  • Project now relies on static code analysis from Coverity, so this release contains many serious bug fixes.
  • Convert to use Markdown for README, NEWS and TODO.
  • Serious update to README and slight pruning of finished TODO items.

Fixes

  • Fix serious file descriptor and memory leaks in the following functions. In particular the leaks in run_interactive() are very serious since that function is called every time a service is started and/or restarted! For details, see the GIT log:
    • helpers.c:run()
    • helpers.c:run_interactive()
    • helpers.c:set_hostname()
    • helpers.c:procname_kill()
  • svc.c:svc_start(): Fix swapped arguments to dup2() and add close(fd) to prevent descriptor leak.
  • svc.c:svc_start(): Fix out of bounds write to local stack variable, wrote off-by-one outside array.
  • Several added checks for return values to mknod(), mkdir(), remove(), etc.

1.9 - 2014-04-21

Changes

  • Add support for an include directive to .conf files
  • Fallback to /bin/sh if user forgets tty setting
  • Initial support for restarting lost services during norespwan

Fixes

  • Bug fixes, code cleanup
  • Handle SIGHUP from service callback properly when switching runlevel
  • Misc. major (memleak) and minor fixes and additions to libite/lite.h

1.8 - 2013-06-07

Changes

  • Support for runlevels, with a bootstrap runlevel 'S'
  • Support for saving previous and current runlevel to UTMP
  • Support for new finit.conf commands: run, task, and runlevel
  • Support for tty and console commands in finit.conf, like services but for launching multiple getty logins
  • New tty plugin to monitor TTYs coming and going, like USB TTYs

Fixes

  • Bugfixes to libite

1.7 - 2012-10-08

Changes

  • Show __FILE__ in _d() debug messages, useful for plugins with similarily named callbacks. Also, only in debug mode anyway
  • Make sure to cleanup recorded PID when a service is lost. Required by service plugins for their callbacks to work.
  • Only clear screen when in verbose mode. Maybe this should be removed altogether?

Fixes

  • Bugfix: Do not free() static string in finit.conf parser

1.6 - 2012-10-06

Changes

  • Skip . and .. in plugin loader and display error when failing to load plugins
  • Support for overriding /etc/finit.d with runparts DIR in finit.conf
  • Revoke support for starting services not starting with a slash.
  • Prevent endless restart of non-existing services in finit.conf
  • Support for sysvinit style startstop scripts in /etc/finit.d

Fixes

  • Minor fix to alsa-utils plugin to silence on non-existing cards

1.5 - 2012-10-03

Changes

  • Use bootmisc plugin to setup standard FHS 2.3 structure in /var
  • Added FLOG_WARN() syslog macro, for plugins
  • Add plugin dependency resolver. Checks plugin_t for .depends

1.4 - 2012-10-02

Changes

  • Start refactoring helpers.c into a libite.so (-lite). This means other user space applications/daemons can make use of the neat toolbox available in finit
  • Use short-form -s/-w -u to work with BusyBox hwclock as well
  • Use RTLD_GLOBAL flag to tell dynamic loader to load dependent .so files as well. Lets other plugins use global symbols.
  • Greatly simplify svc hook for external plugins and cleanup plugin API.
  • And more ... see the GIT log for more details.

Fixes

  • Fix I/O plugin watcher and load plugins earlier for a new hook

1.3 - 2012-09-28

Changes

  • Cleanup public plugin API a bit and add new pid/pidfile funcs
  • Add plugin hook to end of service startup
  • Remove finit.h from svc.h, plugins should not need this.
  • Move utility macros etc. to helpers.h
  • Make finit.h daemon internal, only
  • Move defines of FIFO, conf and rcS.d to Makefile => correct paths
  • Add support for installing required headers in system include dir
  • Better support for distributions and packagers with install-exec, install-data, and install-dev targets in Makefile. Useful if you want to call targets with different $DESTDIR!
  • Makefile fixes for installation, paths encoded wrong
  • Strip binaries + .so files, support for $(CROSS) toolchain strip
  • Default install is now to /sbin/finit and /usr/
  • Note change in $PLUGIN_DIR environemnt variable to $plugindir

1.2 - 2012-09-27

Changes

  • Update README with section on building and enviroment variables

Fixes

  • Fix installation paths encoded in finit binary

1.1 - 2012-09-27

Changes

  • Rename signal.[ch]-->sig.[ch] to avoid name clash w/ system headers

Fixes

  • Build fixes for ARM eabi/uClibc

1.0 - 2012-09-26

Changes

  • New plugin based system for all odd extensions
  • New service monitor that restarts services if they die
  • New maintainer at GitHub http://github.com/troglobit/finit
  • Add standard LICENSE and AUTHORS files
  • New focus: embedded systems and small headless servers

0.6 - 2010-06-14

  • Don't start consolekit manually, dbus starts it (rtp)
  • Unmount all filesystems before rebooting
  • Disable USE_VAR_RUN_RESOLVCONF for Mandriva
  • Unset terminal type in Mandriva before running X
  • Remove extra sleep in finit-alt before calling services.sh (caio)

0.5 - 2008-08-21

  • Add option to start dbus and consolekit before the X server
  • finit-alt listens to /dev/initctl to work with reboot(8) (smurfy)
  • Write runlevel to utmp, needed by Printerdrake (Pascal Terjan)
  • Fix ownership of /var/run/utmp (reported by Pascal Terjan)
  • Remove obsolete code to load AGP drivers
  • Conditional build of /etc/resolveconf/run support
  • Add support to /var/run/resolvconf in Mandriva (blino)

0.4 - 2008-05-16

  • Default username for finit-alt configurable in Makefile
  • Create loopback device node in finit-alt (for squashfs)
  • Add option to use built-in run-parts instead of /bin/run-parts
  • Ignore signal instead of setting to an empty handler (Metalshark)
  • Handle pam_console permissions in finit-alt for Mandriva
  • Add services.sh example and nash-hotplug patch for Mandriva
  • Mount /proc/bus/usb in Mandriva
  • Add runtime debug to finit-alt if finit_debug parameter is specified
  • Read configuration from /etc/finit.conf
  • Run getty with openvt on the virtual terminal

0.3 - 2008-02-23

  • Change poweroff method to reboot(RB_POWER_OFF) (Metalshark)
  • Remove duplicate unionctl() reimplementation error
  • Fix string termination in path creation
  • Mount /var/lock and /var/run as tmpfs

0.2 - 2008-02-19

  • Replace system("touch") with touch() in finit-mod (Metalshark)
  • Disable NO_HCTOSYS by default to match stock Eeepc kernel
  • Drop system("rm -f") to clean /tmp, its a fresh mounted tmpfs
  • Write ACPI sleep state to /sys/power/state instead of /proc/acpi/sleep (Metalshark)
  • Use direct calls to set loopback instead of system("ifconfig")
  • Replace system("cat") and system("dd") with C implementation
  • Moved finit-mod and finit-alt helpers to helpers.c
  • Replace system("echo;cat") to draw shutdown splash with C calls

0.1 - 2008-02-14

  • Initial release