Message ID | 20191021114857.20538-8-f4bug@amsat.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | linux-user: strace improvements | expand |
Le 21/10/2019 à 13:48, Philippe Mathieu-Daudé a écrit : > Tested-By: Guido Günther <agx@sigxcpu.org> > Reviewed-by: Laurent Vivier <laurent@vivier.eu> > Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> > --- > v6: use TARGET_NR_socketcall || TARGET_NR_bind (lvivier) > --- > linux-user/strace.c | 15 ++++++++++++++- > linux-user/strace.list | 2 +- > 2 files changed, 15 insertions(+), 2 deletions(-) > > diff --git a/linux-user/strace.c b/linux-user/strace.c > index 0ce2b658a5..cd92c77d33 100644 > --- a/linux-user/strace.c > +++ b/linux-user/strace.c > @@ -1707,7 +1707,7 @@ print_socket(const struct syscallname *name, > > #endif > > -#if defined(TARGET_NR_socketcall) > +#if defined(TARGET_NR_socketcall) || defined(TARGET_NR_bind) > > static void print_sockfd(abi_long sockfd, int last) > { > @@ -2054,6 +2054,19 @@ print_socketcall(const struct syscallname *name, > } > #endif > > +#if defined(TARGET_NR_bind) > +static void > +print_bind(const struct syscallname *name, > + abi_long arg0, abi_long arg1, abi_long arg2, > + abi_long arg3, abi_long arg4, abi_long arg5) > +{ > + print_syscall_prologue(name); > + print_sockfd(arg0, 0); > + print_sockaddr(arg1, arg2, 1); > + print_syscall_epilogue(name); > +} > +#endif > + > #if defined(TARGET_NR_stat) || defined(TARGET_NR_stat64) || \ > defined(TARGET_NR_lstat) || defined(TARGET_NR_lstat64) > static void > diff --git a/linux-user/strace.list b/linux-user/strace.list > index 1ff9168369..957aa720af 100644 > --- a/linux-user/strace.list > +++ b/linux-user/strace.list > @@ -41,7 +41,7 @@ > { TARGET_NR_bdflush, "bdflush" , NULL, NULL, NULL }, > #endif > #ifdef TARGET_NR_bind > -{ TARGET_NR_bind, "bind" , NULL, NULL, NULL }, > +{ TARGET_NR_bind, "bind" , NULL, print_bind, NULL }, > #endif > #ifdef TARGET_NR_bpf > { TARGET_NR_bpf, "bpf" , NULL, NULL, NULL }, > Applied to my linux-user branch. Thanks, Laurent
diff --git a/linux-user/strace.c b/linux-user/strace.c index 0ce2b658a5..cd92c77d33 100644 --- a/linux-user/strace.c +++ b/linux-user/strace.c @@ -1707,7 +1707,7 @@ print_socket(const struct syscallname *name, #endif -#if defined(TARGET_NR_socketcall) +#if defined(TARGET_NR_socketcall) || defined(TARGET_NR_bind) static void print_sockfd(abi_long sockfd, int last) { @@ -2054,6 +2054,19 @@ print_socketcall(const struct syscallname *name, } #endif +#if defined(TARGET_NR_bind) +static void +print_bind(const struct syscallname *name, + abi_long arg0, abi_long arg1, abi_long arg2, + abi_long arg3, abi_long arg4, abi_long arg5) +{ + print_syscall_prologue(name); + print_sockfd(arg0, 0); + print_sockaddr(arg1, arg2, 1); + print_syscall_epilogue(name); +} +#endif + #if defined(TARGET_NR_stat) || defined(TARGET_NR_stat64) || \ defined(TARGET_NR_lstat) || defined(TARGET_NR_lstat64) static void diff --git a/linux-user/strace.list b/linux-user/strace.list index 1ff9168369..957aa720af 100644 --- a/linux-user/strace.list +++ b/linux-user/strace.list @@ -41,7 +41,7 @@ { TARGET_NR_bdflush, "bdflush" , NULL, NULL, NULL }, #endif #ifdef TARGET_NR_bind -{ TARGET_NR_bind, "bind" , NULL, NULL, NULL }, +{ TARGET_NR_bind, "bind" , NULL, print_bind, NULL }, #endif #ifdef TARGET_NR_bpf { TARGET_NR_bpf, "bpf" , NULL, NULL, NULL },