Hello community, here is the log from the commit of package acpid for openSUSE:Factory checked in at 2017-11-10 14:57:54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/acpid (Old) and /work/SRC/openSUSE:Factory/.acpid.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "acpid" Fri Nov 10 14:57:54 2017 rev:76 rq:540220 version:2.0.28 Changes: -------- --- /work/SRC/openSUSE:Factory/acpid/acpid.changes 2016-11-29 12:50:15.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.acpid.new/acpid.changes 2017-11-10 14:58:08.118476736 +0100 @@ -1,0 +2,8 @@ +Sat Nov 4 19:55:37 UTC 2017 - [email protected] + +- Update to version 2.0.28 + * Fix intermittent "Address already in use" + * inotify: process all inotify messages in buffer + * Use proper lengths for inotify buffers. + +------------------------------------------------------------------- Old: ---- acpid-2.0.27.tar.xz New: ---- acpid-2.0.28.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ acpid.spec ++++++ --- /var/tmp/diff_new_pack.rSzXht/_old 2017-11-10 14:58:10.146403383 +0100 +++ /var/tmp/diff_new_pack.rSzXht/_new 2017-11-10 14:58:10.146403383 +0100 @@ -1,7 +1,7 @@ # # spec file for package acpid # -# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,7 +17,7 @@ Name: acpid -Version: 2.0.27 +Version: 2.0.28 Release: 0 Summary: Executes Actions at ACPI Events License: GPL-2.0+ ++++++ acpid-2.0.27.tar.xz -> acpid-2.0.28.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/acpid-2.0.27/Changelog new/acpid-2.0.28/Changelog --- old/acpid-2.0.27/Changelog 2016-03-16 00:22:38.484938795 +0100 +++ new/acpid-2.0.28/Changelog 2016-09-15 21:58:08.747135430 +0200 @@ -1,3 +1,13 @@ +* 2.0.28 2016-09-15 Ted Felix <[email protected]> + - 2.0.28 release + (configure.ac) (Ted Felix) + - Fix intermittent "Address already in use". Bug #12. + (acpid.c) (Andreas Chmielewski) + - inotify: process all inotify messages in buffer. Bug #13. + (inotify_handler.c) (Dennis Wassenberg) + - Use proper lengths for inotify buffers. + (inotify_handler.c) (Ted Felix) + * 2.0.27 2016-03-15 Ted Felix <[email protected]> - 2.0.27 release (configure.ac) (Ted Felix) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/acpid-2.0.27/Makefile.in new/acpid-2.0.28/Makefile.in --- old/acpid-2.0.27/Makefile.in 2016-03-16 00:24:09.215227884 +0100 +++ new/acpid-2.0.28/Makefile.in 2016-09-15 21:59:53.845696113 +0200 @@ -367,6 +367,7 @@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/acpid-2.0.27/acpid.c new/acpid-2.0.28/acpid.c --- old/acpid-2.0.27/acpid.c 2015-07-29 00:32:35.424948091 +0200 +++ new/acpid-2.0.28/acpid.c 2016-04-25 01:13:22.996715770 +0200 @@ -83,7 +83,14 @@ /* open the log */ open_log(); - + + /* if we're running in the background, and we're not being started */ + /* by systemd */ + if (!foreground && !is_socket(STDIN_FILENO)) { + if (daemonize() < 0) + exit(EXIT_FAILURE); + } + if (!netlink) { /* open the acpi event file in the proc fs */ /* if the open fails, try netlink */ @@ -107,13 +114,6 @@ open_sock(); } - /* if we're running in the background, and we're not being started */ - /* by systemd */ - if (!foreground && !is_socket(STDIN_FILENO)) { - if (daemonize() < 0) - exit(EXIT_FAILURE); - } - /* redirect standard files to /dev/null */ if (std2null() < 0) { exit(EXIT_FAILURE); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/acpid-2.0.27/build-aux/config.guess new/acpid-2.0.28/build-aux/config.guess --- old/acpid-2.0.27/build-aux/config.guess 2016-03-16 00:24:09.062227402 +0100 +++ new/acpid-2.0.28/build-aux/config.guess 2016-09-15 21:59:53.692696753 +0200 @@ -1,8 +1,8 @@ #! /bin/sh # Attempt to guess a canonical system name. -# Copyright 1992-2014 Free Software Foundation, Inc. +# Copyright 1992-2015 Free Software Foundation, Inc. -timestamp='2014-03-23' +timestamp='2015-08-20' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -24,12 +24,12 @@ # program. This Exception is an additional permission under section 7 # of the GNU General Public License, version 3 ("GPLv3"). # -# Originally written by Per Bothner. +# Originally written by Per Bothner; maintained since 2000 by Ben Elliston. # # You can get the latest version of this script from: # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD # -# Please send patches with a ChangeLog entry to [email protected]. +# Please send patches to <[email protected]>. me=`echo "$0" | sed -e 's,.*/,,'` @@ -50,7 +50,7 @@ GNU config.guess ($timestamp) Originally written by Per Bothner. -Copyright 1992-2014 Free Software Foundation, Inc. +Copyright 1992-2015 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." @@ -168,20 +168,27 @@ # Note: NetBSD doesn't particularly care about the vendor # portion of the name. We always set it to "unknown". sysctl="sysctl -n hw.machine_arch" - UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ - /usr/sbin/$sysctl 2>/dev/null || echo unknown)` + UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \ + /sbin/$sysctl 2>/dev/null || \ + /usr/sbin/$sysctl 2>/dev/null || \ + echo unknown)` case "${UNAME_MACHINE_ARCH}" in armeb) machine=armeb-unknown ;; arm*) machine=arm-unknown ;; sh3el) machine=shl-unknown ;; sh3eb) machine=sh-unknown ;; sh5el) machine=sh5le-unknown ;; + earmv*) + arch=`echo ${UNAME_MACHINE_ARCH} | sed -e 's,^e\(armv[0-9]\).*$,\1,'` + endian=`echo ${UNAME_MACHINE_ARCH} | sed -ne 's,^.*\(eb\)$,\1,p'` + machine=${arch}${endian}-unknown + ;; *) machine=${UNAME_MACHINE_ARCH}-unknown ;; esac # The Operating System including object format, if it has switched # to ELF recently, or will in the future. case "${UNAME_MACHINE_ARCH}" in - arm*|i386|m68k|ns32k|sh3*|sparc|vax) + arm*|earm*|i386|m68k|ns32k|sh3*|sparc|vax) eval $set_cc_for_build if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ELF__ @@ -197,6 +204,13 @@ os=netbsd ;; esac + # Determine ABI tags. + case "${UNAME_MACHINE_ARCH}" in + earm*) + expr='s/^earmv[0-9]/-eabi/;s/eb$//' + abi=`echo ${UNAME_MACHINE_ARCH} | sed -e "$expr"` + ;; + esac # The OS release # Debian GNU/NetBSD machines have a different userland, and # thus, need a distinct triplet. However, they do not need @@ -207,13 +221,13 @@ release='-gnu' ;; *) - release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` + release=`echo ${UNAME_RELEASE} | sed -e 's/[-_].*//' | cut -d. -f1,2` ;; esac # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: # contains redundant information, the shorter form: # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. - echo "${machine}-${os}${release}" + echo "${machine}-${os}${release}${abi}" exit ;; *:Bitrig:*:*) UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` @@ -235,6 +249,9 @@ *:MirBSD:*:*) echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} exit ;; + *:Sortix:*:*) + echo ${UNAME_MACHINE}-unknown-sortix + exit ;; alpha:OSF1:*:*) case $UNAME_RELEASE in *4.0) @@ -579,8 +596,9 @@ else IBM_ARCH=powerpc fi - if [ -x /usr/bin/oslevel ] ; then - IBM_REV=`/usr/bin/oslevel` + if [ -x /usr/bin/lslpp ] ; then + IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc | + awk -F: '{ print $3 }' | sed s/[0-9]*$/0/` else IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} fi @@ -932,6 +950,9 @@ crisv32:Linux:*:*) echo ${UNAME_MACHINE}-axis-linux-${LIBC} exit ;; + e2k:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; frv:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; @@ -1020,7 +1041,7 @@ echo ${UNAME_MACHINE}-dec-linux-${LIBC} exit ;; x86_64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo ${UNAME_MACHINE}-pc-linux-${LIBC} exit ;; xtensa*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-${LIBC} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/acpid-2.0.27/build-aux/config.sub new/acpid-2.0.28/build-aux/config.sub --- old/acpid-2.0.27/build-aux/config.sub 2016-03-16 00:24:09.070227427 +0100 +++ new/acpid-2.0.28/build-aux/config.sub 2016-09-15 21:59:53.696696736 +0200 @@ -1,8 +1,8 @@ #! /bin/sh # Configuration validation subroutine script. -# Copyright 1992-2014 Free Software Foundation, Inc. +# Copyright 1992-2015 Free Software Foundation, Inc. -timestamp='2014-09-11' +timestamp='2015-08-20' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -25,7 +25,7 @@ # of the GNU General Public License, version 3 ("GPLv3"). -# Please send patches with a ChangeLog entry to [email protected]. +# Please send patches to <[email protected]>. # # Configuration subroutine to validate and canonicalize a configuration type. # Supply the specified configuration type as an argument. @@ -68,7 +68,7 @@ version="\ GNU config.sub ($timestamp) -Copyright 1992-2014 Free Software Foundation, Inc. +Copyright 1992-2015 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." @@ -117,7 +117,7 @@ case $maybe_os in nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ - knetbsd*-gnu* | netbsd*-gnu* | \ + knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \ kopensolaris*-gnu* | \ storm-chaos* | os2-emx* | rtmk-nova*) os=-$maybe_os @@ -255,12 +255,13 @@ | arc | arceb \ | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ | avr | avr32 \ + | ba \ | be32 | be64 \ | bfin \ | c4x | c8051 | clipper \ | d10v | d30v | dlx | dsp16xx \ - | epiphany \ - | fido | fr30 | frv \ + | e2k | epiphany \ + | fido | fr30 | frv | ft32 \ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ | hexagon \ | i370 | i860 | i960 | ia64 \ @@ -305,7 +306,7 @@ | riscv32 | riscv64 \ | rl78 | rx \ | score \ - | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ + | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ | sh64 | sh64le \ | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ @@ -313,6 +314,7 @@ | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ | ubicom32 \ | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ + | visium \ | we32k \ | x86 | xc16x | xstormy16 | xtensa \ | z8k | z80) @@ -327,6 +329,9 @@ c6x) basic_machine=tic6x-unknown ;; + leon|leon[3-9]) + basic_machine=sparc-$basic_machine + ;; m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip) basic_machine=$basic_machine-unknown os=-none @@ -372,12 +377,13 @@ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \ | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ | avr-* | avr32-* \ + | ba-* \ | be32-* | be64-* \ | bfin-* | bs2000-* \ | c[123]* | c30-* | [cjt]90-* | c4x-* \ | c8051-* | clipper-* | craynv-* | cydra-* \ | d10v-* | d30v-* | dlx-* \ - | elxsi-* \ + | e2k-* | elxsi-* \ | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ | h8300-* | h8500-* \ | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ @@ -424,12 +430,13 @@ | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ | pyramid-* \ + | riscv32-* | riscv64-* \ | rl78-* | romp-* | rs6000-* | rx-* \ | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ | sparclite-* \ - | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ + | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \ | tahoe-* \ | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ | tile*-* \ @@ -437,6 +444,7 @@ | ubicom32-* \ | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ | vax-* \ + | visium-* \ | we32k-* \ | x86-* | x86_64-* | xc16x-* | xps100-* \ | xstormy16-* | xtensa*-* \ @@ -513,6 +521,9 @@ basic_machine=i386-pc os=-aros ;; + asmjs) + basic_machine=asmjs-unknown + ;; aux) basic_machine=m68k-apple os=-aux @@ -774,6 +785,9 @@ basic_machine=m68k-isi os=-sysv ;; + leon-*|leon[3-9]-*) + basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'` + ;; m68knommu) basic_machine=m68k-unknown os=-linux @@ -1365,7 +1379,7 @@ | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ | -sym* | -kopensolaris* | -plan9* \ | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ - | -aos* | -aros* \ + | -aos* | -aros* | -cloudabi* | -sortix* \ | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/acpid-2.0.27/build-aux/install-sh new/acpid-2.0.28/build-aux/install-sh --- old/acpid-2.0.27/build-aux/install-sh 2016-03-16 00:24:09.073227437 +0100 +++ new/acpid-2.0.28/build-aux/install-sh 2016-09-15 21:59:53.733696581 +0200 @@ -1,7 +1,7 @@ #!/bin/sh # install - install a program, script, or datafile -scriptversion=2013-12-25.23; # UTC +scriptversion=2014-09-12.12; # UTC # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the @@ -324,34 +324,41 @@ # is incompatible with FreeBSD 'install' when (umask & 300) != 0. ;; *) + # $RANDOM is not portable (e.g. dash); use it when possible to + # lower collision chance tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$ - trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0 + trap 'ret=$?; rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null; exit $ret' 0 + # As "mkdir -p" follows symlinks and we work in /tmp possibly; so + # create the $tmpdir first (and fail if unsuccessful) to make sure + # that nobody tries to guess the $tmpdir name. if (umask $mkdir_umask && - exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1 + $mkdirprog $mkdir_mode "$tmpdir" && + exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1 then if test -z "$dir_arg" || { # Check for POSIX incompatibilities with -m. # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or # other-writable bit of parent directory when it shouldn't. # FreeBSD 6.1 mkdir -m -p sets mode of existing directory. - ls_ld_tmpdir=`ls -ld "$tmpdir"` + test_tmpdir="$tmpdir/a" + ls_ld_tmpdir=`ls -ld "$test_tmpdir"` case $ls_ld_tmpdir in d????-?r-*) different_mode=700;; d????-?--*) different_mode=755;; *) false;; esac && - $mkdirprog -m$different_mode -p -- "$tmpdir" && { - ls_ld_tmpdir_1=`ls -ld "$tmpdir"` + $mkdirprog -m$different_mode -p -- "$test_tmpdir" && { + ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"` test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1" } } then posix_mkdir=: fi - rmdir "$tmpdir/d" "$tmpdir" + rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" else # Remove any dirs left behind by ancient mkdir implementations. - rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null + rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null fi trap '' 0;; esac;; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/acpid-2.0.27/config.h new/acpid-2.0.28/config.h --- old/acpid-2.0.27/config.h 2016-03-16 00:24:24.203275012 +0100 +++ new/acpid-2.0.28/config.h 2016-09-15 22:00:03.008657812 +0200 @@ -136,7 +136,7 @@ #define PACKAGE_NAME "acpid" /* Define to the full name and version of this package. */ -#define PACKAGE_STRING "acpid 2.0.27" +#define PACKAGE_STRING "acpid 2.0.28" /* Define to the one symbol short name of this package. */ #define PACKAGE_TARNAME "acpid" @@ -145,7 +145,7 @@ #define PACKAGE_URL "" /* Define to the version of this package. */ -#define PACKAGE_VERSION "2.0.27" +#define PACKAGE_VERSION "2.0.28" /* Define to 1 if you have the ANSI C header files. */ #define STDC_HEADERS 1 @@ -173,7 +173,7 @@ /* Version number of package */ -#define VERSION "2.0.27" +#define VERSION "2.0.28" /* Enable large inode numbers on Mac OS X 10.5. */ #ifndef _DARWIN_USE_64_BIT_INODE diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/acpid-2.0.27/configure new/acpid-2.0.28/configure --- old/acpid-2.0.27/configure 2016-03-16 00:24:08.062224251 +0100 +++ new/acpid-2.0.28/configure 2016-09-15 21:59:52.529701614 +0200 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for acpid 2.0.27. +# Generated by GNU Autoconf 2.69 for acpid 2.0.28. # # # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. @@ -577,8 +577,8 @@ # Identity of this package. PACKAGE_NAME='acpid' PACKAGE_TARNAME='acpid' -PACKAGE_VERSION='2.0.27' -PACKAGE_STRING='acpid 2.0.27' +PACKAGE_VERSION='2.0.28' +PACKAGE_STRING='acpid 2.0.28' PACKAGE_BUGREPORT='' PACKAGE_URL='' @@ -700,6 +700,7 @@ docdir oldincludedir includedir +runstatedir localstatedir sharedstatedir sysconfdir @@ -774,6 +775,7 @@ sysconfdir='${prefix}/etc' sharedstatedir='${prefix}/com' localstatedir='${prefix}/var' +runstatedir='${localstatedir}/run' includedir='${prefix}/include' oldincludedir='/usr/include' docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' @@ -1026,6 +1028,15 @@ | -silent | --silent | --silen | --sile | --sil) silent=yes ;; + -runstatedir | --runstatedir | --runstatedi | --runstated \ + | --runstate | --runstat | --runsta | --runst | --runs \ + | --run | --ru | --r) + ac_prev=runstatedir ;; + -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \ + | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \ + | --run=* | --ru=* | --r=*) + runstatedir=$ac_optarg ;; + -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) ac_prev=sbindir ;; -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ @@ -1163,7 +1174,7 @@ for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ datadir sysconfdir sharedstatedir localstatedir includedir \ oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ - libdir localedir mandir + libdir localedir mandir runstatedir do eval ac_val=\$$ac_var # Remove trailing slashes. @@ -1276,7 +1287,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures acpid 2.0.27 to adapt to many kinds of systems. +\`configure' configures acpid 2.0.28 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1316,6 +1327,7 @@ --sysconfdir=DIR read-only single-machine data [PREFIX/etc] --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] --localstatedir=DIR modifiable single-machine data [PREFIX/var] + --runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run] --libdir=DIR object code libraries [EPREFIX/lib] --includedir=DIR C header files [PREFIX/include] --oldincludedir=DIR C header files for non-gcc [/usr/include] @@ -1346,7 +1358,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of acpid 2.0.27:";; + short | recursive ) echo "Configuration of acpid 2.0.28:";; esac cat <<\_ACEOF @@ -1441,7 +1453,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -acpid configure 2.0.27 +acpid configure 2.0.28 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1860,7 +1872,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by acpid $as_me 2.0.27, which was +It was created by acpid $as_me 2.0.28, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2726,7 +2738,7 @@ # Define the identity of the package. PACKAGE='acpid' - VERSION='2.0.27' + VERSION='2.0.28' cat >>confdefs.h <<_ACEOF @@ -6181,7 +6193,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by acpid $as_me 2.0.27, which was +This file was extended by acpid $as_me 2.0.28, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -6247,7 +6259,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -acpid config.status 2.0.27 +acpid config.status 2.0.28 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/acpid-2.0.27/configure.ac new/acpid-2.0.28/configure.ac --- old/acpid-2.0.27/configure.ac 2016-01-15 20:42:44.276037246 +0100 +++ new/acpid-2.0.28/configure.ac 2016-03-16 00:27:23.933828623 +0100 @@ -2,7 +2,7 @@ # Process this file with autoconf to produce a configure script. AC_PREREQ([2.60]) -AC_INIT([acpid], [2.0.27]) +AC_INIT([acpid], [2.0.28]) AC_CONFIG_SRCDIR([connection_list.h]) AC_CONFIG_HEADERS([config.h]) AC_CONFIG_AUX_DIR([build-aux]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/acpid-2.0.27/inotify_handler.c new/acpid-2.0.28/inotify_handler.c --- old/acpid-2.0.27/inotify_handler.c 2013-08-15 01:35:27.933674825 +0200 +++ new/acpid-2.0.28/inotify_handler.c 2016-09-07 16:14:40.262181283 +0200 @@ -30,6 +30,7 @@ #include <stdio.h> #include <errno.h> #include <string.h> +#include <limits.h> /* local */ #include "acpid.h" @@ -44,13 +45,11 @@ static void process_inotify(int fd) { int bytes; - /* union to avoid strict-aliasing problems */ - union { - char buffer[256]; /* a tad large */ - struct inotify_event event; - } eventbuf; + int processed_bytes = 0; - bytes = read(fd, &eventbuf.buffer, sizeof(eventbuf.buffer)); + char eventbuf[sizeof(struct inotify_event) + NAME_MAX + 1]; + + bytes = read(fd, &eventbuf, sizeof(eventbuf)); acpid_log(LOG_DEBUG, "inotify read bytes: %d", bytes); @@ -68,44 +67,52 @@ return; } - acpid_log(LOG_DEBUG, "inotify name len: %d", eventbuf.event.len); - - const int dnsize = 256; + const int dnsize = NAME_MAX + 1; char devname[dnsize]; - /* if a name is included */ - if (eventbuf.event.len > 0) { - /* devname = ACPID_INPUTLAYERDIR + "/" + pevent -> name */ - strcpy(devname, ACPID_INPUTLAYERDIR); - strcat(devname, "/"); - strncat(devname, eventbuf.event.name, dnsize - strlen(devname) - 1); - } - - /* if this is a create */ - if (eventbuf.event.mask & IN_CREATE) { - acpid_log(LOG_DEBUG, "inotify about to open: %s", devname); - - open_inputfile(devname); - } + /* while there are still messages in eventbuf */ + while (processed_bytes < bytes) { + struct inotify_event* curevent = (struct inotify_event *) + &eventbuf[processed_bytes]; + + acpid_log(LOG_DEBUG, "inotify name len: %d", curevent->len); + + /* if a name is included */ + if (curevent->len > 0) { + /* devname = ACPID_INPUTLAYERDIR + "/" + pevent -> name */ + strcpy(devname, ACPID_INPUTLAYERDIR); + strcat(devname, "/"); + strncat(devname, curevent->name, dnsize - strlen(devname) - 1); + } + + /* if this is a create */ + if (curevent->mask & IN_CREATE) { + acpid_log(LOG_DEBUG, "inotify about to open: %s", devname); + + open_inputfile(devname); + } + + /* if this is a delete */ + if (curevent->mask & IN_DELETE) { + /* struct connection *c; */ - /* if this is a delete */ - if (eventbuf.event.mask & IN_DELETE) { - /* struct connection *c; */ - - acpid_log(LOG_DEBUG, "inotify received a delete for: %s", devname); + acpid_log(LOG_DEBUG, "inotify received a delete for: %s", devname); #if 0 -/* Switching back to the original ENODEV detection scheme. See +/* Switching back to the original ENODEV detection scheme. See process_input() in input_layer.c. */ /* keeping this for future reference */ - /* search for the event file in the connection list */ - /* ??? Or should we just have a delete_connection_name()? */ - c = find_connection_name(devname); - - /* close that connection if found */ - if (c) - delete_connection(c->fd); + /* search for the event file in the connection list */ + /* ??? Or should we just have a delete_connection_name()? */ + c = find_connection_name(devname); + + /* close that connection if found */ + if (c) + delete_connection(c->fd); #endif + } + + processed_bytes += sizeof(struct inotify_event) + curevent->len; } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/acpid-2.0.27/kacpimon/Makefile.in new/acpid-2.0.28/kacpimon/Makefile.in --- old/acpid-2.0.27/kacpimon/Makefile.in 2016-03-16 00:24:09.273228067 +0100 +++ new/acpid-2.0.28/kacpimon/Makefile.in 2016-09-15 21:59:53.905695862 +0200 @@ -281,6 +281,7 @@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@
