summaryrefslogtreecommitdiff
path: root/sign-modules
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2024-07-14 02:28:18 +0000
committerCoprDistGit <infra@openeuler.org>2024-07-14 02:28:18 +0000
commit1df7426ab5786c466491e3e297da90a5dbfd2b4d (patch)
treed3cb7211bb1561271072e478058215e77820711e /sign-modules
parentd5ed7f712cbda15b914c6dfb5f72f714eb8b7835 (diff)
Diffstat (limited to 'sign-modules')
-rw-r--r--sign-modules25
1 files changed, 25 insertions, 0 deletions
diff --git a/sign-modules b/sign-modules
new file mode 100644
index 0000000..020905f
--- /dev/null
+++ b/sign-modules
@@ -0,0 +1,25 @@
+#! /bin/bash
+
+moddir=$1
+
+modules=`find $moddir -name *.ko`
+
+MODSECKEY="./signing_key.pem"
+MODPUBKEY="./signing_key.x509"
+
+for mod in $modules
+do
+ dir=`dirname $mod`
+ file=`basename $mod`
+
+ ./scripts/sign-file sha256 ${MODSECKEY} ${MODPUBKEY} ${dir}/${file}
+ rm -f ${dir}/${file}.{sig,dig}
+done
+
+RANDOMMOD=$(find $moddir -type f -name '*.ko' | sort -R | tail -n 1)
+if [ "~Module signature appended~" != "$(tail -c 28 $RANDOMMOD)" ]; then
+ echo "*** Modules are unsigned! ***"
+ exit 1
+fi
+
+exit 0