Lines Matching refs:dest

58 DECLARE_REAL(void *, memcpy, void *dest, const void *src, uptr n)
59 DECLARE_REAL(void *, memset, void *dest, int c, uptr n)
147 INTERCEPTOR(void *, mempcpy, void *dest, const void *src, SIZE_T n) {
148 return (char *)__msan_memcpy(dest, src, n) + n;
155 INTERCEPTOR(void *, memccpy, void *dest, const void *src, int c, SIZE_T n) {
157 void *res = REAL(memccpy)(dest, src, c, n);
158 CHECK(!res || (res >= dest && res <= (char *)dest + n));
159 SIZE_T sz = res ? (char *)res - (char *)dest : n;
161 __msan_unpoison(dest, sz);
165 INTERCEPTOR(void *, bcopy, const void *src, void *dest, SIZE_T n) {
166 return __msan_memmove(dest, src, n);
285 INTERCEPTOR(char *, strcpy, char *dest, const char *src) {
290 char *res = REAL(strcpy)(dest, src);
291 CopyShadowAndOrigin(dest, src, n + 1, &stack);
295 INTERCEPTOR(char *, strncpy, char *dest, const char *src, SIZE_T n) {
301 char *res = REAL(strncpy)(dest, src, n);
302 CopyShadowAndOrigin(dest, src, copy_size, &stack);
303 __msan_unpoison(dest + copy_size, n - copy_size);
308 INTERCEPTOR(char *, stpcpy, char *dest, const char *src) {
313 char *res = REAL(stpcpy)(dest, src);
314 CopyShadowAndOrigin(dest, src, n + 1, &stack);
362 INTERCEPTOR(char *, strcat, char *dest, const char *src) {
366 SIZE_T dest_size = REAL(strlen)(dest);
368 CHECK_UNPOISONED_STRING(dest + dest_size, 0);
369 char *res = REAL(strcat)(dest, src);
370 CopyShadowAndOrigin(dest + dest_size, src, src_size + 1, &stack);
374 INTERCEPTOR(char *, strncat, char *dest, const char *src, SIZE_T n) {
377 SIZE_T dest_size = REAL(strlen)(dest);
379 CHECK_UNPOISONED_STRING(dest + dest_size, 0);
380 char *res = REAL(strncat)(dest, src, n);
381 CopyShadowAndOrigin(dest + dest_size, src, copy_size, &stack);
382 __msan_unpoison(dest + dest_size + copy_size, 1); // \0
539 INTERCEPTOR(int, mbtowc, wchar_t *dest, const char *src, SIZE_T n) {
541 int res = REAL(mbtowc)(dest, src, n);
542 if (res != -1 && dest) __msan_unpoison(dest, sizeof(wchar_t));
546 INTERCEPTOR(SIZE_T, mbrtowc, wchar_t *dest, const char *src, SIZE_T n,
549 SIZE_T res = REAL(mbrtowc)(dest, src, n, ps);
550 if (res != (SIZE_T)-1 && dest) __msan_unpoison(dest, sizeof(wchar_t));
554 // wchar_t *wmemcpy(wchar_t *dest, const wchar_t *src, SIZE_T n);
555 INTERCEPTOR(wchar_t *, wmemcpy, wchar_t *dest, const wchar_t *src, SIZE_T n) {
558 wchar_t *res = REAL(wmemcpy)(dest, src, n);
559 CopyShadowAndOrigin(dest, src, n * sizeof(wchar_t), &stack);
564 INTERCEPTOR(wchar_t *, wmempcpy, wchar_t *dest, const wchar_t *src, SIZE_T n) {
567 wchar_t *res = REAL(wmempcpy)(dest, src, n);
568 CopyShadowAndOrigin(dest, src, n * sizeof(wchar_t), &stack);
584 INTERCEPTOR(wchar_t *, wmemmove, wchar_t *dest, const wchar_t *src, SIZE_T n) {
587 wchar_t *res = REAL(wmemmove)(dest, src, n);
588 MoveShadowAndOrigin(dest, src, n * sizeof(wchar_t), &stack);
940 void __msan_copy_shadow(void *dest, const void *src, uptr n) {
942 MoveShadowAndOrigin(dest, src, n, &stack);
1517 // wchar_t *wcscpy(wchar_t *dest, const wchar_t *src);
1518 INTERCEPTOR(wchar_t *, wcscpy, wchar_t *dest, const wchar_t *src) {
1521 wchar_t *res = REAL(wcscpy)(dest, src);
1522 CopyShadowAndOrigin(dest, src, sizeof(wchar_t) * (REAL(wcslen)(src) + 1),
1527 INTERCEPTOR(wchar_t *, wcsncpy, wchar_t *dest, const wchar_t *src, SIZE_T n) {
1532 wchar_t *res = REAL(wcsncpy)(dest, src, n);
1533 CopyShadowAndOrigin(dest, src, copy_size * sizeof(wchar_t), &stack);
1534 __msan_unpoison(dest + copy_size, (n - copy_size) * sizeof(wchar_t));
1562 void *__msan_memcpy(void *dest, const void *src, SIZE_T n) {
1563 if (!msan_inited) return internal_memcpy(dest, src, n);
1565 return REAL(memcpy)(dest, src, n);
1568 void *res = REAL(memcpy)(dest, src, n);
1569 CopyShadowAndOrigin(dest, src, n, &stack);
1582 void *__msan_memmove(void *dest, const void *src, SIZE_T n) {
1583 if (!msan_inited) return internal_memmove(dest, src, n);
1584 if (msan_init_is_running) return REAL(memmove)(dest, src, n);
1587 void *res = REAL(memmove)(dest, src, n);
1588 MoveShadowAndOrigin(dest, src, n, &stack);