summaryrefslogtreecommitdiff
path: root/src/extras/rule_generator/rule_generator.functions
diff options
context:
space:
mode:
authorKay Sievers <kay.sievers@vrfy.org>2012-01-10 01:34:15 +0100
committerKay Sievers <kay.sievers@vrfy.org>2012-01-10 01:34:15 +0100
commit912541b0246ef315d4d851237483b98c9dd3f992 (patch)
treeadf2c660675d1953a653aba627bf365e7c5aa1f3 /src/extras/rule_generator/rule_generator.functions
parentebda27438b66d179c4ba4ac74bbe20df2d57446e (diff)
tabs are as useful as a hole in the head
Diffstat (limited to 'src/extras/rule_generator/rule_generator.functions')
-rw-r--r--src/extras/rule_generator/rule_generator.functions126
1 files changed, 63 insertions, 63 deletions
diff --git a/src/extras/rule_generator/rule_generator.functions b/src/extras/rule_generator/rule_generator.functions
index 0f1b73850e..2eec1b6abf 100644
--- a/src/extras/rule_generator/rule_generator.functions
+++ b/src/extras/rule_generator/rule_generator.functions
@@ -20,94 +20,94 @@ PATH='/usr/bin:/bin:/usr/sbin:/sbin'
# Read a single line from file $1 in the $DEVPATH directory.
# The function must not return an error even if the file does not exist.
sysread() {
- local file="$1"
- [ -e "/sys$DEVPATH/$file" ] || return 0
- local value
- read value < "/sys$DEVPATH/$file" || return 0
- echo "$value"
+ local file="$1"
+ [ -e "/sys$DEVPATH/$file" ] || return 0
+ local value
+ read value < "/sys$DEVPATH/$file" || return 0
+ echo "$value"
}
sysreadlink() {
- local file="$1"
- [ -e "/sys$DEVPATH/$file" ] || return 0
- readlink -f /sys$DEVPATH/$file 2> /dev/null || true
+ local file="$1"
+ [ -e "/sys$DEVPATH/$file" ] || return 0
+ readlink -f /sys$DEVPATH/$file 2> /dev/null || true
}
# Return true if a directory is writeable.
writeable() {
- if ln -s test-link $1/.is-writeable 2> /dev/null; then
- rm -f $1/.is-writeable
- return 0
- else
- return 1
- fi
+ if ln -s test-link $1/.is-writeable 2> /dev/null; then
+ rm -f $1/.is-writeable
+ return 0
+ else
+ return 1
+ fi
}
# Create a lock file for the current rules file.
lock_rules_file() {
- RUNDIR=$(udevadm info --run)
- [ -e "$RUNDIR" ] || return 0
-
- RULES_LOCK="$RUNDIR/.lock-${RULES_FILE##*/}"
-
- retry=30
- while ! mkdir $RULES_LOCK 2> /dev/null; do
- if [ $retry -eq 0 ]; then
- echo "Cannot lock $RULES_FILE!" >&2
- exit 2
- fi
- sleep 1
- retry=$(($retry - 1))
- done
+ RUNDIR=$(udevadm info --run)
+ [ -e "$RUNDIR" ] || return 0
+
+ RULES_LOCK="$RUNDIR/.lock-${RULES_FILE##*/}"
+
+ retry=30
+ while ! mkdir $RULES_LOCK 2> /dev/null; do
+ if [ $retry -eq 0 ]; then
+ echo "Cannot lock $RULES_FILE!" >&2
+ exit 2
+ fi
+ sleep 1
+ retry=$(($retry - 1))
+ done
}
unlock_rules_file() {
- [ "$RULES_LOCK" ] || return 0
- rmdir $RULES_LOCK || true
+ [ "$RULES_LOCK" ] || return 0
+ rmdir $RULES_LOCK || true
}
# Choose the real rules file if it is writeable or a temporary file if not.
# Both files should be checked later when looking for existing rules.
choose_rules_file() {
- RUNDIR=$(udevadm info --run)
- local tmp_rules_file="$RUNDIR/tmp-rules--${RULES_FILE##*/}"
- [ -e "$RULES_FILE" -o -e "$tmp_rules_file" ] || PRINT_HEADER=1
-
- if writeable ${RULES_FILE%/*}; then
- RO_RULES_FILE='/dev/null'
- else
- RO_RULES_FILE=$RULES_FILE
- RULES_FILE=$tmp_rules_file
- fi
+ RUNDIR=$(udevadm info --run)
+ local tmp_rules_file="$RUNDIR/tmp-rules--${RULES_FILE##*/}"
+ [ -e "$RULES_FILE" -o -e "$tmp_rules_file" ] || PRINT_HEADER=1
+
+ if writeable ${RULES_FILE%/*}; then
+ RO_RULES_FILE='/dev/null'
+ else
+ RO_RULES_FILE=$RULES_FILE
+ RULES_FILE=$tmp_rules_file
+ fi
}
# Return the name of the first free device.
raw_find_next_available() {
- local links="$1"
-
- local basename=${links%%[ 0-9]*}
- local max=-1
- for name in $links; do
- local num=${name#$basename}
- [ "$num" ] || num=0
- [ $num -gt $max ] && max=$num
- done
-
- local max=$(($max + 1))
- # "name0" actually is just "name"
- [ $max -eq 0 ] && return
- echo "$max"
+ local links="$1"
+
+ local basename=${links%%[ 0-9]*}
+ local max=-1
+ for name in $links; do
+ local num=${name#$basename}
+ [ "$num" ] || num=0
+ [ $num -gt $max ] && max=$num
+ done
+
+ local max=$(($max + 1))
+ # "name0" actually is just "name"
+ [ $max -eq 0 ] && return
+ echo "$max"
}
# Find all rules matching a key (with action) and a pattern.
find_all_rules() {
- local key="$1"
- local linkre="$2"
- local match="$3"
-
- local search='.*[[:space:],]'"$key"'"('"$linkre"')".*'
- echo $(sed -n -r -e 's/^#.*//' -e "${match}s/${search}/\1/p" \
- $RO_RULES_FILE \
- $([ -e $RULES_FILE ] && echo $RULES_FILE) \
- 2>/dev/null)
+ local key="$1"
+ local linkre="$2"
+ local match="$3"
+
+ local search='.*[[:space:],]'"$key"'"('"$linkre"')".*'
+ echo $(sed -n -r -e 's/^#.*//' -e "${match}s/${search}/\1/p" \
+ $RO_RULES_FILE \
+ $([ -e $RULES_FILE ] && echo $RULES_FILE) \
+ 2>/dev/null)
}