Fix build for 32-bit arches
Signed-off-by: Robbie Harwood <rharwood@redhat.com>
This commit is contained in:
parent
c7c4e0f825
commit
ed9353e1df
112
0001-Fix-format-strings-for-32-bit-arches.patch
Normal file
112
0001-Fix-format-strings-for-32-bit-arches.patch
Normal file
@ -0,0 +1,112 @@
|
|||||||
|
From 1f8d0985d59ed41e291398f937d32493898bd711 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Robbie Harwood <rharwood@redhat.com>
|
||||||
|
Date: Tue, 1 Feb 2022 17:37:14 -0500
|
||||||
|
Subject: [PATCH] Fix format strings for 32-bit arches
|
||||||
|
|
||||||
|
Sadly, in 2022, this remains a thing.
|
||||||
|
|
||||||
|
Signed-off-by: Robbie Harwood <rharwood@redhat.com>
|
||||||
|
---
|
||||||
|
src/cms_pe_common.c | 16 +++++++++-------
|
||||||
|
src/password.c | 7 ++++---
|
||||||
|
2 files changed, 13 insertions(+), 10 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/cms_pe_common.c b/src/cms_pe_common.c
|
||||||
|
index 964f0d9..3a3921b 100644
|
||||||
|
--- a/src/cms_pe_common.c
|
||||||
|
+++ b/src/cms_pe_common.c
|
||||||
|
@@ -49,7 +49,7 @@ check_pointer_and_size(cms_context *cms, Pe *pe, void *ptr, size_t size)
|
||||||
|
|
||||||
|
if (p + size > m + map_size)
|
||||||
|
cmsreterr(0, cms,
|
||||||
|
- "pointer %p is above mmap end at %p (%lu is %lu bytes past EOF at %lu)",
|
||||||
|
+ "pointer %p is above mmap end at %p (%lu is %lu bytes past EOF at %zu)",
|
||||||
|
(void *)((uintptr_t)p + size),
|
||||||
|
(void *)((uintptr_t)m + map_size),
|
||||||
|
p + size - m,
|
||||||
|
@@ -189,7 +189,7 @@ generate_digest(cms_context *cms, Pe *pe, int padded)
|
||||||
|
if (!check_pointer_and_size(cms, pe, hash_base, hash_size))
|
||||||
|
cmsgotoerr(error, cms, "PE header is invalid");
|
||||||
|
dprintf("beginning of hash");
|
||||||
|
- dprintf("digesting %lx + %lx", hash_base - map, hash_size);
|
||||||
|
+ dprintf("digesting %tx + %zx", hash_base - map, hash_size);
|
||||||
|
generate_digest_step(cms, hash_base, hash_size);
|
||||||
|
|
||||||
|
/* 5. Skip over the image checksum
|
||||||
|
@@ -209,7 +209,7 @@ generate_digest(cms_context *cms, Pe *pe, int padded)
|
||||||
|
cmsgotoerr(error, cms, "PE data directory is invalid");
|
||||||
|
|
||||||
|
generate_digest_step(cms, hash_base, hash_size);
|
||||||
|
- dprintf("digesting %lx + %lx", hash_base - map, hash_size);
|
||||||
|
+ dprintf("digesting %tx + %zx", hash_base - map, hash_size);
|
||||||
|
|
||||||
|
/* 8. Skip over the crt dir
|
||||||
|
* 9. Hash everything up to the end of the image header. */
|
||||||
|
@@ -222,7 +222,7 @@ generate_digest(cms_context *cms, Pe *pe, int padded)
|
||||||
|
cmsgotoerr(error, cms, "PE relocations table is invalid");
|
||||||
|
|
||||||
|
generate_digest_step(cms, hash_base, hash_size);
|
||||||
|
- dprintf("digesting %lx + %lx", hash_base - map, hash_size);
|
||||||
|
+ dprintf("digesting %tx + %zx", hash_base - map, hash_size);
|
||||||
|
|
||||||
|
/* 10. Set SUM_OF_BYTES_HASHED to the size of the header. */
|
||||||
|
hashed_bytes = pe32opthdr ? pe32opthdr->header_size
|
||||||
|
@@ -265,7 +265,7 @@ generate_digest(cms_context *cms, Pe *pe, int padded)
|
||||||
|
}
|
||||||
|
|
||||||
|
generate_digest_step(cms, hash_base, hash_size);
|
||||||
|
- dprintf("digesting %lx + %lx", hash_base - map, hash_size);
|
||||||
|
+ dprintf("digesting %tx + %zx", hash_base - map, hash_size);
|
||||||
|
|
||||||
|
hashed_bytes += hash_size;
|
||||||
|
}
|
||||||
|
@@ -285,10 +285,12 @@ generate_digest(cms_context *cms, Pe *pe, int padded)
|
||||||
|
memset(tmp_array, '\0', tmp_size);
|
||||||
|
memcpy(tmp_array, hash_base, hash_size);
|
||||||
|
generate_digest_step(cms, tmp_array, tmp_size);
|
||||||
|
- dprintf("digesting %lx + %lx", (unsigned long)tmp_array, tmp_size);
|
||||||
|
+ dprintf("digesting %tx + %zx", (ptrdiff_t)tmp_array,
|
||||||
|
+ tmp_size);
|
||||||
|
} else {
|
||||||
|
generate_digest_step(cms, hash_base, hash_size);
|
||||||
|
- dprintf("digesting %lx + %lx", hash_base - map, hash_size);
|
||||||
|
+ dprintf("digesting %tx + %zx", hash_base - map,
|
||||||
|
+ hash_size);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
dprintf("end of hash");
|
||||||
|
diff --git a/src/password.c b/src/password.c
|
||||||
|
index 644f362..05add9a 100644
|
||||||
|
--- a/src/password.c
|
||||||
|
+++ b/src/password.c
|
||||||
|
@@ -213,7 +213,7 @@ parse_pwfile_line(char *start, struct token_pass *tp)
|
||||||
|
dprintf("non-whitespace span is %zd", span);
|
||||||
|
|
||||||
|
if (line[span] == '\0') {
|
||||||
|
- dprintf("returning %ld", (line + span) - start);
|
||||||
|
+ dprintf("returning %td", (line + span) - start);
|
||||||
|
return (line + span) - start;
|
||||||
|
}
|
||||||
|
line[span] = '\0';
|
||||||
|
@@ -241,7 +241,7 @@ parse_pwfile_line(char *start, struct token_pass *tp)
|
||||||
|
dprintf("Setting token pass %p to { %p, %p }", tp, tp->token, tp->pass);
|
||||||
|
dprintf("token:\"%s\"", tp->token);
|
||||||
|
dprintf("pass:\"%s\"", tp->pass);
|
||||||
|
- dprintf("returning %ld", (line + span) - start);
|
||||||
|
+ dprintf("returning %td", (line + span) - start);
|
||||||
|
return (line + span) - start;
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -330,7 +330,8 @@ SECU_FilePasswd(PK11SlotInfo *slot, PRBool retry, void *arg)
|
||||||
|
if (c != '\0')
|
||||||
|
span++;
|
||||||
|
start += span;
|
||||||
|
- dprintf("start is file[%ld] == '\\x%02hhx'", start - file, start[0]);
|
||||||
|
+ dprintf("start is file[%td] == '\\x%02hhx'", start - file,
|
||||||
|
+ start[0]);
|
||||||
|
}
|
||||||
|
|
||||||
|
qsort(phrases, nphrases, sizeof(struct token_pass), token_pass_cmp);
|
||||||
|
--
|
||||||
|
2.34.1
|
||||||
|
|
@ -44,6 +44,8 @@ Source0: https://github.com/rhboot/pesign/releases/download/%{version}/pesign-%{
|
|||||||
Source1: certs.tar.xz
|
Source1: certs.tar.xz
|
||||||
Source2: pesign.py
|
Source2: pesign.py
|
||||||
|
|
||||||
|
Patch0001: 0001-Fix-format-strings-for-32-bit-arches.patch
|
||||||
|
|
||||||
%description
|
%description
|
||||||
This package contains the pesign utility for signing UEFI binaries as
|
This package contains the pesign utility for signing UEFI binaries as
|
||||||
well as other associated tools.
|
well as other associated tools.
|
||||||
|
Loading…
Reference in New Issue
Block a user