linux-user: fix socket() strace

print_socket_type() doesn't manage flags and the correct type cannot
be displayed

Signed-off-by: Laurent Vivier <laurent@vivier.eu>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20200312165530.53450-1-laurent@vivier.eu>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
This commit is contained in:
Laurent Vivier 2020-03-12 17:55:30 +01:00
parent 055d92f867
commit 2039b1b0dc
1 changed files with 7 additions and 1 deletions

View File

@ -444,7 +444,7 @@ print_socket_domain(int domain)
static void
print_socket_type(int type)
{
switch (type) {
switch (type & TARGET_SOCK_TYPE_MASK) {
case TARGET_SOCK_DGRAM:
qemu_log("SOCK_DGRAM");
break;
@ -464,6 +464,12 @@ print_socket_type(int type)
qemu_log("SOCK_PACKET");
break;
}
if (type & TARGET_SOCK_CLOEXEC) {
qemu_log("|SOCK_CLOEXEC");
}
if (type & TARGET_SOCK_NONBLOCK) {
qemu_log("|SOCK_NONBLOCK");
}
}
static void