From: Gary Lin via Grub-devel <grub-devel@gnu.org>
To: The development of GNU GRUB <grub-devel@gnu.org>
Cc: Gary Lin <glin@suse.com>, Daniel Kiper <daniel.kiper@oracle.com>,
Hernan Gatta <hegatta@linux.microsoft.com>,
Daniel Axtens <dja@axtens.net>,
shkhisti@microsoft.com, jaskaran.khurana@microsoft.com,
christopher.co@microsoft.com, daniel.mihai@microsoft.com,
jaredz@redhat.com, development@efficientek.com,
jejb@linux.ibm.com, mchang@suse.com, patrick.colp@oracle.com,
Stefan Berger <stefanb@linux.ibm.com>,
Vladimir Serbinenko <phcoder@gmail.com>
Subject: [PATCH v23 13/33] asn1_test: print the error messages with grub_printf()
Date: Fri, 15 Nov 2024 15:34:41 +0800 [thread overview]
Message-ID: <20241115073506.2784-14-glin@suse.com> (raw)
In-Reply-To: <20241115073506.2784-1-glin@suse.com>
This commit replaces printf() and fprintf() with grub_printf() to print
the error messages for the testcases. Besides, asn1_strerror() is used
to convert the result code to strings instead of asn1_perror().
Signed-off-by: Daniel Axtens <dja@axtens.net>
Signed-off-by: Gary Lin <glin@suse.com>
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
---
...-the-error-messages-with-grub_printf.patch | 485 ++++++++++++++++++
1 file changed, 485 insertions(+)
create mode 100644 grub-core/lib/libtasn1-patches/0011-asn1_test-print-the-error-messages-with-grub_printf.patch
diff --git a/grub-core/lib/libtasn1-patches/0011-asn1_test-print-the-error-messages-with-grub_printf.patch b/grub-core/lib/libtasn1-patches/0011-asn1_test-print-the-error-messages-with-grub_printf.patch
new file mode 100644
index 000000000..aadd362cd
--- /dev/null
+++ b/grub-core/lib/libtasn1-patches/0011-asn1_test-print-the-error-messages-with-grub_printf.patch
@@ -0,0 +1,485 @@
+From af5f0a651de09e44e78177b988857acd3208c4b6 Mon Sep 17 00:00:00 2001
+From: Gary Lin <glin@suse.com>
+Date: Fri, 16 Aug 2024 15:00:42 +0800
+Subject: [PATCH 11/13] asn1_test: print the error messages with grub_printf()
+
+This commit replaces printf() and fprintf() with grub_printf() to print
+the error messages for the testcases. Besides, asn1_strerror() is used
+to convert the result code to strings instead of asn1_perror().
+
+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/tests/asn1/tests/CVE-2018-1000654.c | 8 +--
+ grub-core/tests/asn1/tests/Test_overflow.c | 14 ++---
+ grub-core/tests/asn1/tests/Test_simple.c | 21 ++++----
+ grub-core/tests/asn1/tests/Test_strings.c | 21 +++-----
+ .../tests/asn1/tests/object-id-decoding.c | 16 +++---
+ .../tests/asn1/tests/object-id-encoding.c | 26 ++++-----
+ grub-core/tests/asn1/tests/octet-string.c | 54 ++++++++-----------
+ grub-core/tests/asn1/tests/reproducers.c | 6 +--
+ 8 files changed, 67 insertions(+), 99 deletions(-)
+
+diff --git a/grub-core/tests/asn1/tests/CVE-2018-1000654.c b/grub-core/tests/asn1/tests/CVE-2018-1000654.c
+index 81448cde8..b78667900 100644
+--- a/grub-core/tests/asn1/tests/CVE-2018-1000654.c
++++ b/grub-core/tests/asn1/tests/CVE-2018-1000654.c
+@@ -38,8 +38,8 @@ test_CVE_2018_1000654 (void)
+ errorDescription);
+ if (result != ASN1_RECURSION)
+ {
+- asn1_perror (result);
+- printf ("ErrorDescription = %s\n\n", errorDescription);
++ grub_printf ("Error: %s\nErrorDescription = %s\n\n",
++ asn1_strerror (result), errorDescription);
+ return 1;
+ }
+
+@@ -50,8 +50,8 @@ test_CVE_2018_1000654 (void)
+ errorDescription);
+ if (result != ASN1_RECURSION)
+ {
+- asn1_perror (result);
+- printf ("ErrorDescription = %s\n\n", errorDescription);
++ grub_printf ("Error: %s\nErrorDescription = %s\n\n",
++ asn1_strerror (result), errorDescription);
+ return 1;
+ }
+
+diff --git a/grub-core/tests/asn1/tests/Test_overflow.c b/grub-core/tests/asn1/tests/Test_overflow.c
+index 9f9578a1f..ffac8507a 100644
+--- a/grub-core/tests/asn1/tests/Test_overflow.c
++++ b/grub-core/tests/asn1/tests/Test_overflow.c
+@@ -36,7 +36,7 @@ test_overflow (void)
+
+ if (l != -2L)
+ {
+- printf ("ERROR: asn1_get_length_der bignum (l %ld len %d)\n", l, len);
++ grub_printf ("ERROR: asn1_get_length_der bignum (l %ld len %d)\n", l, len);
+ return 1;
+ }
+ }
+@@ -57,8 +57,7 @@ test_overflow (void)
+
+ if (l != -2L)
+ {
+- printf ("ERROR: asn1_get_length_der intnum (l %ld len %d)\n", l,
+- len);
++ grub_printf ("ERROR: asn1_get_length_der intnum (l %ld len %d)\n", l, len);
+ return 1;
+ }
+ }
+@@ -79,8 +78,7 @@ test_overflow (void)
+
+ if (l != -4L)
+ {
+- printf ("ERROR: asn1_get_length_der overflow-small (l %ld len %d)\n",
+- l, len);
++ grub_printf ("ERROR: asn1_get_length_der overflow-small (l %ld len %d)\n", l, len);
+ return 1;
+ }
+ }
+@@ -101,8 +99,7 @@ test_overflow (void)
+
+ if (l != -4L)
+ {
+- printf ("ERROR: asn1_get_length_der overflow-large1 (l %ld len %d)\n",
+- l, len);
++ grub_printf ("ERROR: asn1_get_length_der overflow-large1 (l %ld len %d)\n", l, len);
+ return 1;
+ }
+ }
+@@ -123,8 +120,7 @@ test_overflow (void)
+
+ if (l != -2L)
+ {
+- printf ("ERROR: asn1_get_length_der overflow-large2 (l %ld len %d)\n",
+- l, len);
++ grub_printf ("ERROR: asn1_get_length_der overflow-large2 (l %ld len %d)\n", l, len);
+ return 1;
+ }
+ }
+diff --git a/grub-core/tests/asn1/tests/Test_simple.c b/grub-core/tests/asn1/tests/Test_simple.c
+index 12993bfba..dc70db191 100644
+--- a/grub-core/tests/asn1/tests/Test_simple.c
++++ b/grub-core/tests/asn1/tests/Test_simple.c
+@@ -94,7 +94,7 @@ test_simple (void)
+ result = asn1_encode_simple_der (etype, my_str, my_str_len, tl, &tl_len);
+ if (result != ASN1_VALUE_NOT_VALID)
+ {
+- fprintf (stderr, "asn1_encode_simple_der out of range etype\n");
++ grub_printf ("asn1_encode_simple_der out of range etype\n");
+ return 1;
+ }
+ }
+@@ -105,7 +105,7 @@ test_simple (void)
+ result = asn1_get_bit_der (der, 0, &ret_len, str, str_size, &bit_len);
+ if (result != ASN1_GENERIC_ERROR)
+ {
+- fprintf (stderr, "asn1_get_bit_der zero\n");
++ grub_printf ("asn1_get_bit_der zero\n");
+ return 1;
+ }
+
+@@ -129,7 +129,7 @@ test_simple (void)
+
+ if (der_len != tv[i].derlen || memcmp (der, tv[i].der, der_len) != 0)
+ {
+- fprintf (stderr, "asn1_bit_der iter %lu\n", (unsigned long) i);
++ grub_printf ("asn1_bit_der iter %lu\n", (unsigned long) i);
+ return 1;
+ }
+
+@@ -140,8 +140,7 @@ test_simple (void)
+ if (result != ASN1_SUCCESS || ret_len != tv[i].derlen
+ || bit_len != tv[i].bitlen)
+ {
+- fprintf (stderr, "asn1_get_bit_der iter %lu, err: %d\n",
+- (unsigned long) i, result);
++ grub_printf ("asn1_get_bit_der iter %lu, err: %d\n", (unsigned long) i, result);
+ return 1;
+ }
+ }
+@@ -163,7 +162,7 @@ test_simple (void)
+ if (result != ASN1_SUCCESS || ret_len != 5
+ || bit_len != 18 || memcmp (str, "\x6e\x5d\xc0", 3) != 0)
+ {
+- fprintf (stderr, "asn1_get_bit_der example\n");
++ grub_printf ("asn1_get_bit_der example\n");
+ return 1;
+ }
+
+@@ -171,7 +170,7 @@ test_simple (void)
+ asn1_bit_der (str, bit_len, der, &der_len);
+ if (der_len != 5 || memcmp (der, "\x04\x06\x6e\x5d\xc0", 5) != 0)
+ {
+- fprintf (stderr, "asn1_bit_der example roundtrip\n");
++ grub_printf ("asn1_bit_der example roundtrip\n");
+ return 1;
+ }
+
+@@ -184,7 +183,7 @@ test_simple (void)
+ if (result != ASN1_SUCCESS || ret_len != 5
+ || bit_len != 18 || memcmp (str, "\x6e\x5d\xe0", 3) != 0)
+ {
+- fprintf (stderr, "asn1_get_bit_der example padded\n");
++ grub_printf ("asn1_get_bit_der example padded\n");
+ return 1;
+ }
+
+@@ -192,7 +191,7 @@ test_simple (void)
+ asn1_bit_der (str, bit_len, der, &der_len);
+ if (der_len != 5 || memcmp (der, "\x04\x06\x6e\x5d\xc0", 5) != 0)
+ {
+- fprintf (stderr, "asn1_bit_der example roundtrip\n");
++ grub_printf ("asn1_bit_der example roundtrip\n");
+ return 1;
+ }
+
+@@ -206,7 +205,7 @@ test_simple (void)
+ if (result != ASN1_SUCCESS || ret_len != 6
+ || bit_len != 18 || memcmp (str, "\x6e\x5d\xc0", 3) != 0)
+ {
+- fprintf (stderr, "asn1_get_bit_der example long form\n");
++ grub_printf ("asn1_get_bit_der example long form\n");
+ return 1;
+ }
+
+@@ -214,7 +213,7 @@ test_simple (void)
+ asn1_bit_der (str, bit_len, der, &der_len);
+ if (der_len != 5 || memcmp (der, "\x04\x06\x6e\x5d\xc0", 5) != 0)
+ {
+- fprintf (stderr, "asn1_bit_der example roundtrip\n");
++ grub_printf ("asn1_bit_der example roundtrip\n");
+ return 1;
+ }
+
+diff --git a/grub-core/tests/asn1/tests/Test_strings.c b/grub-core/tests/asn1/tests/Test_strings.c
+index 2538f2558..65c30937f 100644
+--- a/grub-core/tests/asn1/tests/Test_strings.c
++++ b/grub-core/tests/asn1/tests/Test_strings.c
+@@ -89,17 +89,14 @@ test_strings (void)
+ tl, &tl_len);
+ if (ret != ASN1_SUCCESS)
+ {
+- fprintf (stderr, "Encoding error in %u: %s\n", i,
+- asn1_strerror (ret));
++ grub_printf ("Encoding error in %u: %s\n", i, asn1_strerror (ret));
+ return 1;
+ }
+ der_len = tl_len + tv[i].str_len;
+
+ if (der_len != tv[i].der_len || memcmp (tl, tv[i].der, tl_len) != 0)
+ {
+- fprintf (stderr,
+- "DER encoding differs in %u! (size: %u, expected: %u)\n",
+- i, der_len, tv[i].der_len);
++ grub_printf ("DER encoding differs in %u! (size: %u, expected: %u)\n", i, der_len, tv[i].der_len);
+ return 1;
+ }
+
+@@ -109,16 +106,13 @@ test_strings (void)
+ &str_len);
+ if (ret != ASN1_SUCCESS)
+ {
+- fprintf (stderr, "Decoding error in %u: %s\n", i,
+- asn1_strerror (ret));
++ grub_printf ("Decoding error in %u: %s\n", i, asn1_strerror (ret));
+ return 1;
+ }
+
+ if (str_len != tv[i].str_len || memcmp (str, tv[i].str, str_len) != 0)
+ {
+- fprintf (stderr,
+- "DER decoded data differ in %u! (size: %u, expected: %u)\n",
+- i, der_len, tv[i].str_len);
++ grub_printf ("DER decoded data differ in %u! (size: %u, expected: %u)\n", i, der_len, tv[i].str_len);
+ return 1;
+ }
+ }
+@@ -132,16 +126,13 @@ test_strings (void)
+ &str_len, NULL);
+ if (ret != ASN1_SUCCESS)
+ {
+- fprintf (stderr, "BER decoding error in %u: %s\n", i,
+- asn1_strerror (ret));
++ grub_printf ("BER decoding error in %u: %s\n", i, asn1_strerror (ret));
+ return 1;
+ }
+
+ if (str_len != ber[i].str_len || memcmp (b, ber[i].str, str_len) != 0)
+ {
+- fprintf (stderr,
+- "BER decoded data differ in %u! (size: %u, expected: %u)\n",
+- i, str_len, ber[i].str_len);
++ grub_printf ("BER decoded data differ in %u! (size: %u, expected: %u)\n", i, str_len, ber[i].str_len);
+ return 1;
+ }
+ free (b);
+diff --git a/grub-core/tests/asn1/tests/object-id-decoding.c b/grub-core/tests/asn1/tests/object-id-decoding.c
+index fdbb8ea21..c087b46e3 100644
+--- a/grub-core/tests/asn1/tests/object-id-decoding.c
++++ b/grub-core/tests/asn1/tests/object-id-decoding.c
+@@ -85,10 +85,8 @@ test_object_id_decoding (void)
+ sizeof (str));
+ if (ret != tv[i].expected_error)
+ {
+- fprintf (stderr,
+- "%d: asn1_get_object_id_der iter %lu: got '%s' expected %d\n",
+- __LINE__, (unsigned long) i, asn1_strerror (ret),
+- tv[i].expected_error);
++ grub_printf ("%d: asn1_get_object_id_der iter %lu: got '%s' expected %d\n",
++ __LINE__, (unsigned long) i, asn1_strerror (ret), tv[i].expected_error);
+ return 1;
+ }
+
+@@ -97,17 +95,15 @@ test_object_id_decoding (void)
+
+ if (ret_len != tv[i].der_len - 1)
+ {
+- fprintf (stderr,
+- "%d: iter %lu: error in DER, length returned is %d, had %d\n",
+- __LINE__, (unsigned long) i, ret_len, tv[i].der_len - 1);
++ grub_printf ("%d: iter %lu: error in DER, length returned is %d, had %d\n",
++ __LINE__, (unsigned long) i, ret_len, tv[i].der_len - 1);
+ return 1;
+ }
+
+ if (strcmp (tv[i].oid, str) != 0)
+ {
+- fprintf (stderr,
+- "%d: strcmp iter %lu: got invalid OID: %s, expected: %s\n",
+- __LINE__, (unsigned long) i, str, tv[i].oid);
++ grub_printf ("%d: strcmp iter %lu: got invalid OID: %s, expected: %s\n",
++ __LINE__, (unsigned long) i, str, tv[i].oid);
+ return 1;
+ }
+
+diff --git a/grub-core/tests/asn1/tests/object-id-encoding.c b/grub-core/tests/asn1/tests/object-id-encoding.c
+index a497015e3..e3da092cc 100644
+--- a/grub-core/tests/asn1/tests/object-id-encoding.c
++++ b/grub-core/tests/asn1/tests/object-id-encoding.c
+@@ -93,33 +93,29 @@ test_object_id_encoding (void)
+ {
+ if (ret == tv[i].expected_error)
+ continue;
+- fprintf (stderr,
+- "%d: iter %lu, encoding of OID failed: %s\n",
+- __LINE__, (unsigned long) i, asn1_strerror (ret));
++ grub_printf ("%d: iter %lu, encoding of OID failed: %s\n",
++ __LINE__, (unsigned long) i, asn1_strerror (ret));
+ return 1;
+ }
+ else if (ret != tv[i].expected_error)
+ {
+- fprintf (stderr,
+- "%d: iter %lu, encoding of OID %s succeeded when expecting failure\n",
+- __LINE__, (unsigned long) i, tv[i].oid);
++ grub_printf ("%d: iter %lu, encoding of OID %s succeeded when expecting failure\n",
++ __LINE__, (unsigned long) i, tv[i].oid);
+ return 1;
+ }
+
+ if (der_len != tv[i].der_len || memcmp (der, tv[i].der, der_len) != 0)
+ {
+- fprintf (stderr,
+- "%d: iter %lu, re-encoding of OID %s resulted to different string (%d vs %d bytes)\n",
+- __LINE__, (unsigned long) i, tv[i].oid, der_len,
+- tv[i].der_len);
+- fprintf (stderr, "\nGot:\t\t");
++ grub_printf ("%d: iter %lu, re-encoding of OID %s resulted to different string (%d vs %d bytes)\n",
++ __LINE__, (unsigned long) i, tv[i].oid, der_len, tv[i].der_len);
++ grub_printf ("\nGot:\t\t");
+ for (j = 0; j < der_len; j++)
+- fprintf (stderr, "%.2x", der[j]);
++ grub_printf ("%.2x", der[j]);
+
+- fprintf (stderr, "\nExpected:\t");
++ grub_printf ("\nExpected:\t");
+ for (j = 0; j < tv[i].der_len; j++)
+- fprintf (stderr, "%.2x", tv[i].der[j]);
+- fprintf (stderr, "\n");
++ grub_printf ("%.2x", tv[i].der[j]);
++ grub_printf ("\n");
+
+ return 1;
+ }
+diff --git a/grub-core/tests/asn1/tests/octet-string.c b/grub-core/tests/asn1/tests/octet-string.c
+index 8c49c6e0c..d3a35dff8 100644
+--- a/grub-core/tests/asn1/tests/octet-string.c
++++ b/grub-core/tests/asn1/tests/octet-string.c
+@@ -131,9 +131,8 @@ test_octet_string (void)
+ sizeof (str), &str_size);
+ if (ret != tv[i].expected_error)
+ {
+- fprintf (stderr,
+- "%d: asn1_get_octet_der: %s: got %d expected %d\n",
+- __LINE__, tv[i].name, ret, tv[i].expected_error);
++ grub_printf ("%d: asn1_get_octet_der: %s: got %d expected %d\n",
++ __LINE__, tv[i].name, ret, tv[i].expected_error);
+ return 1;
+ }
+ if (tv[i].expected_error)
+@@ -141,27 +140,25 @@ test_octet_string (void)
+
+ if (ret_len != tv[i].der_len - 1)
+ {
+- fprintf (stderr,
+- "%d: error in DER, length returned is %d, had %d\n",
+- __LINE__, ret_len, tv[i].der_len - 1);
++ grub_printf ("%d: error in DER, length returned is %d, had %d\n",
++ __LINE__, ret_len, tv[i].der_len - 1);
+ return 1;
+ }
+
+ if (str_size != tv[i].len
+ || memcmp (tv[i].string, str, tv[i].len) != 0)
+ {
+- fprintf (stderr,
+- "%d: memcmp: %s: got invalid decoding\n",
+- __LINE__, tv[i].name);
++ grub_printf ("%d: memcmp: %s: got invalid decoding\n",
++ __LINE__, tv[i].name);
+
+- fprintf (stderr, "\nGot:\t\t");
++ grub_printf ("\nGot:\t\t");
+ for (j = 0; j < str_size; j++)
+- fprintf (stderr, "%.2x", str[j]);
++ grub_printf ("%.2x", str[j]);
+
+- fprintf (stderr, "\nExpected:\t");
++ grub_printf ("\nExpected:\t");
+ for (j = 0; j < tv[i].len; j++)
+- fprintf (stderr, "%.2x", tv[i].string[j]);
+- fprintf (stderr, "\n");
++ grub_printf ("%.2x", tv[i].string[j]);
++ grub_printf ("\n");
+ return 1;
+ }
+
+@@ -172,8 +169,7 @@ test_octet_string (void)
+ if (der_len != tv[i].der_len - 1
+ || memcmp (tv[i].der_str + 1, der, tv[i].der_len - 1) != 0)
+ {
+- fprintf (stderr,
+- "encoding: %s: got invalid encoding\n", tv[i].name);
++ grub_printf ("encoding: %s: got invalid encoding\n", tv[i].name);
+ return 1;
+ }
+ }
+@@ -185,10 +181,9 @@ test_octet_string (void)
+ (unsigned int *) &der_len);
+ if (ret != tv[i].expected_error)
+ {
+- fprintf (stderr,
+- "%d: asn1_decode_simple_ber: %s: got %s expected %s\n",
+- __LINE__, tv[i].name, asn1_strerror (ret),
+- asn1_strerror (tv[i].expected_error));
++ grub_printf ("%d: asn1_decode_simple_ber: %s: got %s expected %s\n",
++ __LINE__, tv[i].name, asn1_strerror (ret),
++ asn1_strerror (tv[i].expected_error));
+ return 1;
+ }
+ if (tv[i].expected_error)
+@@ -196,25 +191,22 @@ test_octet_string (void)
+
+ if (der_len != tv[i].der_len)
+ {
+- fprintf (stderr,
+- "%d: error: %s: DER, length returned is %d, had %d\n",
+- __LINE__, tv[i].name, der_len, tv[i].der_len);
++ grub_printf ("%d: error: %s: DER, length returned is %d, had %d\n",
++ __LINE__, tv[i].name, der_len, tv[i].der_len);
+ return 1;
+ }
+
+ if (str_size != tv[i].len || memcmp (tv[i].string, tmp, tv[i].len) != 0)
+ {
+- fprintf (stderr,
+- "%d: memcmp: %s: got invalid decoding\n",
+- __LINE__, tv[i].name);
+- fprintf (stderr, "\nGot:\t\t");
++ grub_printf ("%d: memcmp: %s: got invalid decoding\n", __LINE__, tv[i].name);
++ grub_printf ("\nGot:\t\t");
+ for (j = 0; j < str_size; j++)
+- fprintf (stderr, "%.2x", tmp[j]);
++ grub_printf ("%.2x", tmp[j]);
+
+- fprintf (stderr, "\nExpected:\t");
++ grub_printf ("\nExpected:\t");
+ for (j = 0; j < tv[i].len; j++)
+- fprintf (stderr, "%.2x", tv[i].string[j]);
+- fprintf (stderr, "\n");
++ grub_printf ("%.2x", tv[i].string[j]);
++ grub_printf ("\n");
+ return 1;
+ }
+ free (tmp);
+diff --git a/grub-core/tests/asn1/tests/reproducers.c b/grub-core/tests/asn1/tests/reproducers.c
+index fa3cea762..0e3c9fd65 100644
+--- a/grub-core/tests/asn1/tests/reproducers.c
++++ b/grub-core/tests/asn1/tests/reproducers.c
+@@ -58,8 +58,7 @@ test_reproducers (void)
+ result = asn1_array2tree (endless_asn1_tab, &definitions, errorDescription);
+ if (result != ASN1_SUCCESS)
+ {
+- asn1_perror (result);
+- printf ("ErrorDescription = %s\n\n", errorDescription);
++ grub_printf ("Error: %s\nErrorDescription = %s\n\n", asn1_strerror (result), errorDescription);
+ return 1;
+ }
+
+@@ -69,8 +68,7 @@ test_reproducers (void)
+ result = asn1_array2tree (tab, &definitions, errorDescription);
+ if (result != ASN1_SUCCESS)
+ {
+- asn1_perror (result);
+- printf ("ErrorDescription = %s\n\n", errorDescription);
++ grub_printf ("Error: %s\nErrorDescription = %s\n\n", asn1_strerror (result), errorDescription);
+ return 1;
+ }
+
+--
+2.43.0
+
--
2.43.0
_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/grub-devel
next prev parent reply other threads:[~2024-11-15 7:37 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-11-15 7:34 [PATCH v23 00/33] Automatic Disk Unlock with TPM2 Gary Lin via Grub-devel
2024-11-15 7:34 ` [PATCH v23 01/33] posix_wrap: tweaks in preparation for libtasn1 Gary Lin via Grub-devel
2024-11-15 7:34 ` [PATCH v23 02/33] libtasn1: import libtasn1-4.19.0 Gary Lin via Grub-devel
2024-11-15 7:34 ` [PATCH v23 03/33] libtasn1: disable code not needed in grub Gary Lin via Grub-devel
2024-11-15 7:34 ` [PATCH v23 04/33] libtasn1: replace strcat() with strcpy() in _asn1_str_cat() Gary Lin via Grub-devel
2024-11-15 7:34 ` [PATCH v23 05/33] libtasn1: replace strcat() with _asn1_str_cat() Gary Lin via Grub-devel
2024-11-15 7:34 ` [PATCH v23 06/33] libtasn1: adjust the header paths in libtasn1.h Gary Lin via Grub-devel
2024-11-15 7:34 ` [PATCH v23 07/33] libtasn1: Use grub_divmod64() for division Gary Lin via Grub-devel
2024-11-15 7:34 ` [PATCH v23 08/33] libtasn1: fix the potential buffer overrun Gary Lin via Grub-devel
2024-11-15 7:34 ` [PATCH v23 09/33] asn1_test: include asn1_test.h only Gary Lin via Grub-devel
2024-11-15 7:34 ` [PATCH v23 10/33] asn1_test: rename the main functions to the test names Gary Lin via Grub-devel
2024-11-15 7:34 ` [PATCH v23 11/33] asn1_test: return either 0 or 1 to reflect the results Gary Lin via Grub-devel
2024-11-15 7:34 ` [PATCH v23 12/33] asn1_test: remove 'verbose' and the unnecessary printf() Gary Lin via Grub-devel
2024-11-15 7:34 ` Gary Lin via Grub-devel [this message]
2024-11-15 7:34 ` [PATCH v23 14/33] asn1_test: use the grub-specific functions and types Gary Lin via Grub-devel
2024-11-15 7:34 ` [PATCH v23 15/33] asn1_test: enable the testcase only when GRUB_LONG_MAX is larger than GRUB_INT_MAX Gary Lin via Grub-devel
2024-11-15 7:34 ` [PATCH v23 16/33] libtasn1: compile into asn1 module Gary Lin via Grub-devel
2024-11-15 7:34 ` [PATCH v23 17/33] asn1_test: test module for libtasn1 Gary Lin via Grub-devel
2024-11-15 7:34 ` [PATCH v23 18/33] libtasn1: Add the documentation Gary Lin via Grub-devel
2024-11-15 7:34 ` [PATCH v23 19/33] key_protector: Add key protectors framework Gary Lin via Grub-devel
2024-11-15 7:34 ` [PATCH v23 20/33] tss2: Add TPM2 buffer handling functions Gary Lin via Grub-devel
2024-11-15 7:34 ` [PATCH v23 21/33] tss2: Add TPM2 types and Marshal/Unmarshal functions Gary Lin via Grub-devel
2024-11-15 7:34 ` [PATCH v23 22/33] tss2: Add TPM2 Software Stack (TSS2) support Gary Lin via Grub-devel
2024-11-15 7:34 ` [PATCH v23 23/33] key_protector: Add TPM2 Key Protector Gary Lin via Grub-devel
2024-11-15 7:34 ` [PATCH v23 24/33] cryptodisk: Support key protectors Gary Lin via Grub-devel
2024-11-15 7:34 ` [PATCH v23 25/33] util/grub-protect: Add new tool Gary Lin via Grub-devel
2024-11-15 7:34 ` [PATCH v23 26/33] tpm2_key_protector: Support authorized policy Gary Lin via Grub-devel
2024-11-15 7:34 ` [PATCH v23 27/33] tpm2_key_protector: Implement NV index Gary Lin via Grub-devel
2024-11-15 7:34 ` [PATCH v23 28/33] cryptodisk: Fallback to passphrase Gary Lin via Grub-devel
2024-11-15 7:34 ` [PATCH v23 29/33] cryptodisk: wipe out the cached keys from protectors Gary Lin via Grub-devel
2024-11-15 7:34 ` [PATCH v23 30/33] diskfilter: look up cryptodisk devices first Gary Lin via Grub-devel
2024-11-15 7:34 ` [PATCH v23 31/33] tpm2_key_protector: Add grub-emu support Gary Lin via Grub-devel
2024-11-15 7:35 ` [PATCH v23 32/33] tests: Add tpm2_key_protector_test Gary Lin via Grub-devel
2024-11-15 7:35 ` [PATCH v23 33/33] docs: Document TPM2 key protector Gary Lin via Grub-devel
2024-11-19 15:15 ` [PATCH v23 00/33] Automatic Disk Unlock with TPM2 Stefan Berger
2024-11-25 17:21 ` Daniel Kiper via Grub-devel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20241115073506.2784-14-glin@suse.com \
--to=grub-devel@gnu.org \
--cc=christopher.co@microsoft.com \
--cc=daniel.kiper@oracle.com \
--cc=daniel.mihai@microsoft.com \
--cc=development@efficientek.com \
--cc=dja@axtens.net \
--cc=glin@suse.com \
--cc=hegatta@linux.microsoft.com \
--cc=jaredz@redhat.com \
--cc=jaskaran.khurana@microsoft.com \
--cc=jejb@linux.ibm.com \
--cc=mchang@suse.com \
--cc=patrick.colp@oracle.com \
--cc=phcoder@gmail.com \
--cc=shkhisti@microsoft.com \
--cc=stefanb@linux.ibm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.