diff --git a/libc/include/strings.h b/libc/include/strings.h index c4d5f6cf1..ae261cff6 100644 --- a/libc/include/strings.h +++ b/libc/include/strings.h @@ -43,8 +43,16 @@ #include __BEGIN_DECLS -#define bcopy(b1, b2, len) (void)(memmove((b2), (b1), (len))) -#define bzero(b, len) (void)(memset((b), '\0', (len))) +#if defined(__BIONIC_FORTIFY) +#define bcopy(b1, b2, len) \ + (void)(__builtin___memmove_chk((b2), (b1), (len), __bos0(b2))) +#define bzero(b, len) \ + (void)(__builtin___memset_chk((b), '\0', (len), __bos0(b))) +#else +#define bcopy(b1, b2, len) (void)(__builtin_memmove((b2), (b1), (len))) +#define bzero(b, len) (void)(__builtin_memset((b), '\0', (len))) +#endif + int ffs(int); int strcasecmp(const char *, const char *);