1*6573Sphitran# -*-Shell-script-*- 2*6573Sphitran# 3*6573Sphitran# hal-functions.sh: This file contains functions to be used by most or all 4*6573Sphitran# hal shell scripts 5*6573Sphitran# hal-system-lcd-get-brightness.sh 6*6573Sphitran# 7*6573Sphitran# Licensed under the Academic Free License version 2.1 8*6573Sphitran# 9*6573Sphitran 10*6573Sphitranhal_check_priv() { 11*6573Sphitran if [ "$HAVE_POLKIT" = "1" -a -n $HAL_METHOD_INVOKED_BY_SYSTEMBUS_CONNECTION_NAME ]; then 12*6573Sphitran ACTION=$1 13*6573Sphitran PK_RESULT=`hal-is-caller-privileged --udi $UDI --action $ACTION \ 14*6573Sphitran --caller $HAL_METHOD_INVOKED_BY_SYSTEMBUS_CONNECTION_NAME` 15*6573Sphitran RET=$? 16*6573Sphitran if [ "$RET" != "0" ]; then 17*6573Sphitran echo "org.freedesktop.Hal.Device.Error" >&2 18*6573Sphitran echo "Cannot determine if caller is privileged" >&2 19*6573Sphitran exit 1 20*6573Sphitran fi 21*6573Sphitran if [ "$PK_RESULT" != "yes" ] ;then 22*6573Sphitran echo "org.freedesktop.Hal.Device.PermissionDeniedByPolicy" >&2 23*6573Sphitran echo "$ACTION $PK_RESULT <-- (action, result)" >&2 24*6573Sphitran exit 1 25*6573Sphitran fi 26*6573Sphitran fi 27*6573Sphitran} 28*6573Sphitran 29*6573Sphitranhal_call_backend() { 30*6573Sphitran PROGRAM=`basename $0` 31*6573Sphitran if [ -n "$HALD_UNAME_S" -a -x ./$HALD_UNAME_S/$PROGRAM-$HALD_UNAME_S ]; then 32*6573Sphitran ./$HALD_UNAME_S/$PROGRAM-$HALD_UNAME_S $@ 33*6573Sphitran else 34*6573Sphitran echo "org.freedesktop.Hal.Device.UnknownError" >&2 35*6573Sphitran echo "No back-end for your operating system" >&2 36*6573Sphitran exit 1 37*6573Sphitran fi 38*6573Sphitran} 39*6573Sphitran 40*6573Sphitranhal_exec_backend() { 41*6573Sphitran PROGRAM=`basename $0` 42*6573Sphitran if [ -n "$HALD_UNAME_S" -a -x ./$HALD_UNAME_S/$PROGRAM-$HALD_UNAME_S ]; then 43*6573Sphitran exec ./$HALD_UNAME_S/$PROGRAM-$HALD_UNAME_S $@ 44*6573Sphitran else 45*6573Sphitran echo "org.freedesktop.Hal.Device.UnknownError" >&2 46*6573Sphitran echo "No back-end for your operating system" >&2 47*6573Sphitran exit 1 48*6573Sphitran fi 49*6573Sphitran} 50