Allow to set options '--persistent' and/or '--credential' through
environment variables. If not defined, defaults are used ('no').
Anyway, command-line arguments have priority over environment variables.
Signed-off-by: Unai Martinez-Corral <unai.martinezcorral@ehu.eus>
Reviewed-by: Laurent Vivier <laurent@vivier.eu>
---
scripts/qemu-binfmt-conf.sh | 18 +++++++++++-------
1 file changed, 11 insertions(+), 7 deletions(-)
diff --git a/scripts/qemu-binfmt-conf.sh b/scripts/qemu-binfmt-conf.sh
index ca15ff8092..ad9ae731a0 100755
--- a/scripts/qemu-binfmt-conf.sh
+++ b/scripts/qemu-binfmt-conf.sh
@@ -186,9 +186,11 @@ Usage: qemu-binfmt-conf.sh [--qemu-path PATH][--debian][--systemd CPU]
(default: $SYSTEMDDIR or $DEBIANDIR)
--credential: if present, credential and security tokens are
calculated according to the binary to interpret
+ ($QEMU_CREDENTIAL=yes)
--persistent: if present, the interpreter is loaded when binfmt is
configured and remains in memory. All future uses
are cloned from the open file.
+ ($QEMU_PERSISTENT=yes)
To import templates with update-binfmts, use :
@@ -255,10 +257,10 @@ qemu_check_systemd() {
qemu_generate_register() {
flags=""
- if [ "x$CREDENTIAL" = "xyes" ] ; then
+ if [ "x$QEMU_CREDENTIAL" = "xyes" ] ; then
flags="OC"
fi
- if [ "x$PERSISTENT" = "xyes" ] ; then
+ if [ "x$QEMU_PERSISTENT" = "xyes" ] ; then
flags="${flags}F"
fi
@@ -281,7 +283,7 @@ package qemu-$cpu
interpreter $qemu
magic $magic
mask $mask
-credential $CREDENTIAL
+credential $QEMU_CREDENTIAL
EOF
}
@@ -320,8 +322,10 @@ SYSTEMDDIR="/etc/binfmt.d"
DEBIANDIR="/usr/share/binfmts"
QEMU_PATH=/usr/local/bin
-CREDENTIAL=no
-PERSISTENT=no
+
+QEMU_PERSISTENT="${QEMU_PERSISTENT:-no}"
+QEMU_CREDENTIAL="${QEMU_CREDENTIAL:-no}"
+
QEMU_SUFFIX=""
options=$(getopt -o ds:Q:S:e:hcp -l debian,systemd:,qemu-path:,qemu-suffix:,exportdir:,help,credential,persistent -- "$@")
@@ -373,10 +377,10 @@ while true ; do
exit 1
;;
-c|--credential)
- CREDENTIAL="yes"
+ QEMU_CREDENTIAL="yes"
;;
-p|--persistent)
- PERSISTENT="yes"
+ QEMU_PERSISTENT="yes"
;;
*)
break
--
2.21.0