kernel: Update kernel 4.4 to 4.4.0
[openwrt/openwrt.git] / include / shell.sh
index 6ee0cf6030ac5e0a71d7be1c2438c58ee9724caf..6389304c24bdd7f798b3a71f957dbfaad9cfa3e5 100644 (file)
@@ -13,3 +13,25 @@ isset() {
        eval "var=\"\${$1}\""
        [ -n "$var" ]
 }
+
+trapret() {(
+       local retvals="$1"; shift
+       local cmd="$1"; shift
+       for retval in $(echo $retvals); do
+               local trap_$retval=1
+       done
+       "$cmd" "$@" || {
+               local retval="$?"
+               eval "trapped=\${trap_$retval}"
+               [ -n "$trapped" ] || {
+                       return $retval
+               }
+       }
+)}
+
+md5s() {
+       cat "$@" | (
+               md5sum 2>/dev/null ||
+               md5
+       ) | awk '{print $1}'
+}