Files
scst/scripts/sign-modules
Bart Van Assche a444b28dfa scripts/sign-modules: Do not try to sign modules CONFIG_MODULE_SIG=n
This fixes the build on e.g. Debian 9. See also
https://sourceforge.net/p/scst/tickets/30/.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8617 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-10-11 02:08:09 +00:00

27 lines
896 B
Bash
Executable File

#!/bin/bash
# Parse modules.order and sign the modules found in that file.
if [ -z "$KDIR" ]; then
echo "Error: \$KDIR has not been set"
exit 1
fi
scst_dir=$(dirname "$(cd "$(dirname "$0")" && pwd)")
if [ ! -e "${KDIR}/scripts/sign-file" ]; then
echo "Not signing modules because no sign-file executable"
exit
fi
[ -e "${scst_dir}/scst/src/certs/scst_module_key.priv" ] || exit 0
[ -e "${scst_dir}/scst/src/certs/scst_module_key.der" ] || exit 0
CONFIG_MODULE_SIG_HASH=$(sed -n 's/^CONFIG_MODULE_SIG_HASH="\([^"]*\)"$/\1/p' "${KDIR}/.config" | { read -r line; [ -n "$line" ] && echo "$line" || echo sha256; })
sed 's,^kernel/,,' < modules.order | \
while read -r f; do
echo "Signing $f"
"${KDIR}/scripts/sign-file" "${CONFIG_MODULE_SIG_HASH}" "${scst_dir}/scst/src/certs/scst_module_key.priv" "${scst_dir}/scst/src/certs/scst_module_key.der" "$f" || exit $?
done