Date: Tuesday, November 1, 2022 @ 19:07:11
  Author: foutrelis
Revision: 459958

Re-add referenced patch

Added:
  sbsigntools/trunk/0.9.4-fix-pe-coff-checksum.patch

----------------------------------+
 0.9.4-fix-pe-coff-checksum.patch |   43 +++++++++++++++++++++++++++++++++++++
 1 file changed, 43 insertions(+)

Added: 0.9.4-fix-pe-coff-checksum.patch
===================================================================
--- 0.9.4-fix-pe-coff-checksum.patch                            (rev 0)
+++ 0.9.4-fix-pe-coff-checksum.patch    2022-11-01 19:07:11 UTC (rev 459958)
@@ -0,0 +1,43 @@
+From e9f13a7c4c19ed4ef12f226821bbcd2295d1af73 Mon Sep 17 00:00:00 2001
+From: Heinrich Schuchardt <[email protected]>
+Date: Thu, 10 Mar 2022 20:41:04 +0100
+Subject: Fix PE/COFF checksum calculation
+
+Gbp-Pq: fix_checksum_calc.patch.
+---
+ src/image.c | 6 +-----
+ 1 file changed, 1 insertion(+), 5 deletions(-)
+
+diff --git a/src/image.c b/src/image.c
+index 5697296..8ac79dd 100644
+--- a/src/image.c
++++ b/src/image.c
+@@ -162,7 +162,6 @@ static void image_pecoff_update_checksum(struct image 
*image)
+ {
+       bool is_signed = image->sigsize && image->sigbuf;
+       uint32_t checksum;
+-      struct cert_table_header *cert_table = image->cert_table;
+ 
+       /* We carefully only include the signature data in the checksum (and
+        * in the file length) if we're outputting the signature.  Otherwise,
+@@ -180,16 +179,13 @@ static void image_pecoff_update_checksum(struct image 
*image)
+                       (void *)(image->checksum + 1));
+ 
+       if (is_signed) {
+-              checksum = csum_bytes(checksum,
+-                              cert_table, sizeof(*cert_table));
+-
+               checksum = csum_bytes(checksum, image->sigbuf, image->sigsize);
+       }
+ 
+       checksum += image->data_size;
+ 
+       if (is_signed)
+-              checksum += sizeof(*cert_table) + image->sigsize;
++              checksum += image->sigsize;
+ 
+       *(image->checksum) = cpu_to_le32(checksum);
+ }
+-- 
+cgit v1.1
+

Reply via email to