summaryrefslogtreecommitdiffstats
path: root/mkinitcpio
diff options
context:
space:
mode:
authorDave Reisner <dreisner@archlinux.org>2016-07-02 21:18:11 +0200
committerDave Reisner <dreisner@archlinux.org>2016-07-02 21:18:11 +0200
commitd73d34e017ecb0e89c2de8e39da6b14afd6c5f1c (patch)
treee28dcd95896506fab521243fa71a8aba0d455f97 /mkinitcpio
parent14487ea9a6104c17b00c6fa7bcb65c617c7490c8 (diff)
downloadmkinitcpio-d73d34e017ecb0e89c2de8e39da6b14afd6c5f1c.tar.gz
mkinitcpio-d73d34e017ecb0e89c2de8e39da6b14afd6c5f1c.tar.xz
error out if asked to extract a kver from image on non-x86v20
Version extraction only works on x86 (i686 and x86_64) kernels. ref: https://bugs.archlinux.org/task/43256
Diffstat (limited to 'mkinitcpio')
-rwxr-xr-xmkinitcpio8
1 files changed, 7 insertions, 1 deletions
diff --git a/mkinitcpio b/mkinitcpio
index 713c4b4..3e550d3 100755
--- a/mkinitcpio
+++ b/mkinitcpio
@@ -85,7 +85,7 @@ cleanup() {
}
resolve_kernver() {
- local kernel=$1 offset kver
+ local kernel=$1 arch= offset kver
if [[ -z $kernel ]]; then
uname -r
@@ -97,6 +97,12 @@ resolve_kernver() {
return 0
fi
+ arch=$(uname -m)
+ if [[ $arch != @(i686|x86_64) ]]; then
+ error "kernel version extraction from image not supported for \`%s' architecture" "$arch"
+ return 1
+ fi
+
if [[ ! -e $kernel ]]; then
error "specified kernel image does not exist: \`%s'" "$kernel"
return 1