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, '.');