Blame qemu-fix-extboot-signrom.patch

Mark McLoughlin dc170b
From ee595f99ba7ff80b46a736a06f7e53998d926563 Mon Sep 17 00:00:00 2001
Mark McLoughlin f4d6ad
From: Alexander Graf <agraf@suse.de>
Mark McLoughlin f4d6ad
Date: Sat, 1 Aug 2009 11:48:31 +0200
Mark McLoughlin f4d6ad
Subject: [PATCH] Fix checksum writing in signboot.sh
Mark McLoughlin f4d6ad
Mark McLoughlin f4d6ad
The printf command takes an octal value after \, so we have to convert
Mark McLoughlin f4d6ad
our decimal representation to octal first and then write it.
Mark McLoughlin f4d6ad
Mark McLoughlin f4d6ad
This unbreaks extboot signing. Multiboot wasn't affected yet because
Mark McLoughlin f4d6ad
the checksum was < 8.
Mark McLoughlin f4d6ad
Mark McLoughlin f4d6ad
Spotted and first patch by Glauber Costa <glommer@redhat.com>.
Mark McLoughlin f4d6ad
Printf idea by Paolo Bonzini <bonzini@gnu.org>.
Mark McLoughlin f4d6ad
Mark McLoughlin f4d6ad
(cherry picked from commit d8b69b34761f7b3fb8f476712b631d1dd3f1b2a5)
Mark McLoughlin f4d6ad
Mark McLoughlin f4d6ad
Signed-off-by: Alexander Graf <agraf@suse.de>
Mark McLoughlin f4d6ad
CC: Glauber Costa <glommer@redhat.com>
Mark McLoughlin f4d6ad
CC: Paolo Bonzini <bonzini@gnu.org>
Mark McLoughlin f4d6ad
CC: Jan Ondrej <ondrejj@salstar.sk>
Mark McLoughlin f4d6ad
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Mark McLoughlin f4d6ad
Signed-off-by: Mark McLoughlin <markmc@redhat.com>
Mark McLoughlin f4d6ad
Fedora-patch: qemu-fix-extboot-signrom.patch
Mark McLoughlin f4d6ad
---
Mark McLoughlin f4d6ad
 pc-bios/optionrom/signrom.sh |    3 ++-
Mark McLoughlin f4d6ad
 1 files changed, 2 insertions(+), 1 deletions(-)
Mark McLoughlin f4d6ad
Mark McLoughlin f4d6ad
diff --git a/pc-bios/optionrom/signrom.sh b/pc-bios/optionrom/signrom.sh
Mark McLoughlin f4d6ad
index 4322811..975b27d 100755
Mark McLoughlin f4d6ad
--- a/pc-bios/optionrom/signrom.sh
Mark McLoughlin f4d6ad
+++ b/pc-bios/optionrom/signrom.sh
Mark McLoughlin f4d6ad
@@ -39,7 +39,8 @@ done
Mark McLoughlin f4d6ad
 
Mark McLoughlin f4d6ad
 sum=$(( $sum % 256 ))
Mark McLoughlin f4d6ad
 sum=$(( 256 - $sum ))
Mark McLoughlin f4d6ad
+sum_octal=$( printf "%o" $sum )
Mark McLoughlin f4d6ad
 
Mark McLoughlin f4d6ad
 # and write the output file
Mark McLoughlin f4d6ad
 cp "$1" "$2"
Mark McLoughlin f4d6ad
-printf "\\$sum" | dd of="$2" bs=1 count=1 seek=$size conv=notrunc 2>/dev/null
Mark McLoughlin f4d6ad
+printf "\\$sum_octal" | dd of="$2" bs=1 count=1 seek=$size conv=notrunc 2>/dev/null
Mark McLoughlin f4d6ad
-- 
Mark McLoughlin f4d6ad
1.6.2.5
Mark McLoughlin f4d6ad