Author: emaste
Date: Wed Mar 28 17:16:16 2018
New Revision: 331690
URL: https://svnweb.freebsd.org/changeset/base/331690
Log:
MFC r324707: embed_mfs: add error handling, usage
Ensure that we are called with two arguments, and that the output file
is writable. Also, if we cannot find the mfs section report the output
file name rather than "kernel", as this script may be used with other
than kernels.
Sponsored by: The FreeBSD Foundation
Modified:
stable/11/sys/tools/embed_mfs.sh
Directory Properties:
stable/11/ (props changed)
Modified: stable/11/sys/tools/embed_mfs.sh
==============================================================================
--- stable/11/sys/tools/embed_mfs.sh Wed Mar 28 16:58:24 2018
(r331689)
+++ stable/11/sys/tools/embed_mfs.sh Wed Mar 28 17:16:16 2018
(r331690)
@@ -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`
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "[email protected]"