[PATCH 01/10] hal: Clean up scripts in tools

Victor Lowther victor.lowther at gmail.com
Tue Mar 25 18:48:32 PDT 2008


This patch series does a bit of refactoring and cleanup on the scripts in the
tools directory.  Comments welcome.

Do not create variables we don't need in hal-check-priv.
Unify variable declaration and initialization where appropriate.

More paranoid quotation in hal_call_backend and hal_exec_backend.
Use "$@" to ensure that args are passed without incorrect variable expansion.
---
 tools/hal-functions |   28 +++++++++++++---------------
 1 files changed, 13 insertions(+), 15 deletions(-)

diff --git a/tools/hal-functions b/tools/hal-functions
index 9b363c7..ec8db99 100755
--- a/tools/hal-functions
+++ b/tools/hal-functions
@@ -4,15 +4,13 @@
 #                       hal shell scripts
 
 hal_check_priv() {
-    if [ "$HAVE_POLKIT" = "1" -a -n $HAL_METHOD_INVOKED_BY_SYSTEMBUS_CONNECTION_NAME ]; then
-        local ACTION
-        local PK_RESULT
-        local RET
-        ACTION=$1
-        PK_RESULT=`hal-is-caller-privileged --udi $UDI --action $ACTION \
-            --caller $HAL_METHOD_INVOKED_BY_SYSTEMBUS_CONNECTION_NAME`
-        RET=$?
-        if [ "$RET" != "0" ]; then
+    if [ "$HAVE_POLKIT" = "1" ] && \
+		[ "$HAL_METHOD_INVOKED_BY_SYSTEMBUS_CONNECTION_NAME" ]; then
+        local ACTION=$1
+        local PK_RESULT="`hal-is-caller-privileged --udi $UDI \
+		--action $ACTION \
+            	--caller $HAL_METHOD_INVOKED_BY_SYSTEMBUS_CONNECTION_NAME`"
+        if [ $? -ne 0 ]; then
             echo "org.freedesktop.Hal.Device.Error" >&2
             echo "Cannot determine if caller is privileged" >&2
             exit 1
@@ -27,9 +25,9 @@ hal_check_priv() {
 
 hal_call_backend() {
     local PROGRAM
-    PROGRAM=$(basename $0)
-    if [ -n "$HALD_UNAME_S" -a -x ./$HALD_UNAME_S/$PROGRAM-$HALD_UNAME_S ]; then
-        ./$HALD_UNAME_S/$PROGRAM-$HALD_UNAME_S $@
+    PROGRAM="./$HALD_UNAME_S/$(basename $0)-$HALD_UNAME_S"
+    if [ "$HALD_UNAME_S" -a -x "$PROGRAM" ]; then
+        "$PROGRAM" "$@"
     else
         echo "org.freedesktop.Hal.Device.UnknownError" >&2
         echo "No back-end for your operating system" >&2
@@ -39,9 +37,9 @@ hal_call_backend() {
 
 hal_exec_backend() {
     local PROGRAM
-    PROGRAM=$(basename $0)
-    if [ -n "$HALD_UNAME_S" -a -x ./$HALD_UNAME_S/$PROGRAM-$HALD_UNAME_S ]; then
-        exec ./$HALD_UNAME_S/$PROGRAM-$HALD_UNAME_S $@
+    PROGRAM="./$HALD_UNAME_S/$(basename $0)-$HALD_UNAME_S"
+    if [ "$HALD_UNAME_S" -a -x "$PROGRAM" ]; then
+        exec "$PROGRAM" "$@"
     else
         echo "org.freedesktop.Hal.Device.UnknownError" >&2
         echo "No back-end for your operating system" >&2
-- 
1.5.4.3


More information about the hal mailing list