diff options
author | Dmitry V. Levin <ldv@altlinux.org> | 2015-09-15 02:17:32 +0000 |
---|---|---|
committer | Dmitry V. Levin <ldv@altlinux.org> | 2015-09-15 11:23:27 +0000 |
commit | b172a94d0263f163d33e0f2a0395267719916576 (patch) | |
tree | 93d6029e01daa9605c79a4c8a4e90fc64039f8d0 /defs.h | |
parent | 77a1b6bc413a257723cf0e2aab1b6783c3070536 (diff) | |
download | strace-b172a94d0263f163d33e0f2a0395267719916576.tar.gz |
Add a new helper function umove_ulong_array_or_printaddr
* defs.h (umove_ulong_array_or_printaddr): New prototype.
* util.c (umove_ulong_array_or_printaddr): New function.
* desc.c (sys_pselect6): Use it instead of open-coding
a proxy struct parser for different personalities.
* io.c (tprint_iov_upto): Use it instead of open-coding
a struct iovec parser for different personalities.
* kexec.c (print_kexec_segments): Use it instead of open-coding
a struct kexec_segment parser for different personalities.
(print_seg): Pass arguments using an array.
Diffstat (limited to 'defs.h')
-rw-r--r-- | defs.h | 1 |
1 files changed, 1 insertions, 0 deletions
@@ -542,6 +542,7 @@ extern int umoven_or_printaddr(struct tcb *, long, unsigned int, void *); #define umove_or_printaddr(pid, addr, objp) \ umoven_or_printaddr((pid), (addr), sizeof(*(objp)), (void *) (objp)) extern int umove_ulong_or_printaddr(struct tcb *, long, unsigned long *); +extern int umove_ulong_array_or_printaddr(struct tcb *, long, unsigned long *, size_t); extern int umovestr(struct tcb *, long, unsigned int, char *); extern int upeek(int pid, long, long *); |