1 * Thu Dec 15 2011 Ted Felix <http://www.tedfelix.com>
3 - Fixed brace style. (inotify_handler.c acpid.c) (Ted Felix)
4 - Added support for a "K" suffix on event strings to indicate that they
5 may have originated from a keyboard input layer device. This can be
6 used to differentiate between a power switch on the keyboard, and a power
7 switch on the computer's case.
9 (connection_list.h inotify_handler.c input_layer.c netlink.c proc.c
12 - Added a pathname to connection along with a find_connection_name().
13 Modifications to process_inotify() to log IN_DELETE events. Additional
16 These changes were experimentation related to dealing with a ThinkPad
17 suspend problem. They should have no effect on acpid's behavior. They are
18 mainly noticeable as a change in the logging.
20 The Problem: When resuming from suspend, the lid switch and power button's
21 /dev/input event files do not trigger an IN_CREATE, so acpid doesn't
22 reconnect to them. Restarting acpid fixes this.
24 Tried using IN_DELETE instead of ENODEV to detect the drivers going away.
25 Worked fine for disconnecting/reconnecting a USB keyboard, but not for the
26 ThinkPad suspend problem. I've given up on fixing this as it appears to be
27 a kernel or driver issue.
29 (connection_list.c connection_list.h inotify_handler.c input_layer.c
30 netlink.c proc.c sock.c) (Ted Felix)
32 * Tue Nov 15 2011 Ted Felix <http://www.tedfelix.com>
34 - Fix for socket name buffer overflow. (ud_socket.c) (Ted Felix)
35 - Moved acpid_log() out of acpid.h/.c and into log.h/.c to make it easier
36 for all parts of acpid to use. (Makefile acpid.h acpid.c connection_list.c
37 event.c inotify_handler.c input_layer.c log.h log.c netlink.c proc.c
38 sock.c ud_socket.c) (Ted Felix)
39 - Cleaned up #includes and comment style. (libnetlink.c libnetlink.h)
42 * Mon Aug 15 2011 Ted Felix <http://www.tedfelix.com>
44 - Changed exit() to _exit() if execl() fails. (event.c) (Ted Felix)
46 * Sat Jul 30 2011 Ted Felix <http://www.tedfelix.com>
48 - Set umask to 0077 for scripts run by acpid. (event.c) (Ted Felix)
50 * Tue May 17 2011 Ted Felix <http://www.tedfelix.com>
52 - Fixed compiler warnings in kacpimon. (kacpimon/libnetlink.c)
54 - systemd support. The socket acpid creates to connect with clients can now
55 be passed as stdin (fd 0) at startup. (acpid.c sock.h sock.c acpid.8)
57 - man page improvements (acpid.8) (Ted Felix)
59 * Fri Apr 15 2011 Ted Felix <http://www.tedfelix.com>
61 - Removed newlines from acpid_log() calls and modified acpid_log() to
62 no longer need newlines. This change to acpid prevents blank lines in
63 the log for versions of syslogd that preserve newlines. (acpid.c
64 connection_list.c event.c inotify_handler.c input_layer.c netlink.c
65 proc.c sock.c) (Michael Meskes, Ted Felix)
66 - Added fcntl() for O_NONBLOCK on the client sockets. This prevents acpid
67 from hanging if a client behaves badly. (sock.c) (Vasiliy Kulikov)
68 From: http://www.openwall.com/lists/oss-security/2011/01/19/4
69 - Improvements to error handling. (sock.c) (Ted Felix)
71 * Tue Feb 15 2011 Ted Felix <http://www.tedfelix.com>
73 - Fixed "comparison between signed and unsigned integer expressions"
74 error with gcc 4.6. (libnetlink.c) (Eugeni Dodonov)
75 - Fixed unused variable "type" with gcc 4.6. (libnetlink.c) (Jiri Skala)
77 * Mon Nov 15 2010 Ted Felix <http://www.tedfelix.com>
79 - Reduced the startup logging and skipped processing of "." and ".."
80 in the config files directory. Debian #598198. (event.c proc.c)
82 - Added CD-related buttons. Debian #600564. (input_layer.c)
84 - Removed the "getppid() == 1" hack from daemonize().
85 Red Hat #629740. "While forking is ugly in theory, this has the advantage
86 that it is clear that the acpid unix socket is properly installed before
87 systemd continues starting other units that want to be started after
88 acpid." - Lennart Poettering
89 For upstart, specify "expect fork" in your upstart .conf file for acpid.
90 For systemd, specify "Type=forking" in your systemd service file for
92 (acpid.c) (Lennart Poettering)
93 - Added FD_CLOEXEC to the input layer fd's. Red Hat #648221.
94 (input_layer.c) (Daniel Walsh)
96 * Tue Jun 15 2010 Ted Felix <http://www.tedfelix.com>
98 - Added getXconsole() to samples/powerbtn/powerbtn.sh to eliminate
99 dependency on other parts of Debian. (samples/powerbtn/powerbtn.sh)
100 (Debian and Timo Gurr)
102 * Sat May 15 2010 Ted Felix <http://www.tedfelix.com>
104 - Moved powerbtn.sh to powerbtn.sh.old and brought in the latest
105 powerbtn.sh from Debian which handles KDE4.
106 (samples/powerbtn/powerbtn.sh samples/powerbtn/powerbtn.sh.old)
109 * Thu Apr 15 2010 Ted Felix <http://www.tedfelix.com>
111 - Replaced all the mandb code in the makefile with a comment. (Makefile)
113 - Revamped logging. (acpid.c event.c inotify_handler.c input_layer.c
114 netlink.c proc.c sock.c) (Ted Felix)
115 - Removed CR's (\r) from files. (Changelog connection_list.c sock.c)
117 - Cleaned up the samples directory a bit. Also added powerbtn samples
118 taken from Debian. (samples/*) (Ted Felix)
119 - Removed the %changelog token from the top of the Changelog. This
120 appears to be a Red Hat-ism. (Changelog) (Ted Felix)
122 * Mon Mar 15 2010 Ted Felix <http://www.tedfelix.com>
124 - Fixed problem in makefile with mandb line when DESTDIR is not empty.
125 (Makefile) (Jiri Skala)
126 - Added missing headers needed by Red Hat/Fedora. (acpid.c sock.c)
128 - Updated daemonize() to be in keeping with Doug Potter's "How to Daemonize
129 in Linux". (acpid.c) (Ted Felix)
130 - Removed the test for bad kernels. (acpid.c) (Ted Felix)
132 * Mon Feb 15 2010 Ted Felix <http://www.tedfelix.com>
134 - Increased MAX_CONNECTIONS to 20. (connection_list.c)
135 - Recalculate highestfd in delete_connection(). (connection_list.c)
137 - Removed old naming convention code for configuration files. (event.c)
138 - Fixed unescaped dashes in manpage. (acpid.8) (Michael Meskes)
139 - Added fix for mandb issue. (Makefile) (Robby Workman)
140 - Moved README-NETLINK into README. (README-NETLINK README)
142 * Fri Jan 15 2010 Ted Felix <http://www.tedfelix.com>
144 - Makefile improvements for packagers. (Makefile) (Robby Workman)
145 * Use DESTDIR instead of INSTPREFIX
146 * Allow custom compiler optimizations
147 * Allow alternative prefix
148 * Allow custom manpage directory
149 * Add DOCDIR and install docs
150 * Remove reference to "mandb -q" - this doesn't exist everywhere
152 After this patch, packagers can do e.g.:
158 DOCDIR=/opt/doc/apcid \
161 - run-parts(8) naming convention for configuration files. (event.c
164 * Tue Dec 15 2009 Ted Felix <http://www.tedfelix.com>
166 - Fixed gcc 4.4 warnings for strict aliasing. (kacpimon/acpi_ids.c)
168 - Fixed a printf() warning. (kacpimon/input_layer.c) (Debian)
169 - Fixed kacpimon makefile for a release build. (kacpimon/makefile)
171 - Added dist and install targets to kacpimon makefile. Added
172 a set of CFLAGS for Debian-style (-g -O2) builds. Fixed error
173 messages in clean target with a "-f" to rm. (kacpimon/makefile)
175 - Increased MAX_CONNECTIONS to 20 for kacpimon.
176 (kacpimon/connection_list.c) (Ted Felix)
177 - Improved "dist" target with DISTNAME in makefile. (Makefile)
179 - Added mandb to the install target so that the man database will get
180 updated after the man pages are installed. (Makefile)
182 - Updated the "event=" line in sample.conf to be more modern.
183 (samples/sample.conf) (Ted Felix)
184 - Improved the Example in the man page. (acpid.8) (Ted Felix)
186 * Thu Nov 13 2009 Ted Felix <http://www.tedfelix.com/>
187 - 1.0.10-netlink6 release
188 - Implemented discovery of new input layer devices using inotify(7).
189 (inotify_handler.h inotify_handler.c acpid.c input_layer.h input_layer.c)
191 - Updated input layer event table to incorporate more events and
192 to support a format compatible with older event configuration
193 files. (input_layer.c) (Harald Braumann and Ted Felix)
194 - Cleanup and move of input layer constants. (acpid.h input_layer.c
195 inotify_handler.c) (Ted Felix)
196 - kacpimon now opens all event sources and reports where each event
197 comes from. This makes it more useful for discovering events.
198 (kacpimon/kacpimon.c kacpimon/input_layer.c kacpimon/netlink.c)
200 - Turned off strict aliasing optimizations as the netlink code is
201 filled with strict aliasing problems. (Makefile) (Ted Felix)
203 * Fri Nov 6 2009 Ted Felix <http://www.tedfelix.com/>
204 - 1.0.10-netlink5 release
205 - Fixed exit on device removal. (input_layer.c connection_list.h
206 connection_list.c) (Mikhail Krivtsov)
208 * Sun Jul 19 2009 Ted Felix <http://www.tedfelix.com/>
209 - 1.0.10-netlink4 release
210 - Added events to input_layer.c to cover more buttons on the Thinkpad X40
211 (input_layer.c) (Peter Stuge)
212 - Fixed Makefile "dist" target to work properly. (Makefile) (Ted Felix)
213 - Added kacpimon to the codebase as a debugging tool. (kacpimon directory,
214 Makefile) (Ted Felix)
215 - Removed erroneous comment in sock.c about the 256 connection limit.
217 - Removed unnecessary #include from connection_list.c. (connection_list.c)
220 * Mon May 04 2009 Ted Felix <http://www.tedfelix.com/>
221 - Fixed strict aliasing issue with gcc 4.4. (acpi_ids.c) (Michael Meskes
223 - 1.0.10-netlink3 release.
225 * Sat May 02 2009 Ted Felix <http://www.tedfelix.com/>
226 - Merge of the following three 1.0.10 changes into 1.0.10-netlink2
227 (Michael Meskes and Ted Felix)
229 * Wed Apr 22 2009 Tim Hockin <thockin@hockin.org>
230 - Bump version to 1.0.10 for release.
232 * Wed Apr 22 2009 Tim Hockin <thockin@hockin.org>
233 - Add a -C (--clientmax) command line flag to set max number of non-root
234 socket connections. (acpi.c acpid.h acpid.8 event.c)
235 - Set the maximum number of socket clients to 256 by default. (acpid.h)
236 - Close clients that have disconnected. (acpid.c event.c) (Aaron Plattner
237 <aplattner@nvidia.com>)
238 - Give up and exit() if 5 accept() calls fail in a row. (acpid.c)
240 * Mon Feb 09 2009 Tim Hockin <thockin@hockin.org>
241 - Open /dev/null O_RDWR, rather than O_RDONLY. (acpid.c)
243 * Thu Dec 11 2008 Ted Felix <http://www.tedfelix.com/>
245 - Netlink and Input Layer support. Many files have been changed and
246 several have been added. (Ted Felix <http://www.tedfelix.com/>)
248 * Tue Oct 28 2008 Tim Hockin <thockin@hockin.org>
249 - Bump version to 1.0.8 for release.
251 * Sun Oct 26 2008 Tim Hockin <thockin@hockin.org>
252 - Define _GNU_SOURCE. (Makefile) (Ted Felix <http://www.tedfelix.com/>)
253 - Rename a variable to avoid shadowing a global. (event.c) (Ted Felix
254 <http://www.tedfelix.com/>)
255 - Fix typos in man pages. (acpid.8, acpi_listen.8) (Ted Felix
256 <http://www.tedfelix.com/>)
257 - GCC 4.3.2 gives chdir() the _wur attribute (warn unused result). Check
258 for errors. (acpid.c) (Ted Felix <http://www.tedfelix.com/>)
259 - Check for ferror() in parse_file(). (event.c) (Ted Felix
260 <http://www.tedfelix.com/>)
261 - Only read regular files in acpid_read_conf(). (event.c) (Ted Felix
262 <http://www.tedfelix.com/>)
263 - Stop processing ACPI events when a lockfile exists (from Debian).
264 (acpid.8, acpid.c, acpid.h) (Ted Felix <http://www.tedfelix.com/>)
266 * Sat Nov 24 2007 Tim Hockin <thockin@hockin.org>
267 - Build with -O2 flag (Makefile).
268 - Add -l (--logevents) option to enable logging of all events. Due to a
269 number of reports of log flooding (bad ACPI BIOS?) The new default is to
270 NOT log events. (acpid.c acpid.h event.h acpid.8)
271 - Add pidfile support and a -p (--pidfile) option to change the pidfile.
272 Default is /var/run/acpid.pid. (acpid.c acpid.8) (Javier Pello
273 <jpello@users.sourceforge.net>)
274 - Rename ACPI_* constants to ACPID_*. (acpid.c acpi_listen.c)
275 - Remove a bad cast of malloc()'s return value. (event.c)
276 - Add proper make dependencies. (Makefile)
277 - Close client file descriptors on exec(). (acpid.c) (Zdenek Prikryl
278 <zprikryl@redhat.com>)
280 * Mon Sep 24 2007 Tim Hockin <thockin@hockin.org>
281 - Don't use a mode argument on open("/dev/null") (acpid.c) (Steve Grubb
283 - Use GCC "__attribute__((format(printf)))" for acpid_log (acpid.c) (Steve
284 Grubb <sgrubb@redhat.com>)
285 - Fix a shadowed variable name (event.c) (Steve Grubb <sgrubb@redhat.com>)
286 - Fix a leaked fd on error (event.c) (Steve Grubb <sgrubb@redhat.com>)
287 - Fix a signed/unsigned comparison (event.c) (Steve Grubb
289 - Compile with more warnings (Makefile) (Steve Grubb <sgrubb@redhat.com>)
291 * Sat June 30 2007 Tim Hockin <thockin@hockin.org>
292 - Bump version to 1.0.6 for release.
294 * Thu May 24 2007 Tim Hockin <thockin@hockin.org>
295 - Print event handler output to stdout only in debug mode (acpid.c, event.c).
296 - Update man page for new logging.
298 * Wed May 23 2007 Tim Hockin <thockin@hockin.org>
299 - Correctly check for malloc() failures (event.c)
300 - Skip editor backup files when scanning for conf files (event.c) (Stefan
301 Seyfried <seife@suse.de>)
302 - Use syslog() for logging (acpid.c, event.c, acpid.h) (Stefan Seyfried
305 * Fri Dec 30 2005 Tim Hockin <thockin@hockin.org>
306 - Add a do_detach argument to acpid_cleanup_rules() to avoid closing
307 clients on a HUP (acpid.c, event.c) (Frederic Lepied
308 <flepied@users.sourceforge.net>)
310 * Sat Sep 24 2005 Tim Hockin <thockin@hockin.org>
311 - Document -f option in the acpid man page (acpid.8)
313 * Fri Sep 23 2005 Tim Hockin <thockin@hockin.org>
314 - Fix rule and fd leak when clients disconnect on socket (event.c) (Timo
315 Hoenig <thoenig@suse.de>)
317 * Fri Oct 19 2005 Tim Hockin <thockin@hockin.org>
318 - Use socklen_t for sockets calls (ud_socket.c)
320 * Sun Oct 24 2004 Tim Hockin <thockin@hockin.org>
321 - Update my own email to not say @sun.com anymore
323 * Sun Oct 17 2004 Tim Hockin <thockin@hockin.org>
324 - mkdir BINDIR in Makefile
326 * Sun Oct 17 2004 Tim Hockin <thockin@hockin.org>
327 - set acpi_listen stdout to be line-buffered (Gilles Chanteperdrix
328 <gilles.chanteperdrix@laposte.net>)
329 - detect a closed socket and exit (acpi_listen.c)
330 - detect a closed events file and exit (acpid.c)
331 - print read_line() errors (acpi_listen.c, acpid.c)
332 - added sample battery config and handler (Frank Dietrich
334 - added sample AC adapter config/handler and hotkey config/handler for
335 Panasonic notebooks (David Bronaugh <dbronaugh@linuxboxen.org>)
336 - prep for 1.0.4 release
338 * Fri Feb 13 2004 Tim Hockin <thockin@sun.com>
339 - dump debian/ and redhat/ dirs -- too much hassle
340 - change 'make rpm' to 'make dist'
341 - minor Makefile cleanup
343 - prep for 1.0.3 release
345 * Thu Dec 18 2003 Tim Hockin <thockin@sun.com>
346 - unblock signals before exec()ing a handler
347 - remove odd 'been_here' from signals_handled() (debug artifact?)
349 * Mon Nov 24 2003 Tim Hockin <thockin@sun.com>
350 - add -c, --count option to acpi_listen (Luca Capello <luca.pca.it>)
351 - add -t, --time option to acpi_listen (Luca Capello <luca.pca.it>)
352 - return a meaningful value if we break out of the main loop (acpi_listen.c)
353 - break out usage() from handle_cmdline() (acpi_listen.c)
355 * Mon Nov 17 2003 Tim Hockin <thockin@sun.com>
356 - Decouple logging to stdout from foregrounding
357 - Add acpi_listen (source and man)
359 - Remove (euid == 0) check
360 - ifdef the bad-kernel checking - it consumes a byte of data!
362 * Fri Nov 14 2003 Tim Hockin <thockin@sun.com>
363 - Add -f option (run in foreground)
365 * Tue May 13 2003 Tim Hockin <thockin@sun.com>
366 - Fixed a dumb bug with %e expansion for commands
370 * Fri Mar 15 2002 Tim Hockin <thockin@sun.com>
371 - Updated RPM spec with patch from sun for chkconfig on/off
372 - Add Changelog, make 'make rpm' use it.
375 * Wed Mar 13 2002 Tim Hockin <thockin@sun.com>
376 - Fixed logging bug - not appending to log (O_APPEND needed)
377 - Fix 'make install' to not need root access
378 - Fix RPM spec to not need root
380 * Thu Sep 6 2001 Tim Hockin <thockin@sun.com>
383 * Thu Aug 16 2001 Tim Hockin <thockin@sun.com>
384 - Added commandline options to actions
386 * Wed Aug 15 2001 Tim Hockin <thockin@sun.com>
387 - Added UNIX domain socket support
388 - Changed /etc/acpid.d to /etc/acpid/events
390 * Mon Aug 13 2001 Tim Hockin <thockin@sun.com>