From 4a69075b0a11a4ca982d4daa8b30dd6117e845d4 Mon Sep 17 00:00:00 2001 From: Dave Reisner Date: Fri, 3 Jun 2011 10:41:35 -0400 Subject: functions: refactor all_modules sanitize and print during module discovery. We also strip path names during this process and null terminate path names for safety. Signed-off-by: Dave Reisner --- functions | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'functions') diff --git a/functions b/functions index f179135..142b974 100644 --- a/functions +++ b/functions @@ -52,11 +52,15 @@ auto_modules () all_modules () { - mods=$(find ${MODULEDIR} -name '*.ko' -or -name '*.ko.gz' 2>/dev/null | grep $@ | sort -u) + local -i count=0 + while read -r -d '' mod; do + (( ++count )) + mod=${mod##*/} + mod="${mod%.ko.*}" + printf '%s\n' "${mod//-/_}" + done < <(find "$MODULEDIR" -name '*.ko*' -print0 2>/dev/null | grep -Zz "$@") - echo "${mods}" - [ -z "${mods}" ] && return 1 - return 0 + (( count )) } checked_modules () -- cgit v1.2.3-24-g4f1b