summaryrefslogtreecommitdiff
path: root/user/virtualbox-guest-additions/VBoxClient.patch
diff options
context:
space:
mode:
Diffstat (limited to 'user/virtualbox-guest-additions/VBoxClient.patch')
-rw-r--r--user/virtualbox-guest-additions/VBoxClient.patch41
1 files changed, 41 insertions, 0 deletions
diff --git a/user/virtualbox-guest-additions/VBoxClient.patch b/user/virtualbox-guest-additions/VBoxClient.patch
new file mode 100644
index 000000000..29d7f550e
--- /dev/null
+++ b/user/virtualbox-guest-additions/VBoxClient.patch
@@ -0,0 +1,41 @@
+diff --git a/src/VBox/Additions/x11/VBoxClient/Makefile.kmk b/src/VBox/Additions/x11/VBoxClient/Makefile.kmk
+index 1687b59..f37b791 100644
+--- a/src/VBox/Additions/x11/VBoxClient/Makefile.kmk
++++ b/src/VBox/Additions/x11/VBoxClient/Makefile.kmk
+@@ -108,14 +108,6 @@ ifdef VBOX_WITH_DRAG_AND_DROP
+ endif
+ endif
+
+-# This forces the memcpy references in the static libraries to go to
+-# __wrap_memcpy, which we can wrap around memcpy@GLIBC_2.2.5. I do not know
+-# how else to do that without recompiling or implementing our own memcpy.
+-ifeq ($(KBUILD_TARGET),linux)
+- VBoxClient_LDFLAGS.amd64 += \
+- -Wl,--wrap=memcpy
+-endif
+-
+ ifdef VBOX_WITH_GUEST_PROPS
+ VBoxClient_DEFS += VBOX_WITH_GUEST_PROPS
+ VBoxClient_SOURCES += \
+diff --git a/src/VBox/Additions/x11/VBoxClient/chk_stubs.c b/src/VBox/Additions/x11/VBoxClient/chk_stubs.c
+index 9b5093e..cb14ada 100644
+--- a/src/VBox/Additions/x11/VBoxClient/chk_stubs.c
++++ b/src/VBox/Additions/x11/VBoxClient/chk_stubs.c
+@@ -53,17 +53,3 @@ void __stack_chk_fail(void)
+ fprintf(stderr, "Stack check failed!\n");
+ _exit(1);
+ }
+-
+-#ifdef __x86_64
+-/* Furthermore, wrap references to memcpy to force them to go to the right
+- * version. We are forced to do it this way because the shared libraries
+- * supc++ and gcc_eh contain references which we cannot change. */
+-
+-extern void *__wrap_memcpy(void *dest, const void *src, size_t n);
+-
+-asm (".symver memcpy, memcpy@GLIBC_2.2.5");
+-void *__wrap_memcpy(void *dest, const void *src, size_t n)
+-{
+- return memcpy(dest, src, n);
+-}
+-#endif