case __NR_readv: { /* syscall 145 */
/* int readv(int fd, const struct iovec * vector, size_t count); */
- UInt i;
+ Int i;
struct iovec * vec;
MAYBE_PRINTF("readv ( %d, %p, %d )\n",arg1,arg2,arg3);
SYSCALL_TRACK( pre_mem_read, tid, "readv(vector)",
arg2, arg3 * sizeof(struct iovec) );
/* ToDo: don't do any of the following if the vector is invalid */
vec = (struct iovec *)arg2;
- for (i = 0; i < arg3; i++)
+ for (i = 0; i < (Int)arg3; i++)
SYSCALL_TRACK( pre_mem_write, tid, "readv(vector[...])",
(UInt)vec[i].iov_base,vec[i].iov_len );
KERNEL_DO_SYSCALL(tid,res);
case __NR_writev: { /* syscall 146 */
/* int writev(int fd, const struct iovec * vector, size_t count); */
- UInt i;
+ Int i;
struct iovec * vec;
MAYBE_PRINTF("writev ( %d, %p, %d )\n",arg1,arg2,arg3);
SYSCALL_TRACK( pre_mem_read, tid, "writev(vector)",
arg2, arg3 * sizeof(struct iovec) );
/* ToDo: don't do any of the following if the vector is invalid */
vec = (struct iovec *)arg2;
- for (i = 0; i < arg3; i++)
+ for (i = 0; i < (Int)arg3; i++)
SYSCALL_TRACK( pre_mem_read, tid, "writev(vector[...])",
(UInt)vec[i].iov_base,vec[i].iov_len );
KERNEL_DO_SYSCALL(tid,res);
tronical.stderr.exp tronical.vgtest \
weirdioctl.stderr.exp weirdioctl.stdout.exp weirdioctl.vgtest \
metadata.stderr.exp metadata.stdout.exp metadata.vgtest \
- threadederrno.stderr.exp threadederrno.stdout.exp threadederrno.vgtest
+ threadederrno.stderr.exp threadederrno.stdout.exp \
+ threadederrno.vgtest \
+ writev.stderr.exp writev.vgtest
check_PROGRAMS = \
- badaddrvalue badfree badjump badloop brk buflen_check
+ badaddrvalue badfree badjump badloop brk buflen_check \
clientperm custom_alloc \
doublefree error_counts errs1 exitprog fprw fwrite inits inline \
malloc1 malloc2 malloc3 manuel1 manuel2 manuel3 \
overlap pushfpopf \
realloc1 realloc2 realloc3 sigaltstack signal2 supp1 supp2 suppfree \
trivialleak tronical weirdioctl \
- mismatches new_override metadata threadederrno
+ mismatches new_override metadata threadederrno writev
AM_CPPFLAGS = -I$(top_srcdir)/include
AM_CFLAGS = $(WERROR) -Winline -Wall -Wshadow -g
metadata_SOURCES = metadata.c
threadederrno_SOURCES = threadederrno.c
threadederrno_LDADD = -lpthread
+writev_SOURCES = writev.c
# C++ ones
mismatches_SOURCES = mismatches.cpp
# Anonymise line numbers in vg_replace_malloc.c
sed "s/vg_replace_malloc.c:[0-9]\+/vg_replace_malloc.c:.../" |
+# Anonymise vg_intercept lines
+sed "s/vg_intercept.c:[0-9]\+/vg_intercept.c:.../" |
+
# Reduce some libc incompatibility
sed "s/ __getsockname / getsockname /" |
sed "s/ __sigaction / sigaction /" |