| <?xml version="1.0" encoding="iso-8859-15"?> <!-- -*-html-helper-*- --> |
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> |
| <html xmlns="http://www.w3.org/1999/xhtml"> |
| |
| <head> |
| <title>libdaemon @PACKAGE_VERSION@</title> |
| <link rel="stylesheet" type="text/css" href="style.css" /> |
| </head> |
| |
| <body> |
| <h1><a name="top">libdaemon @PACKAGE_VERSION@</a></h1> |
| |
| <p><i>Copyright 2003-2009 Lennart Poettering <@PACKAGE_BUGREPORT@></i></p> |
| |
| <ul class="toc"> |
| <li><a href="#license">License</a></li> |
| <li><a href="#news">News</a></li> |
| <li><a href="#overview">Overview</a></li> |
| <li><a href="#status">Current Status</a></li> |
| <li><a href="#documentation">Documentation</a></li> |
| <li><a href="#requirements">Requirements</a></li> |
| <li><a href="#installation">Installation</a></li> |
| <li><a href="#acks">Acknowledgements</a></li> |
| <li><a href="#download">Download</a></li> |
| </ul> |
| |
| <h2><a name="license">License</a></h2> |
| |
| <p>This program is free software; you can redistribute it and/or |
| modify it under the terms of the GNU Lesser General Public License as |
| published by the Free Software Foundation, either version 2.1 of the |
| License, or (at your option) any later version.</p> |
| |
| <p>This program is distributed in the hope that it will be useful, but |
| WITHOUT ANY WARRANTY; without even the implied warranty of |
| MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| Lesser General Public License for more details.</p> |
| |
| <h2><a name="news">News</a></h2> |
| |
| <div class="news-date">Sun Oct 18 2009: </div> |
| <p class="news-text"><a href="@PACKAGE_URL@libdaemon-0.14.tar.gz">Version 0.14</a> released; changes include: add <tt>daemon_set_verbosity()</tt> call; numerous updates</p> |
| |
| <div class="news-date">Tue Jul 29 2008: </div> |
| <p class="news-text"><a href="@PACKAGE_URL@libdaemon-0.13.tar.gz">Version 0.13</a> released; changes include: add <tt>daemon_reset_sigs()</tt> and <tt>daemon_unblock_sigs()</tt> calls for resetting signal handlers to sensible states; improve error handling.</p> |
| |
| <div class="news-date">Tue Jul 10 2007: </div> |
| <p class="news-text"><a href="@PACKAGE_URL@libdaemon-0.12.tar.gz">Version 0.12</a> released; changes include: make <tt>daemon_close_all()</tt> actually work properly.</p> |
| |
| <div class="news-date">Fri Jun 22 2007: </div> |
| <p class="news-text"><a href="@PACKAGE_URL@libdaemon-0.11.tar.gz">Version 0.11</a> released; changes include: automatically detect whether lynx is installed; properly set <tt>errno</tt> on every error condition; add new function <tt>daemon_close_all()</tt> to close all open file descriptors except a given set; add <tt>daemon_logv()</tt>, which is identical to <tt>daemon_log()</tt>, but takes a <tt>va_list</tt> argument; add <tt>daemon_execv()</tt> in similar style; other fixes</p> |
| |
| <div class="news-date">Thu Nov 24 2005: </div> |
| <p class="news-text"><a href="@PACKAGE_URL@libdaemon-0.10.tar.gz">Version 0.10</a> released; changes include: make logging compatible with daemons running in a <tt>chroot()</tt> environment</p> |
| |
| <div class="news-date">Fri Nov 18 2005: </div> |
| <p class="news-text"><a href="@PACKAGE_URL@libdaemon-0.9.tar.gz">Version 0.9</a> released; changes include: portability (FreeBSD, NetBSD, OpenBSD, Darwin, Solaris, Cygwin); some minor header file cleanups; fix access mode of PID files; other cleanups; license change from GPL to LGPL</p> |
| |
| <div class="news-date">Sat Jun 4 2005: </div> |
| <p class="news-text"><a href="@PACKAGE_URL@libdaemon-0.8.tar.gz">Version 0.8</a> released; changes include: proper PID file locking</p> |
| |
| <div class="news-date">Sat Dec 18 2004: </div> |
| <p class="news-text"><a href="@PACKAGE_URL@libdaemon-0.7.tar.gz">Version 0.7</a> released; changes include: minor cleanups; C++ compatibility; gcc 2.95 compatiblity</p> |
| |
| <div class="news-date">Wed Apr 7 2004: </div> |
| <p class="news-text"><a href="@PACKAGE_URL@libdaemon-0.6.tar.gz">Version 0.6</a> released; changes include: backgrounding fixes, minor other stuff</p> |
| |
| <div class="news-date">Tue Feb 10 2004: </div> |
| <p class="news-text"><a href="@PACKAGE_URL@libdaemon-0.5.tar.gz">Version 0.5</a> released; changes include: signal handling fix, forking fix</p> |
| |
| <div class="news-date">Sat Jan 10 2004: </div> |
| <p class="news-text"><a href="@PACKAGE_URL@libdaemon-0.4.tar.gz">Version 0.4</a> released; changes include: new module <tt>dexec.c</tt>; added <tt>pkg-config</tt> support.</p> |
| |
| <div class="news-date">Mon Oct 20 2003: </div> |
| <p class="news-text"><a href="@PACKAGE_URL@libdaemon-0.3.tar.gz">Version 0.3</a> released; changes include: documentation update, build fixes, RPM spec file added, added new function int <tt>daemon_pid_file_kill_wait()</tt>.</p> |
| |
| <div class="news-date">Thu July 10 2003: </div> |
| <p class="news-text"><a href="@PACKAGE_URL@libdaemon-0.2.tar.gz">Version 0.2</a> released; changes include: ugly umask error fix, documentation update</p> |
| |
| <div class="news-date">Mon July 7 2003: </div> |
| <p class="news-text"><a href="@PACKAGE_URL@libdaemon-0.1.tar.gz">Version 0.1</a> released</p> |
| |
| <h2><a name="overview">Overview</a></h2> |
| |
| <p><tt>libdaemon</tt> is a lightweight C library that eases the writing of UNIX |
| daemons. It consists of the following parts:</p> |
| |
| <ul> |
| <li>A wrapper around <tt>fork()</tt> which does the correct |
| daemonization procedure of a process</li> |
| |
| <li>A wrapper around <tt>syslog()</tt> for simpler and compatible |
| log output to Syslog or STDERR</li> |
| |
| <li>An API for writing PID files</li> |
| |
| <li>An API for serializing UNIX signals into a pipe for |
| usage with <tt>select()</tt> or <tt>poll()</tt></li> |
| |
| <li>An API for running subprocesses with STDOUT and STDERR redirected to syslog.</li> |
| </ul> |
| |
| <p>APIs like these are used in most daemon software |
| available. It is not that simple to get it done right and code |
| duplication is not a goal.</p> |
| |
| <p><tt>libdaemon</tt> is currently used by <a |
| href="http://0pointer.de/lennart/projects/ifplugd/"><tt>ifplugd</tt></a>, |
| <a |
| href="http://freedesktop.org/Software/Avahi">Avahi</a>, |
| <a |
| href="http://0pointer.de/lennart/projects/ivam2/"><tt>ivam2</tt></a>, |
| <a href="http://gentoo.ovibes.net/nautilus-share/mediawiki-1.4.4/index.php/Accueil">Nautilus-Share</a> |
| and <a |
| href="http://0pointer.de/lennart/projects/aeswepd/"><tt>aeswepd</tt></a>.</p> |
| |
| <h2><a name="status">Current Status</a></h2> |
| |
| <p>Version @PACKAGE_VERSION@ is feature complete.</p> |
| |
| <h2><a name="documentation">Documentation</a></h2> |
| |
| <p>An extensive API reference is <a |
| href="reference/html/index.html">available</a></p> |
| |
| <h2><a name="requirements">Requirements</a></h2> |
| |
| <p><tt>libdaemon</tt> was developed and tested on Debian GNU/Linux |
| "testing" from July 2003, it should work on most other Linux |
| distributions (and some Unix versions) since it uses GNU Autoconf and |
| GNU libtool for source code configuration and shared library |
| management.</p> |
| |
| <p><tt>libdaemon</tt> is known to work on modern Linux systems, FreeBSD, NetBSD, OpenBSD, Darwin, Solaris and Windows/Cygwin.</p> |
| |
| <h2><a name="installation">Installation</a></h2> |
| |
| <p>As this package is made with the GNU autotools you should run |
| <tt>./configure</tt> inside the distribution directory for configuring |
| the source tree. After that you should run <tt>make</tt> for |
| compilation and <tt>make install</tt> (as root) for installation of |
| <tt>libdaemon</tt>.</p> |
| |
| <p>Please use <tt>gmake</tt> instead of traditional <tt>make</tt> for compilation on non-Linux systems.</p> |
| |
| <h2><a name="acks">Acknowledgements</a></h2> |
| |
| <p>Sebastien Estienne, for a lot of portability work.</p> |
| |
| <h2><a name="download">Download</a></h2> |
| |
| <p>The newest release is always available from <a href="@PACKAGE_URL@">@PACKAGE_URL@</a></p> |
| |
| <p>Get <tt>libdaemon</tt>'s development sources from the <a href="http://git.or.cz/">GIT</a> <a href="git://git.0pointer.de/libdaemon">repository</a> (<a href="http://git.0pointer.de/?p=libdaemon.git">gitweb</a>): </p> |
| |
| <pre>git clone git://git.0pointer.de/libdaemon</pre> |
| |
| <p>You may find an up to date Debian package of <tt>libdaemon</tt> on the <a href="http://packages.debian.org/libdaemon0">Debian package repository</a>.</p> |
| |
| <p>If you want to be notified whenever I release a new version of this software use the subscription feature of <a href="http://freshmeat.net/projects/libdaemon/">Freshmeat</a>.</p> |
| |
| <hr/> |
| <address class="grey">Lennart Poettering <@PACKAGE_BUGREPORT@>, October 2009</address> |
| |
| </body> |
| </html> |