Lines Matching refs:str

56 void StrLenOOBTestTemplate(char *str, size_t length, OOBKind oob_kind) {  in StrLenOOBTestTemplate()  argument
58 EXPECT_EQ(strlen(str), length); in StrLenOOBTestTemplate()
60 EXPECT_EQ(length - 1, strlen(str + 1)); in StrLenOOBTestTemplate()
61 EXPECT_EQ(0U, strlen(str + length)); in StrLenOOBTestTemplate()
66 EXPECT_DEATH(Ident(strlen(str - 1)), LeftOOBReadMessage(oob_kind, 1)); in StrLenOOBTestTemplate()
67 EXPECT_DEATH(Ident(strlen(str - 5)), LeftOOBReadMessage(oob_kind, 5)); in StrLenOOBTestTemplate()
69 EXPECT_DEATH(Ident(strlen(str + length + 1)), in StrLenOOBTestTemplate()
72 str[length] = 'a'; in StrLenOOBTestTemplate()
74 EXPECT_DEATH(Ident(strlen(str)), RightOOBReadMessage(oob_kind, 0)); in StrLenOOBTestTemplate()
75 EXPECT_DEATH(Ident(strlen(str + length)), RightOOBReadMessage(oob_kind, 0)); in StrLenOOBTestTemplate()
77 str[length] = 0; in StrLenOOBTestTemplate()
116 char *str = MallocAndMemsetString(size); in TEST() local
118 Ident(strnlen(str - 1, 0)); in TEST()
119 Ident(strnlen(str, size)); in TEST()
120 Ident(strnlen(str + size - 1, 1)); in TEST()
121 str[size - 1] = '\0'; in TEST()
122 Ident(strnlen(str, 2 * size)); in TEST()
124 EXPECT_DEATH(Ident(strnlen(str - 1, 1)), LeftOOBReadMessage(1)); in TEST()
125 EXPECT_DEATH(Ident(strnlen(str + size, 1)), RightOOBReadMessage(0)); in TEST()
127 str[size - 1] = 'z'; in TEST()
128 EXPECT_DEATH(Ident(strnlen(str, size + 1)), RightOOBReadMessage(0)); in TEST()
129 free(str); in TEST()
143 char *str = MallocAndMemsetString(size); in TEST() local
146 str[size - 1] = '\0'; in TEST()
147 new_str = strdup(str); in TEST()
149 new_str = strdup(str + size - 1); in TEST()
152 EXPECT_DEATH(Ident(strdup(str - 1)), LeftOOBReadMessage(1)); in TEST()
153 EXPECT_DEATH(Ident(strdup(str + size)), RightOOBReadMessage(0)); in TEST()
155 str[size - 1] = 'z'; in TEST()
156 EXPECT_DEATH(Ident(strdup(str)), RightOOBReadMessage(0)); in TEST()
157 free(str); in TEST()
163 char *str = MallocAndMemsetString(size); in TEST() local
166 str[size - 1] = '\0'; in TEST()
167 new_str = strndup(str, size - 13); in TEST()
169 new_str = strndup(str + size - 1, 13); in TEST()
172 EXPECT_DEATH(Ident(strndup(str - 1, 13)), LeftOOBReadMessage(1)); in TEST()
173 EXPECT_DEATH(Ident(strndup(str + size, 13)), RightOOBReadMessage(0)); in TEST()
175 str[size - 1] = 'z'; in TEST()
176 EXPECT_DEATH(Ident(strndup(str, size + 13)), RightOOBReadMessage(0)); in TEST()
178 Ident(new_str = strndup(str + size - 1, 0)); in TEST()
180 Ident(new_str = strndup(str + size - 1, 1)); in TEST()
182 EXPECT_DEATH(Ident(strndup(str + size - 1, 2)), RightOOBReadMessage(0)); in TEST()
183 free(str); in TEST()
260 char *str = MallocAndMemsetString(size); in RunStrChrTestImpl() local
261 str[10] = 'q'; in RunStrChrTestImpl()
262 str[11] = '\0'; in RunStrChrTestImpl()
263 EXPECT_EQ(str, StrChr(str, 'z')); in RunStrChrTestImpl()
264 EXPECT_EQ(str + 10, StrChr(str, 'q')); in RunStrChrTestImpl()
265 EXPECT_EQ(NULL, StrChr(str, 'a')); in RunStrChrTestImpl()
267 EXPECT_DEATH(Ident(StrChr(str - 1, 'z')), LeftOOBReadMessage(1)); in RunStrChrTestImpl()
268 EXPECT_DEATH(Ident(StrChr(str + size, 'z')), RightOOBReadMessage(0)); in RunStrChrTestImpl()
270 str[11] = 'z'; in RunStrChrTestImpl()
271 EXPECT_DEATH(Ident(StrChr(str, 'a')), RightOOBReadMessage(0)); in RunStrChrTestImpl()
272 free(str); in RunStrChrTestImpl()
489 char *str = Ident((char*)malloc(size)); in TEST() local
497 memset(str, 'z', size); in TEST()
498 Ident(memcpy)(str + 1, str + 11, 10); in TEST()
499 Ident(memcpy)(str, str, 0); in TEST()
500 EXPECT_DEATH(Ident(memcpy)(str, str + 14, 15), OverlapErrorMessage("memcpy")); in TEST()
501 EXPECT_DEATH(Ident(memcpy)(str + 14, str, 15), OverlapErrorMessage("memcpy")); in TEST()
511 memset(str, 'z', size); in TEST()
512 str[9] = '\0'; in TEST()
513 strcpy(str + 10, str); in TEST()
514 EXPECT_DEATH(strcpy(str + 9, str), OverlapErrorMessage("strcpy")); in TEST()
515 EXPECT_DEATH(strcpy(str, str + 4), OverlapErrorMessage("strcpy")); in TEST()
516 strcpy(str, str + 5); in TEST()
519 memset(str, 'z', size); in TEST()
520 strncpy(str, str + 10, 10); in TEST()
521 EXPECT_DEATH(strncpy(str, str + 9, 10), OverlapErrorMessage("strncpy")); in TEST()
522 EXPECT_DEATH(strncpy(str + 9, str, 10), OverlapErrorMessage("strncpy")); in TEST()
523 str[10] = '\0'; in TEST()
524 strncpy(str + 11, str, 20); in TEST()
525 EXPECT_DEATH(strncpy(str + 10, str, 20), OverlapErrorMessage("strncpy")); in TEST()
528 memset(str, 'z', size); in TEST()
529 str[10] = '\0'; in TEST()
530 str[20] = '\0'; in TEST()
531 strcat(str, str + 10); in TEST()
532 EXPECT_DEATH(strcat(str, str + 11), OverlapErrorMessage("strcat")); in TEST()
533 str[10] = '\0'; in TEST()
534 strcat(str + 11, str); in TEST()
535 EXPECT_DEATH(strcat(str, str + 9), OverlapErrorMessage("strcat")); in TEST()
536 EXPECT_DEATH(strcat(str + 9, str), OverlapErrorMessage("strcat")); in TEST()
537 EXPECT_DEATH(strcat(str + 10, str), OverlapErrorMessage("strcat")); in TEST()
540 memset(str, 'z', size); in TEST()
541 str[10] = '\0'; in TEST()
542 strncat(str, str + 10, 10); // from is empty in TEST()
543 EXPECT_DEATH(strncat(str, str + 11, 10), OverlapErrorMessage("strncat")); in TEST()
544 str[10] = '\0'; in TEST()
545 str[20] = '\0'; in TEST()
546 strncat(str + 5, str, 5); in TEST()
547 str[10] = '\0'; in TEST()
548 EXPECT_DEATH(strncat(str + 5, str, 6), OverlapErrorMessage("strncat")); in TEST()
549 EXPECT_DEATH(strncat(str, str + 9, 10), OverlapErrorMessage("strncat")); in TEST()
551 free(str); in TEST()