aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/mach
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/mach')
-rw-r--r--sysdeps/mach/include/mach/mig_support.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/sysdeps/mach/include/mach/mig_support.h b/sysdeps/mach/include/mach/mig_support.h
index b027237..1888d48 100644
--- a/sysdeps/mach/include/mach/mig_support.h
+++ b/sysdeps/mach/include/mach/mig_support.h
@@ -4,5 +4,17 @@
libc_hidden_proto (__mig_get_reply_port)
libc_hidden_proto (__mig_dealloc_reply_port)
libc_hidden_proto (__mig_init)
+
+#ifdef _LIBC
+# include <libc-symbols.h>
+
+# if defined USE_MULTIARCH && (IS_IN (libmachuser) || IS_IN (libhurduser))
+/* Avoid directly calling ifunc-enabled memcpy or strpcpy,
+ because they would introduce a relocation loop between lib*user and
+ libc.so. */
+# define memcpy(dest, src, n) __mig_memcpy(dest, src, n)
+# endif
+#endif
+
#endif
#endif