[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v21 07/33] libtasn1: Use grub_divmod64() for division
From: |
Gary Lin |
Subject: |
[PATCH v21 07/33] libtasn1: Use grub_divmod64() for division |
Date: |
Mon, 4 Nov 2024 15:31:40 +0800 |
Replace a 64-bit division with a call to grub_divmod64(), preventing
creation of __udivdi3() calls on 32-bit platforms.
Signed-off-by: Daniel Axtens <dja@axtens.net>
Signed-off-by: Gary Lin <glin@suse.com>
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
---
...tasn1-Use-grub_divmod64-for-division.patch | 31 +++++++++++++++++++
1 file changed, 31 insertions(+)
create mode 100644
grub-core/lib/libtasn1-patches/0005-libtasn1-Use-grub_divmod64-for-division.patch
diff --git
a/grub-core/lib/libtasn1-patches/0005-libtasn1-Use-grub_divmod64-for-division.patch
b/grub-core/lib/libtasn1-patches/0005-libtasn1-Use-grub_divmod64-for-division.patch
new file mode 100644
index 000000000..201df10f7
--- /dev/null
+++
b/grub-core/lib/libtasn1-patches/0005-libtasn1-Use-grub_divmod64-for-division.patch
@@ -0,0 +1,31 @@
+From 5ee39f0bb8b0b713f766c0fc83439d83ac2c0bf2 Mon Sep 17 00:00:00 2001
+From: Gary Lin <glin@suse.com>
+Date: Tue, 25 Jun 2024 16:32:50 +0800
+Subject: [PATCH 05/13] libtasn1: Use grub_divmod64() for division
+
+Replace a 64-bit division with a call to grub_divmod64(), preventing
+creation of __udivdi3() calls on 32-bit platforms.
+
+Signed-off-by: Daniel Axtens <dja@axtens.net>
+Signed-off-by: Gary Lin <glin@suse.com>
+Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
+---
+ grub-core/lib/libtasn1-grub/lib/parser_aux.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/grub-core/lib/libtasn1-grub/lib/parser_aux.c
b/grub-core/lib/libtasn1-grub/lib/parser_aux.c
+index c05bd2339..e4e4c0556 100644
+--- a/grub-core/lib/libtasn1-grub/lib/parser_aux.c
++++ b/grub-core/lib/libtasn1-grub/lib/parser_aux.c
+@@ -632,7 +632,7 @@ _asn1_ltostr (int64_t v, char str[LTOSTR_MAX_SIZE])
+ count = 0;
+ do
+ {
+- d = val / 10;
++ d = grub_divmod64(val, 10, NULL);
+ r = val - d * 10;
+ temp[start + count] = '0' + (char) r;
+ count++;
+--
+2.43.0
+
--
2.43.0
- [PATCH v21 00/33] Automatic Disk Unlock with TPM2, Gary Lin, 2024/11/04
- [PATCH v21 01/33] posix_wrap: tweaks in preparation for libtasn1, Gary Lin, 2024/11/04
- [PATCH v21 03/33] libtasn1: disable code not needed in grub, Gary Lin, 2024/11/04
- [PATCH v21 04/33] libtasn1: replace strcat() with strcpy() in _asn1_str_cat(), Gary Lin, 2024/11/04
- [PATCH v21 02/33] libtasn1: import libtasn1-4.19.0, Gary Lin, 2024/11/04
- [PATCH v21 05/33] libtasn1: replace strcat() with _asn1_str_cat(), Gary Lin, 2024/11/04
- [PATCH v21 08/33] libtasn1: fix the potential buffer overrun, Gary Lin, 2024/11/04
- [PATCH v21 09/33] asn1_test: include asn1_test.h only, Gary Lin, 2024/11/04
- [PATCH v21 07/33] libtasn1: Use grub_divmod64() for division,
Gary Lin <=
- [PATCH v21 15/33] asn1_test: enable the testcase only when GRUB_LONG_MAX is larger than GRUB_INT_MAX, Gary Lin, 2024/11/04
- [PATCH v21 16/33] libtasn1: compile into asn1 module, Gary Lin, 2024/11/04
- [PATCH v21 14/33] asn1_test: use the grub-specific functions and types, Gary Lin, 2024/11/04
- [PATCH v21 06/33] libtasn1: adjust the header paths in libtasn1.h, Gary Lin, 2024/11/04
- [PATCH v21 13/33] asn1_test: print the error messages with grub_printf(), Gary Lin, 2024/11/04
- [PATCH v21 11/33] asn1_test: return either 0 or 1 to reflect the results, Gary Lin, 2024/11/04
- [PATCH v21 10/33] asn1_test: rename the main functions to the test names, Gary Lin, 2024/11/04
- [PATCH v21 12/33] asn1_test: remove 'verbose' and the unnecessary printf(), Gary Lin, 2024/11/04
- [PATCH v21 17/33] asn1_test: test module for libtasn1, Gary Lin, 2024/11/04
- [PATCH v21 20/33] tss2: Add TPM2 buffer handling functions, Gary Lin, 2024/11/04