mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-05-30 13:00:02 +00:00
open-vm-tools: backport patch to build with glibc 2.43
As the subject says. Fixes error: | ../../../sources/open-vm-tools-13.0.10/open-vm-tools/lib/hgfs/hgfsEscape.c: In function 'HgfsAddEscapeCharacter': | ../../../sources/open-vm-tools-13.0.10/open-vm-tools/lib/hgfs/hgfsEscape.c:201:15: error: assignment discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers] | 201 | illegal = strchr(HGFS_ILLEGAL_CHARS, bufIn[escapeContext->processedOffset]); Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
+144
@@ -0,0 +1,144 @@
|
|||||||
|
From 070500fd0e97abb07585882ae448ac35b1c4396c Mon Sep 17 00:00:00 2001
|
||||||
|
From: Rudi Heitbaum <rudi@heitbaum.com>
|
||||||
|
Date: Mon, 26 Jan 2026 11:55:03 +0000
|
||||||
|
Subject: [PATCH] fix initialization discards 'const' qualifier from pointer
|
||||||
|
target type
|
||||||
|
|
||||||
|
Since glibc-2.43:
|
||||||
|
|
||||||
|
For ISO C23, the functions bsearch, memchr, strchr, strpbrk, strrchr,
|
||||||
|
strstr, wcschr, wcspbrk, wcsrchr, wcsstr and wmemchr that return
|
||||||
|
pointers into their input arrays now have definitions as macros that
|
||||||
|
return a pointer to a const-qualified type when the input argument is
|
||||||
|
a pointer to a const-qualified type.
|
||||||
|
|
||||||
|
https://lists.gnu.org/archive/html/info-gnu/2026-01/msg00005.html
|
||||||
|
|
||||||
|
Signed-off-by: Rudi Heitbaum <rudi@heitbaum.com>
|
||||||
|
|
||||||
|
Upstream-Status: Submitted [https://github.com/vmware/open-vm-tools/pull/783]
|
||||||
|
Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
|
||||||
|
---
|
||||||
|
open-vm-tools/lib/hgfs/hgfsEscape.c | 6 +++---
|
||||||
|
open-vm-tools/lib/hgfsServer/hgfsServerLinux.c | 2 +-
|
||||||
|
open-vm-tools/lib/misc/strutil.c | 7 ++++---
|
||||||
|
open-vm-tools/lib/nicInfo/nicInfoPosix.c | 2 +-
|
||||||
|
open-vm-tools/libvmtools/i18n.c | 2 +-
|
||||||
|
open-vm-tools/services/plugins/vix/vixTools.c | 2 +-
|
||||||
|
6 files changed, 11 insertions(+), 10 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/open-vm-tools/lib/hgfs/hgfsEscape.c b/open-vm-tools/lib/hgfs/hgfsEscape.c
|
||||||
|
index c4d39b12d..212ea1c79 100644
|
||||||
|
--- a/open-vm-tools/lib/hgfs/hgfsEscape.c
|
||||||
|
+++ b/open-vm-tools/lib/hgfs/hgfsEscape.c
|
||||||
|
@@ -175,7 +175,7 @@ HgfsAddEscapeCharacter(char const * bufIn, // IN: input name
|
||||||
|
HgfsEscapeContext *escapeContext = (HgfsEscapeContext *)context;
|
||||||
|
uint32 charactersToCopy;
|
||||||
|
uint32 outputSpace;
|
||||||
|
- char* illegal;
|
||||||
|
+ const char* illegal;
|
||||||
|
Bool result = TRUE;
|
||||||
|
|
||||||
|
ASSERT(offset >= escapeContext->processedOffset); // Scanning forward
|
||||||
|
@@ -573,7 +573,7 @@ HgfsIsEscapeSequence(char const *bufIn, // IN: input name
|
||||||
|
uint32 length) // IN: length of the name in characters
|
||||||
|
{
|
||||||
|
if (bufIn[offset] == HGFS_ESCAPE_CHAR && offset > 0) {
|
||||||
|
- char *substitute;
|
||||||
|
+ const char *substitute;
|
||||||
|
if (bufIn[offset - 1] == HGFS_ESCAPE_SUBSTITUE_CHAR && offset > 1) {
|
||||||
|
/*
|
||||||
|
* Possibly a valid sequence, check it must be preceded with a substitute
|
||||||
|
@@ -887,7 +887,7 @@ HgfsEscapeUndoComponent(char *bufIn, // IN: Characters to be unesc
|
||||||
|
size_t offset = escapePointer - bufIn;
|
||||||
|
|
||||||
|
if (HgfsIsEscapeSequence(bufIn, offset, sizeIn)) {
|
||||||
|
- char* substitute = strchr(HGFS_SUBSTITUTE_CHARS, bufIn[offset - 1]);
|
||||||
|
+ const char* substitute = strchr(HGFS_SUBSTITUTE_CHARS, bufIn[offset - 1]);
|
||||||
|
if (substitute != NULL) {
|
||||||
|
bufIn[offset - 1] = HGFS_ILLEGAL_CHARS[substitute - HGFS_SUBSTITUTE_CHARS];
|
||||||
|
} else if (bufIn[offset - 1] == HGFS_ESCAPE_SUBSTITUE_CHAR) {
|
||||||
|
diff --git a/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c b/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c
|
||||||
|
index 445a53881..eeabcadd4 100644
|
||||||
|
--- a/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c
|
||||||
|
+++ b/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c
|
||||||
|
@@ -1366,7 +1366,7 @@ static void
|
||||||
|
HgfsGetHiddenAttr(char const *fileName, // IN: Input filename
|
||||||
|
HgfsFileAttrInfo *attr) // OUT: Struct to copy into
|
||||||
|
{
|
||||||
|
- char *baseName;
|
||||||
|
+ const char *baseName;
|
||||||
|
|
||||||
|
ASSERT(fileName);
|
||||||
|
ASSERT(attr);
|
||||||
|
diff --git a/open-vm-tools/lib/misc/strutil.c b/open-vm-tools/lib/misc/strutil.c
|
||||||
|
index 4fc6502e4..4be63b7b8 100644
|
||||||
|
--- a/open-vm-tools/lib/misc/strutil.c
|
||||||
|
+++ b/open-vm-tools/lib/misc/strutil.c
|
||||||
|
@@ -1454,6 +1454,7 @@ StrUtil_ReplaceAll(const char *orig, // IN
|
||||||
|
char *result;
|
||||||
|
const char *current;
|
||||||
|
char *tmp;
|
||||||
|
+ const char *tmp2;
|
||||||
|
size_t lenWhat;
|
||||||
|
size_t lenWith;
|
||||||
|
size_t occurrences = 0;
|
||||||
|
@@ -1467,8 +1468,8 @@ StrUtil_ReplaceAll(const char *orig, // IN
|
||||||
|
lenWith = strlen(with);
|
||||||
|
|
||||||
|
current = orig;
|
||||||
|
- while ((tmp = strstr(current, what)) != NULL) {
|
||||||
|
- current = tmp + lenWhat;
|
||||||
|
+ while ((tmp2 = strstr(current, what)) != NULL) {
|
||||||
|
+ current = tmp2 + lenWhat;
|
||||||
|
++occurrences;
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -1695,7 +1696,7 @@ StrUtilHasListItem(char const *list, // IN:
|
||||||
|
char const *item, // IN:
|
||||||
|
int (*ncmp)(char const *, char const*, size_t)) // IN:
|
||||||
|
{
|
||||||
|
- char *foundDelim;
|
||||||
|
+ const char *foundDelim;
|
||||||
|
int itemLen = strlen(item);
|
||||||
|
|
||||||
|
if (list == NULL) {
|
||||||
|
diff --git a/open-vm-tools/lib/nicInfo/nicInfoPosix.c b/open-vm-tools/lib/nicInfo/nicInfoPosix.c
|
||||||
|
index 6f20547b2..a387e377b 100644
|
||||||
|
--- a/open-vm-tools/lib/nicInfo/nicInfoPosix.c
|
||||||
|
+++ b/open-vm-tools/lib/nicInfo/nicInfoPosix.c
|
||||||
|
@@ -267,7 +267,7 @@ static Bool
|
||||||
|
IpEntryMatchesDevice(const char *devName,
|
||||||
|
const char *label)
|
||||||
|
{
|
||||||
|
- char *p;
|
||||||
|
+ const char *p;
|
||||||
|
size_t n;
|
||||||
|
|
||||||
|
if ((p = strchr(label, ':')) != NULL) {
|
||||||
|
diff --git a/open-vm-tools/libvmtools/i18n.c b/open-vm-tools/libvmtools/i18n.c
|
||||||
|
index 3085f72d7..f61406d14 100644
|
||||||
|
--- a/open-vm-tools/libvmtools/i18n.c
|
||||||
|
+++ b/open-vm-tools/libvmtools/i18n.c
|
||||||
|
@@ -698,7 +698,7 @@ VMTools_BindTextDomain(const char *domain,
|
||||||
|
* If we couldn't find the catalog file for the user's language, see if
|
||||||
|
* we can find a more generic language (e.g., for "en_US", also try "en").
|
||||||
|
*/
|
||||||
|
- char *sep = Str_Strrchr(lang, '_');
|
||||||
|
+ const char *sep = Str_Strrchr(lang, '_');
|
||||||
|
if (sep != NULL) {
|
||||||
|
if (usrlang == NULL) {
|
||||||
|
usrlang = Util_SafeStrdup(lang);
|
||||||
|
diff --git a/open-vm-tools/services/plugins/vix/vixTools.c b/open-vm-tools/services/plugins/vix/vixTools.c
|
||||||
|
index b2079a10d..6a8498ffb 100644
|
||||||
|
--- a/open-vm-tools/services/plugins/vix/vixTools.c
|
||||||
|
+++ b/open-vm-tools/services/plugins/vix/vixTools.c
|
||||||
|
@@ -925,7 +925,7 @@ VixToolsBuildUserEnvironmentTable(const char * const *envp) // IN: optional
|
||||||
|
for (; NULL != *envp; envp++) {
|
||||||
|
char *name;
|
||||||
|
char *value;
|
||||||
|
- char *whereToSplit;
|
||||||
|
+ const char *whereToSplit;
|
||||||
|
size_t nameLen;
|
||||||
|
|
||||||
|
whereToSplit = strchr(*envp, '=');
|
||||||
@@ -44,6 +44,7 @@ SRC_URI = "git://github.com/vmware/open-vm-tools.git;protocol=https;branch=maste
|
|||||||
file://0013-open-vm-tools-Correct-include-path-for-poll.h.patch;patchdir=.. \
|
file://0013-open-vm-tools-Correct-include-path-for-poll.h.patch;patchdir=.. \
|
||||||
file://0014-timeSync-Portable-way-to-print-64bit-time_t.patch;patchdir=.. \
|
file://0014-timeSync-Portable-way-to-print-64bit-time_t.patch;patchdir=.. \
|
||||||
file://0001-glib_stubs-avoid-GLib-g_free-macro-redefinition-erro.patch;patchdir=.. \
|
file://0001-glib_stubs-avoid-GLib-g_free-macro-redefinition-erro.patch;patchdir=.. \
|
||||||
|
file://0001-fix-initialization-discards-const-qualifier-from-poi.patch;patchdir=.. \
|
||||||
"
|
"
|
||||||
|
|
||||||
UPSTREAM_CHECK_GITTAGREGEX = "stable-(?P<pver>\d+(\.\d+)+)"
|
UPSTREAM_CHECK_GITTAGREGEX = "stable-(?P<pver>\d+(\.\d+)+)"
|
||||||
|
|||||||
Reference in New Issue
Block a user