Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Tested-By: Guido Günther <[email protected]>
---
linux-user/strace.c | 16 ++++++++++++++++
linux-user/strace.list | 2 +-
2 files changed, 17 insertions(+), 1 deletion(-)
diff --git a/linux-user/strace.c b/linux-user/strace.c
index 3c3f684b3e..b31e9077c8 100644
--- a/linux-user/strace.c
+++ b/linux-user/strace.c
@@ -2005,6 +2005,22 @@ print_getsockname(const struct syscallname *name,
}
#endif
+#if defined(TARGET_NR_recvfrom)
+static void
+print_recvfrom(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_raw_param("%d", arg0, 0);
+ print_buf(arg1, arg2, 0);
+ print_raw_param(TARGET_ABI_FMT_ld, arg2, 0);
+ print_flags(msg_flags, arg3, 0);
+ print_sockaddr_ptr(arg4, arg5, 1);
+ print_syscall_epilogue(name);
+}
+#endif
+
#if defined(TARGET_NR_sendto)
static void
print_sendto(const struct syscallname *name,
diff --git a/linux-user/strace.list b/linux-user/strace.list
index 44d436cd06..6569451d07 100644
--- a/linux-user/strace.list
+++ b/linux-user/strace.list
@@ -1101,7 +1101,7 @@
{ TARGET_NR_recv, "recv" , NULL, NULL, NULL },
#endif
#ifdef TARGET_NR_recvfrom
-{ TARGET_NR_recvfrom, "recvfrom" , NULL, NULL, NULL },
+{ TARGET_NR_recvfrom, "recvfrom" , NULL, print_recvfrom, NULL },
#endif
#ifdef TARGET_NR_recvmmsg
{ TARGET_NR_recvmmsg, "recvmmsg" , NULL, NULL, NULL },
--
2.18.0