[OE-core] [PATCH] dbus: Fix pid file in dbus init script
Saul Wold
sgw at linux.intel.com
Thu Aug 16 18:30:33 UTC 2012
On 08/10/2012 12:00 PM, Andy Ross wrote:
> The PIDFILE (/var/run/dbus/pid) referenced by /etc/init.d/dbus-1 did
> not match the path (/var/run/messagebus.pid) configured in
> /etc/dbus-1/system.conf, so the initscript could start the daemon, but
> not stop it. Also remove needless directory ownership logic
> (dbus-daemon drops its pid file as root before calling setuid).
>
> Signed-off-by: Andy Ross <andy.ross at windriver.com>
> ---
> meta/recipes-core/dbus/dbus-1.4.20/dbus-1.init | 11 +++--------
> meta/recipes-core/dbus/dbus-1.5.12/dbus-1.init | 11 +++--------
> 2 files changed, 6 insertions(+), 16 deletions(-)
>
> diff --git a/meta/recipes-core/dbus/dbus-1.4.20/dbus-1.init b/meta/recipes-core/dbus/dbus-1.4.20/dbus-1.init
> index 4abc4cb..17b58ed 100644
> --- a/meta/recipes-core/dbus/dbus-1.4.20/dbus-1.init
> +++ b/meta/recipes-core/dbus/dbus-1.4.20/dbus-1.init
> @@ -18,9 +18,8 @@ set -e
>
> DAEMON=/usr/bin/dbus-daemon
> NAME=dbus
> -DAEMONUSER=messagebus
> -PIDDIR=/var/run/dbus
> -PIDFILE=$PIDDIR/pid
> +DAEMONUSER=messagebus # must match /etc/dbus-1/system.conf
> +PIDFILE=/var/run/messagebus.pid # must match /etc/dbus-1/system.conf
> UUIDDIR=/var/lib/dbus
> DESC="system message bus"
> EVENTDIR=/etc/dbus-1/event.d
> @@ -38,11 +37,7 @@ test "$ENABLED" != "0" || exit 0
>
> start_it_up()
> {
> - if [ ! -d $PIDDIR ]; then
> - mkdir -p $PIDDIR
> - chown $DAEMONUSER $PIDDIR
> - chgrp $DAEMONUSER $PIDDIR
> - fi
> + mkdir -p "`dirname $PIDFILE`"
> if [ -e $PIDFILE ]; then
> PIDDIR=/proc/$(cat $PIDFILE)
> if [ -d ${PIDDIR} -a "$(readlink -f ${PIDDIR}/exe)" = "${DAEMON}" ]; then
> diff --git a/meta/recipes-core/dbus/dbus-1.5.12/dbus-1.init b/meta/recipes-core/dbus/dbus-1.5.12/dbus-1.init
> index 4abc4cb..17b58ed 100644
> --- a/meta/recipes-core/dbus/dbus-1.5.12/dbus-1.init
> +++ b/meta/recipes-core/dbus/dbus-1.5.12/dbus-1.init
> @@ -18,9 +18,8 @@ set -e
>
> DAEMON=/usr/bin/dbus-daemon
> NAME=dbus
> -DAEMONUSER=messagebus
> -PIDDIR=/var/run/dbus
> -PIDFILE=$PIDDIR/pid
> +DAEMONUSER=messagebus # must match /etc/dbus-1/system.conf
> +PIDFILE=/var/run/messagebus.pid # must match /etc/dbus-1/system.conf
> UUIDDIR=/var/lib/dbus
> DESC="system message bus"
> EVENTDIR=/etc/dbus-1/event.d
> @@ -38,11 +37,7 @@ test "$ENABLED" != "0" || exit 0
>
> start_it_up()
> {
> - if [ ! -d $PIDDIR ]; then
> - mkdir -p $PIDDIR
> - chown $DAEMONUSER $PIDDIR
> - chgrp $DAEMONUSER $PIDDIR
> - fi
> + mkdir -p "`dirname $PIDFILE`"
> if [ -e $PIDFILE ]; thenOn 08/10/2012 12:00 PM, Andy Ross wrote:> The PIDFILE (/var/run/dbus/pid) referenced by /etc/init.d/dbus-1 did
> not match the path (/var/run/messagebus.pid) configured in
> /etc/dbus-1/system.conf, so the initscript could start the daemon, but
> not stop it. Also remove needless directory ownership logic
> (dbus-daemon drops its pid file as root before calling setuid).
>
> Signed-off-by: Andy Ross <andy.ross at windriver.com>
> ---
> meta/recipes-core/dbus/dbus-1.4.20/dbus-1.init | 11 +++--------
> meta/recipes-core/dbus/dbus-1.5.12/dbus-1.init | 11 +++--------
> 2 files changed, 6 insertions(+), 16 deletions(-)
>
> diff --git a/meta/recipes-core/dbus/dbus-1.4.20/dbus-1.init b/meta/recipes-core/dbus/dbus-1.4.20/dbus-1.init
> index 4abc4cb..17b58ed 100644
> --- a/meta/recipes-core/dbus/dbus-1.4.20/dbus-1.init
> +++ b/meta/recipes-core/dbus/dbus-1.4.20/dbus-1.init
> @@ -18,9 +18,8 @@ set -e
>
> DAEMON=/usr/bin/dbus-daemon
> NAME=dbus
> -DAEMONUSER=messagebus
> -PIDDIR=/var/run/dbus
> -PIDFILE=$PIDDIR/pid
> +DAEMONUSER=messagebus # must match /etc/dbus-1/system.conf
> +PIDFILE=/var/run/messagebus.pid # must match /etc/dbus-1/system.conf
> UUIDDIR=/var/lib/dbus
> DESC="system message bus"
> EVENTDIR=/etc/dbus-1/event.d
> @@ -38,11 +37,7 @@ test "$ENABLED" != "0" || exit 0
>
> start_it_up()
> {
> - if [ ! -d $PIDDIR ]; then
> - mkdir -p $PIDDIR
> - chown $DAEMONUSER $PIDDIR
> - chgrp $DAEMONUSER $PIDDIR
> - fi
> + mkdir -p "`dirname $PIDFILE`"
> if [ -e $PIDFILE ]; then
> PIDDIR=/proc/$(cat $PIDFILE)
> if [ -d ${PIDDIR} -a "$(readlink -f ${PIDDIR}/exe)" = "${DAEMON}" ]; then
> diff --git a/meta/recipes-core/dbus/dbus-1.5.12/dbus-1.init b/meta/recipes-core/dbus/dbus-1.5.12/dbus-1.init
> index 4abc4cb..17b58ed 100644
> --- a/meta/recipes-core/dbus/dbus-1.5.12/dbus-1.init
> +++ b/meta/recipes-core/dbus/dbus-1.5.12/dbus-1.init
> @@ -18,9 +18,8 @@ set -e
>
> DAEMON=/usr/bin/dbus-daemon
> NAME=dbus
> -DAEMONUSER=messagebus
> -PIDDIR=/var/run/dbus
> -PIDFILE=$PIDDIR/pid
> +DAEMONUSER=messagebus # must match /etc/dbus-1/system.conf
> +PIDFILE=/var/run/messagebus.pid # must match /etc/dbus-1/system.conf
> UUIDDIR=/var/lib/dbus
> DESC="system message bus"
> EVENTDIR=/etc/dbus-1/event.d
> @@ -38,11 +37,7 @@ test "$ENABLED" != "0" || exit 0
>
> start_it_up()
> {
> - if [ ! -d $PIDDIR ]; then
> - mkdir -p $PIDDIR
> - chown $DAEMONUSER $PIDDIR
> - chgrp $DAEMONUSER $PIDDIR
> - fi
> + mkdir -p "`dirname $PIDFILE`"
> if [ -e $PIDFILE ]; then
> PIDDIR=/proc/$(cat $PIDFILE)
> if [ -d ${PIDDIR} -a "$(readlink -f ${PIDDIR}/exe)" = "${DAEMON}" ]; then
>
> PIDDIR=/proc/$(cat $PIDFILE)
> if [ -d ${PIDDIR} -a "$(readlink -f ${PIDDIR}/exe)" = "${DAEMON}" ]; then
>
Merged into OE-Core
Thanks
Sau!
More information about the Openembedded-core
mailing list