File fix-glibc-2.43-build.patch of Package grub2

commit 8193d0dff037c7ea7f561f0a024503d6bb63fbb2
Author: Radoslav Kolev <radoslav.kolev@suse.com>
Date:   Fri Feb 6 16:54:34 2026 +0000

    Fix build with glibc 2.43

diff --git a/grub-core/osdep/linux/ofpath.c b/grub-core/osdep/linux/ofpath.c
index 24a4d5c8d..b4b75e79c 100644
--- a/grub-core/osdep/linux/ofpath.c
+++ b/grub-core/osdep/linux/ofpath.c
@@ -488,7 +488,7 @@ check_hba_identifiers (const char *sysfs_path, int *vendor, int *device_id)
 static void
 check_sas (const char *sysfs_path, int *tgt, unsigned long int *sas_address)
 {
-  char *ed = strstr (sysfs_path, "end_device");
+  const char *ed = strstr (sysfs_path, "end_device");
   char *p, *q, *path;
   char phy[21];
   int fd;
@@ -503,7 +503,7 @@ check_sas (const char *sysfs_path, int *tgt, unsigned long int *sas_address)
   if (!ed)
     return;
 
-  q = ed;
+  q = xstrdup(ed);
   while (*q && *q != '/')
     q++;
   *q = '\0';
@@ -536,6 +536,7 @@ check_sas (const char *sysfs_path, int *tgt, unsigned long int *sas_address)
 
   free (path);
   free (p);
+  free (q);
   close (fd);
 }
 
diff --git a/util/probe.c b/util/probe.c
index 81d91cf59..a9158d640 100644
--- a/util/probe.c
+++ b/util/probe.c
@@ -70,7 +70,7 @@ char *
 grub_util_guess_bios_drive (const char *orig_path)
 {
   char *canon;
-  char *ptr;
+  const char *ptr;
   canon = grub_canonicalize_file_name (orig_path);
   if (!canon)
     return NULL;
@@ -99,7 +99,7 @@ char *
 grub_util_guess_efi_drive (const char *orig_path)
 {
   char *canon;
-  char *ptr;
+  const char *ptr;
   canon = grub_canonicalize_file_name (orig_path);
   if (!canon)
     return NULL;
@@ -128,7 +128,7 @@ char *
 grub_util_guess_baremetal_drive (const char *orig_path)
 {
   char *canon;
-  char *ptr;
+  const char *ptr;
   canon = grub_canonicalize_file_name (orig_path);
   if (!canon)
     return NULL;
diff --git a/util/resolve.c b/util/resolve.c
index b6e26312f..5310a5521 100644
--- a/util/resolve.c
+++ b/util/resolve.c
@@ -138,8 +138,8 @@ read_dep_list (FILE *fp)
 static char *
 get_module_name (const char *str)
 {
-  char *base;
-  char *ext;
+  const char *base;
+  const char *ext;
 
   base = strrchr (str, '/');
   if (! base)
@@ -164,9 +164,9 @@ get_module_name (const char *str)
 static char *
 get_module_path (const char *prefix, const char *str)
 {
-  char *dir;
+  const char *dir;
   char *base;
-  char *ext;
+  const char *ext;
   char *ret;
 
   ext = strrchr (str, '.');
openSUSE Build Service is sponsored by