[Sanitizer] add internal_strncmp to sanitizer libc
llvm-svn: 158658
This commit is contained in:
parent
cf7d233ac0
commit
8516014790
|
@ -76,6 +76,18 @@ int internal_strcmp(const char *s1, const char *s2) {
|
|||
return 0;
|
||||
}
|
||||
|
||||
int internal_strncmp(const char *s1, const char *s2, uptr n) {
|
||||
for (uptr i = 0; i < n; i++) {
|
||||
unsigned c1 = *s1;
|
||||
unsigned c2 = *s2;
|
||||
if (c1 != c2) return (c1 < c2) ? -1 : 1;
|
||||
if (c1 == 0) break;
|
||||
s1++;
|
||||
s2++;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
char* internal_strchr(const char *s, int c) {
|
||||
while (true) {
|
||||
if (*s == (char)c)
|
||||
|
|
|
@ -33,6 +33,7 @@ int internal_strcmp(const char *s1, const char *s2);
|
|||
char *internal_strdup(const char *s);
|
||||
uptr internal_strlen(const char *s);
|
||||
char *internal_strncat(char *dst, const char *src, uptr n);
|
||||
int internal_strncmp(const char *s1, const char *s2, uptr n);
|
||||
char *internal_strncpy(char *dst, const char *src, uptr n);
|
||||
uptr internal_strnlen(const char *s, uptr maxlen);
|
||||
char *internal_strrchr(const char *s, int c);
|
||||
|
|
Loading…
Reference in New Issue