diff --git a/patches/libkbsa-1.3.5.patch b/patches/libkbsa-1.3.5.patch deleted file mode 100644 index 594083d5..00000000 --- a/patches/libkbsa-1.3.5.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- clean/libksba-1.3.5/src/asn1-gentables.c 2016-08-22 11:38:21.000000000 +0200 -+++ libksba-1.3.5/src/asn1-gentables.c 2020-01-07 18:56:03.658790390 +0100 -@@ -112,7 +112,16 @@ - const struct name_list_s **a = (const struct name_list_s **)aptr; - const struct name_list_s **b = (const struct name_list_s **)bptr; - -- return strlen ((*a)->name) < strlen ((*b)->name); -+ const size_t len_a = strlen((*a)->name); -+ const size_t len_b = strlen((*b)->name); -+ -+ if (len_a == len_b) -+ return strcmp((*a)->name, (*b)->name); -+ else -+ if (len_a < len_b) -+ return -1; -+ else -+ return +1; - } - - static void diff --git a/patches/libksba-1.3.5.patch b/patches/libksba-1.3.5.patch new file mode 100644 index 00000000..13fa7be4 --- /dev/null +++ b/patches/libksba-1.3.5.patch @@ -0,0 +1,23 @@ +--- clean/libksba-1.3.5/src/asn1-gentables.c 2016-08-22 11:38:21.000000000 +0200 ++++ libksba-1.3.5/src/asn1-gentables.c 2020-01-08 10:00:27.297737650 +0100 +@@ -109,10 +109,17 @@ + static int + cmp_string (const void *aptr, const void *bptr) + { +- const struct name_list_s **a = (const struct name_list_s **)aptr; +- const struct name_list_s **b = (const struct name_list_s **)bptr; ++ const char *a = (*(const struct name_list_s **)aptr)->name; ++ const char *b = (*(const struct name_list_s **)bptr)->name; + +- return strlen ((*a)->name) < strlen ((*b)->name); ++ const size_t len_a = strlen(a); ++ const size_t len_b = strlen(b); ++ ++ if (len_a < len_b) ++ return -1; ++ if (len_a > len_b) ++ return +1; ++ return strcmp(a, b); + } + + static void