aboutsummaryrefslogtreecommitdiff
path: root/sys/tools/embed_mfs.sh
diff options
context:
space:
mode:
Diffstat (limited to 'sys/tools/embed_mfs.sh')
-rw-r--r--sys/tools/embed_mfs.sh11
1 files changed, 10 insertions, 1 deletions
diff --git a/sys/tools/embed_mfs.sh b/sys/tools/embed_mfs.sh
index a7ac80c8f8d3..780ad891ae06 100644
--- a/sys/tools/embed_mfs.sh
+++ b/sys/tools/embed_mfs.sh
@@ -32,13 +32,22 @@
# $2: MFS image filename
#
+if [ $# -ne 2 ]; then
+ echo "usage: $(basename $0) target mfs_image"
+ exit 0
+fi
+if [ ! -w "$1" ]; then
+ echo $1 not writable
+ exit 1
+fi
+
mfs_size=`stat -f '%z' $2 2> /dev/null`
# If we can't determine MFS image size - bail.
[ -z ${mfs_size} ] && echo "Can't determine MFS image size" && exit 1
sec_info=`elfdump -c $1 2> /dev/null | grep -A 5 -E "sh_name: oldmfs$"`
# If we can't find the mfs section within the given kernel - bail.
-[ -z "${sec_info}" ] && echo "Can't locate mfs section within kernel" && exit 1
+[ -z "${sec_info}" ] && echo "Can't locate mfs section within $1" && exit 1
sec_size=`echo "${sec_info}" | awk '/sh_size/ {print $2}' 2> /dev/null`
sec_start=`echo "${sec_info}" | awk '/sh_offset/ {print $2}' 2> /dev/null`