summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormbm <mbm@3c298f89-4303-0410-b956-a3cf2f4a3e73>2006-11-20 19:30:50 +0000
committermbm <mbm@3c298f89-4303-0410-b956-a3cf2f4a3e73>2006-11-20 19:30:50 +0000
commit4fae1f4d2d72cab22841258a92474e769f32d6f8 (patch)
treedd43e6d9ba3b123ea3fbe594443cab66eded6964
parentb6fee4a3b3fcbf1b3117d1832d970a8b1b58dc11 (diff)
strtok helper function
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@5592 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rwxr-xr-xpackage/base-files/default/etc/functions.sh24
1 files changed, 24 insertions, 0 deletions
diff --git a/package/base-files/default/etc/functions.sh b/package/base-files/default/etc/functions.sh
index f7cb878bc9..aa5b000644 100755
--- a/package/base-files/default/etc/functions.sh
+++ b/package/base-files/default/etc/functions.sh
@@ -118,3 +118,27 @@ find_mtd_part() {
echo "${PART:+/dev/mtdblock/$PART}"
}
+strtok() { # <string> <variable> [<separator>] ...
+ local right
+ local left="$1"
+ local count=0
+
+ shift
+
+ while [ $# -gt 1 ]; do
+ right="${left%%$2*}"
+
+ [ "$right" = "$left" ] && break
+
+ left="${left#$right$2}"
+
+ export $1="$right"; count=$((count+1))
+ shift 2
+ done
+
+ if [ $# -gt 0 -a "$left" ]; then
+ export $1="$left"; count=$((count+1))
+ fi
+
+ return $count
+}