From: Ulrich Drepper Date: Sat, 15 Sep 2007 22:24:03 +0000 (+0000) Subject: * sysdeps/i386/i586/memcpy.S (__memcpy_chk): New definition. X-Git-Tag: cvs/fedora-glibc-20070918T1931~10 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=9bdfff60008403ff693ccc71da5957a4e57bfc25;p=thirdparty%2Fglibc.git * sysdeps/i386/i586/memcpy.S (__memcpy_chk): New definition. * sysdeps/i386/i586/mempcpy.S (__memcpy_chk): New definition. * sysdeps/i386/i586/memset.S (__memset_chk): New definition. --- diff --git a/ChangeLog b/ChangeLog index 29e1293c0fa..b27b3e53cc7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2007-09-14 H.J. Lu + + * sysdeps/i386/i586/memcpy.S (__memcpy_chk): New definition. + * sysdeps/i386/i586/mempcpy.S (__memcpy_chk): New definition. + * sysdeps/i386/i586/memset.S (__memset_chk): New definition. + 2007-09-15 Mike Frysinger * inet/inet_net.c: Reset digit to 0 for inputs starting with "0x". diff --git a/sysdeps/i386/i586/memcpy.S b/sysdeps/i386/i586/memcpy.S index 6ab457fc556..677a7e62041 100644 --- a/sysdeps/i386/i586/memcpy.S +++ b/sysdeps/i386/i586/memcpy.S @@ -35,6 +35,13 @@ #define LEN SRC+PTR_SIZE .text +#if defined PIC && !defined NOT_IN_libc +ENTRY (__memcpy_chk) + movl 12(%esp), %eax + cmpl %eax, 16(%esp) + jb HIDDEN_JUMPTARGET (__chk_fail) +END (__memcpy_chk) +#endif ENTRY (BP_SYM (memcpy)) ENTER diff --git a/sysdeps/i386/i586/mempcpy.S b/sysdeps/i386/i586/mempcpy.S index 0c9520e3b49..f492be7ca07 100644 --- a/sysdeps/i386/i586/mempcpy.S +++ b/sysdeps/i386/i586/mempcpy.S @@ -1,4 +1,5 @@ #define memcpy __mempcpy +#define __memcpy_chk __mempcpy_chk #include libc_hidden_def (BP_SYM (__mempcpy)) diff --git a/sysdeps/i386/i586/memset.S b/sysdeps/i386/i586/memset.S index c21e9f7a718..3295b48e718 100644 --- a/sysdeps/i386/i586/memset.S +++ b/sysdeps/i386/i586/memset.S @@ -38,6 +38,13 @@ #endif .text +#if defined PIC && !defined NOT_IN_libc && !BZERO_P +ENTRY (__memset_chk) + movl 12(%esp), %eax + cmpl %eax, 16(%esp) + jb HIDDEN_JUMPTARGET (__chk_fail) +END (__memset_chk) +#endif ENTRY (BP_SYM (memset)) ENTER