| libdaemon 0.14 |
| |
| Copyright 2003-2009 Lennart Poettering <mzqnrzba (at) 0pointer (dot) |
| de> |
| * [1]License |
| * [2]News |
| * [3]Overview |
| * [4]Current Status |
| * [5]Documentation |
| * [6]Requirements |
| * [7]Installation |
| * [8]Acknowledgements |
| * [9]Download |
| |
| License |
| |
| 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. |
| |
| 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. |
| |
| News |
| |
| Sun Oct 18 2009: |
| |
| [10]Version 0.14 released; changes include: add daemon_set_verbosity() |
| call; numerous updates |
| |
| Tue Jul 29 2008: |
| |
| [11]Version 0.13 released; changes include: add daemon_reset_sigs() and |
| daemon_unblock_sigs() calls for resetting signal handlers to sensible |
| states; improve error handling. |
| |
| Tue Jul 10 2007: |
| |
| [12]Version 0.12 released; changes include: make daemon_close_all() |
| actually work properly. |
| |
| Fri Jun 22 2007: |
| |
| [13]Version 0.11 released; changes include: automatically detect |
| whether lynx is installed; properly set errno on every error condition; |
| add new function daemon_close_all() to close all open file descriptors |
| except a given set; add daemon_logv(), which is identical to |
| daemon_log(), but takes a va_list argument; add daemon_execv() in |
| similar style; other fixes |
| |
| Thu Nov 24 2005: |
| |
| [14]Version 0.10 released; changes include: make logging compatible |
| with daemons running in a chroot() environment |
| |
| Fri Nov 18 2005: |
| |
| [15]Version 0.9 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 |
| |
| Sat Jun 4 2005: |
| |
| [16]Version 0.8 released; changes include: proper PID file locking |
| |
| Sat Dec 18 2004: |
| |
| [17]Version 0.7 released; changes include: minor cleanups; C++ |
| compatibility; gcc 2.95 compatiblity |
| |
| Wed Apr 7 2004: |
| |
| [18]Version 0.6 released; changes include: backgrounding fixes, minor |
| other stuff |
| |
| Tue Feb 10 2004: |
| |
| [19]Version 0.5 released; changes include: signal handling fix, forking |
| fix |
| |
| Sat Jan 10 2004: |
| |
| [20]Version 0.4 released; changes include: new module dexec.c; added |
| pkg-config support. |
| |
| Mon Oct 20 2003: |
| |
| [21]Version 0.3 released; changes include: documentation update, build |
| fixes, RPM spec file added, added new function int |
| daemon_pid_file_kill_wait(). |
| |
| Thu July 10 2003: |
| |
| [22]Version 0.2 released; changes include: ugly umask error fix, |
| documentation update |
| |
| Mon July 7 2003: |
| |
| [23]Version 0.1 released |
| |
| Overview |
| |
| libdaemon is a lightweight C library that eases the writing of UNIX |
| daemons. It consists of the following parts: |
| * A wrapper around fork() which does the correct daemonization |
| procedure of a process |
| * A wrapper around syslog() for simpler and compatible log output to |
| Syslog or STDERR |
| * An API for writing PID files |
| * An API for serializing UNIX signals into a pipe for usage with |
| select() or poll() |
| * An API for running subprocesses with STDOUT and STDERR redirected |
| to syslog. |
| |
| 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. |
| |
| libdaemon is currently used by [24]ifplugd, [25]Avahi, [26]ivam2, |
| [27]Nautilus-Share and [28]aeswepd. |
| |
| Current Status |
| |
| Version 0.14 is feature complete. |
| |
| Documentation |
| |
| An extensive API reference is [29]available |
| |
| Requirements |
| |
| libdaemon 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. |
| |
| libdaemon is known to work on modern Linux systems, FreeBSD, NetBSD, |
| OpenBSD, Darwin, Solaris and Windows/Cygwin. |
| |
| Installation |
| |
| As this package is made with the GNU autotools you should run |
| ./configure inside the distribution directory for configuring the |
| source tree. After that you should run make for compilation and make |
| install (as root) for installation of libdaemon. |
| |
| Please use gmake instead of traditional make for compilation on |
| non-Linux systems. |
| |
| Acknowledgements |
| |
| Sebastien Estienne, for a lot of portability work. |
| |
| Download |
| |
| The newest release is always available from |
| [30]http://0pointer.de/lennart/projects/libdaemon/ |
| |
| Get libdaemon's development sources from the [31]GIT [32]repository |
| ([33]gitweb): |
| git clone git://git.0pointer.de/libdaemon |
| |
| You may find an up to date Debian package of libdaemon on the |
| [34]Debian package repository. |
| |
| If you want to be notified whenever I release a new version of this |
| software use the subscription feature of [35]Freshmeat. |
| __________________________________________________________________ |
| |
| |
| Lennart Poettering <mzqnrzba (at) 0pointer (dot) de>, October 2009 |
| |
| References |
| |
| 1. README#license |
| 2. README#news |
| 3. README#overview |
| 4. README#status |
| 5. README#documentation |
| 6. README#requirements |
| 7. README#installation |
| 8. README#acks |
| 9. README#download |
| 10. http://0pointer.de/lennart/projects/libdaemon/libdaemon-0.14.tar.gz |
| 11. http://0pointer.de/lennart/projects/libdaemon/libdaemon-0.13.tar.gz |
| 12. http://0pointer.de/lennart/projects/libdaemon/libdaemon-0.12.tar.gz |
| 13. http://0pointer.de/lennart/projects/libdaemon/libdaemon-0.11.tar.gz |
| 14. http://0pointer.de/lennart/projects/libdaemon/libdaemon-0.10.tar.gz |
| 15. http://0pointer.de/lennart/projects/libdaemon/libdaemon-0.9.tar.gz |
| 16. http://0pointer.de/lennart/projects/libdaemon/libdaemon-0.8.tar.gz |
| 17. http://0pointer.de/lennart/projects/libdaemon/libdaemon-0.7.tar.gz |
| 18. http://0pointer.de/lennart/projects/libdaemon/libdaemon-0.6.tar.gz |
| 19. http://0pointer.de/lennart/projects/libdaemon/libdaemon-0.5.tar.gz |
| 20. http://0pointer.de/lennart/projects/libdaemon/libdaemon-0.4.tar.gz |
| 21. http://0pointer.de/lennart/projects/libdaemon/libdaemon-0.3.tar.gz |
| 22. http://0pointer.de/lennart/projects/libdaemon/libdaemon-0.2.tar.gz |
| 23. http://0pointer.de/lennart/projects/libdaemon/libdaemon-0.1.tar.gz |
| 24. http://0pointer.de/lennart/projects/ifplugd/ |
| 25. http://freedesktop.org/Software/Avahi |
| 26. http://0pointer.de/lennart/projects/ivam2/ |
| 27. http://gentoo.ovibes.net/nautilus-share/mediawiki-1.4.4/index.php/Accueil |
| 28. http://0pointer.de/lennart/projects/aeswepd/ |
| 29. reference/html/index.html |
| 30. http://0pointer.de/lennart/projects/libdaemon/ |
| 31. http://git.or.cz/ |
| 32. git://git.0pointer.de/libdaemon |
| 33. http://git.0pointer.de/?p=libdaemon.git |
| 34. http://packages.debian.org/libdaemon0 |
| 35. http://freshmeat.net/projects/libdaemon/ |