From patchwork Tue Oct 22 08:11:01 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Laurent Vivier X-Patchwork-Id: 1181138 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=vivier.eu Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 46y60x1HyZz9sPh for ; Tue, 22 Oct 2019 19:21:37 +1100 (AEDT) Received: from localhost ([::1]:51482 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iMpQ6-0005Ah-Rd for incoming@patchwork.ozlabs.org; Tue, 22 Oct 2019 04:21:34 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:44166) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iMpGH-0002iq-1h for qemu-devel@nongnu.org; Tue, 22 Oct 2019 04:11:26 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iMpGF-00054e-Oi for qemu-devel@nongnu.org; Tue, 22 Oct 2019 04:11:24 -0400 Received: from mout.kundenserver.de ([212.227.17.10]:57585) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1iMpGF-00053l-FW for qemu-devel@nongnu.org; Tue, 22 Oct 2019 04:11:23 -0400 Received: from localhost.localdomain ([78.238.229.36]) by mrelayeu.kundenserver.de (mreue107 [212.227.15.183]) with ESMTPSA (Nemesis) id 1MvJjz-1i5Qpl17qL-00rIdv; Tue, 22 Oct 2019 10:11:20 +0200 From: Laurent Vivier To: qemu-devel@nongnu.org Subject: [PULL 08/11] linux-user/strace: Add print_sockfd() Date: Tue, 22 Oct 2019 10:11:01 +0200 Message-Id: <20191022081104.11814-9-laurent@vivier.eu> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20191022081104.11814-1-laurent@vivier.eu> References: <20191022081104.11814-1-laurent@vivier.eu> MIME-Version: 1.0 X-Provags-ID: V03:K1:aIxCoJcwnpaYf33vOCZNVpNcU8+ktlueahCgsyBYALPNleEqRrq VLY8HeEUPQB1HZedvhpjwOGSBs/iRUcK9nOkfde4xYS8ftkFw3zUKXlAC84D+javr+vQyDL h8FhltB1jvpLeQp/BOGc0tZnCe3Z77Zm+4nZc0a1Tm+VUfgGWBJoXBNfS7VJz55661LwC6k RdQott0w5Hi3ZfjrIGmpQ== X-UI-Out-Filterresults: notjunk:1; V03:K0:7BAujVHsBMs=:KdfPWzQrTCNgCcHSq0ttXM 4h3JrV17J6ulNAXMB9juvApYC5pKKi3hu3fIRlch+CKB4QX3O5JelS2C95/Gc//NRqtWSnDDy n8vfkQbAxRVFZdDot/G3dUHrql4vpzgcnwMsWEGW+IlYjqsYEi726cyK6C2mklCyR2skCxK07 jDlIfg46fPsAaqP8NsHBVzCLfOx+Yfy6tEK9b3uQ2ImgtdC7ZodNpcc95cbLZz0OLvnZ68Sj/ IGX0X/b429g2Du8k9y6c7LlOl2arzYT3Auk8ZWMKfew5eC3N+VEaYcwDrY/CKXCJnZ5wxOMDI vpUYfWKVnWZ3HBc+qgYxsE5pQoECRnNLtHEFYBKr0JIFIM7Iq5fa/kgczGJskmjqsn9TR9tzk NmA+fWvs0Lb8pJ4CEkAUi0H2J/aHESLI9QR69QxlbF3hm0agbOvBZk5/YOMMxh5iOoWJCIlf9 XRFmH3yiaRL44JjiUu/S6IEgGJ9PPFMBKJmtGSEM3jyOY6ZXlZpehpM+rLl8AK/kOMQyu9I09 t3HXgmk2U+oI9TFeslPtQm0UGbRmMUkXYiRuIV/g/p9PzVRwxaMjUAcjwDT9L8h5C3062QgrQ OeV4CA/P4tbtB+uo7I+YsT49v6xSzDdef6/rF/X91pSAD1fQ3Iua+sO45HIlC7Gx7jkWGCz2L qGOMltlu6MopFVJ0urPN7e94YG3759Nc9Nef9+QF44fEABOiOTs5tWkAAxKN4DdHGAC9x8Pxl ABTmtNcSYxZ1AOsJg/sBsJQ4LD1MdesBAiKmrGzaguT83eRbCFqPLFJaFPzIGzpp2pMRrmC0S ZHrX4yx0g8i2C/9ajQFL4a04d5WYOqRQlvU69uHzM5wPZQr1yWYQlteI8I1aF+LRUJDwRdNod N8c6sY9vXsRKraZwCXDHZYGooxWBzCxugQrAoq5P8= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 212.227.17.10 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Riku Voipio , Laurent Vivier , =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: "Qemu-devel" From: Philippe Mathieu-Daudé Extract common print_sockfd() from various socket related syscalls. Reviewed-by: Laurent Vivier Signed-off-by: Philippe Mathieu-Daudé Message-Id: <20191021114857.20538-7-f4bug@amsat.org> Signed-off-by: Laurent Vivier --- linux-user/strace.c | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/linux-user/strace.c b/linux-user/strace.c index 5fa7748427f0..0ce2b658a52d 100644 --- a/linux-user/strace.c +++ b/linux-user/strace.c @@ -1709,6 +1709,15 @@ print_socket(const struct syscallname *name, #if defined(TARGET_NR_socketcall) +static void print_sockfd(abi_long sockfd, int last) +{ + print_raw_param(TARGET_ABI_FMT_ld, sockfd, last); +} + +#endif + +#if defined(TARGET_NR_socketcall) + #define get_user_ualx(x, gaddr, idx) \ get_user_ual(x, (gaddr) + (idx) * sizeof(abi_long)) @@ -1741,7 +1750,7 @@ static void do_print_sockaddr(const char *name, abi_long arg1) get_user_ualx(addrlen, arg1, 2); gemu_log("%s(", name); - print_raw_param(TARGET_ABI_FMT_ld, sockfd, 0); + print_sockfd(sockfd, 0); print_sockaddr(addr, addrlen); gemu_log(")"); } @@ -1754,7 +1763,7 @@ static void do_print_listen(const char *name, abi_long arg1) get_user_ualx(backlog, arg1, 1); gemu_log("%s(", name); - print_raw_param(TARGET_ABI_FMT_ld, sockfd, 0); + print_sockfd(sockfd, 0); print_raw_param(TARGET_ABI_FMT_ld, backlog, 1); gemu_log(")"); } @@ -1789,7 +1798,7 @@ static void do_print_sendrecv(const char *name, abi_long arg1) get_user_ualx(flags, arg1, 3); gemu_log("%s(", name); - print_raw_param(TARGET_ABI_FMT_ld, sockfd, 0); + print_sockfd(sockfd, 0); print_buf(msg, len, 0); print_raw_param(TARGET_ABI_FMT_ld, len, 0); print_flags(msg_flags, flags, 1); @@ -1808,7 +1817,7 @@ static void do_print_msgaddr(const char *name, abi_long arg1) get_user_ualx(addrlen, arg1, 5); gemu_log("%s(", name); - print_raw_param(TARGET_ABI_FMT_ld, sockfd, 0); + print_sockfd(sockfd, 0); print_buf(msg, len, 0); print_raw_param(TARGET_ABI_FMT_ld, len, 0); print_flags(msg_flags, flags, 0); @@ -1824,7 +1833,7 @@ static void do_print_shutdown(const char *name, abi_long arg1) get_user_ualx(how, arg1, 1); gemu_log("shutdown("); - print_raw_param(TARGET_ABI_FMT_ld, sockfd, 0); + print_sockfd(sockfd, 0); switch (how) { case SHUT_RD: gemu_log("SHUT_RD"); @@ -1851,7 +1860,7 @@ static void do_print_msg(const char *name, abi_long arg1) get_user_ualx(flags, arg1, 2); gemu_log("%s(", name); - print_raw_param(TARGET_ABI_FMT_ld, sockfd, 0); + print_sockfd(sockfd, 0); print_pointer(msg, 0); print_flags(msg_flags, flags, 1); gemu_log(")"); @@ -1868,7 +1877,7 @@ static void do_print_sockopt(const char *name, abi_long arg1) get_user_ualx(optlen, arg1, 4); gemu_log("%s(", name); - print_raw_param(TARGET_ABI_FMT_ld, sockfd, 0); + print_sockfd(sockfd, 0); switch (level) { case SOL_TCP: gemu_log("SOL_TCP,");