summaryrefslogtreecommitdiff
path: root/net.c
diff options
context:
space:
mode:
authorSebastian Pipping <sebastian@pipping.org>2011-03-03 01:12:25 +0100
committerDmitry V. Levin <ldv@altlinux.org>2011-03-03 18:49:33 +0000
commit9cd385010ec1e0d22be70ff5163db194f1f22735 (patch)
treed91f4a490825d0548698085eb2655aed9966f4ac /net.c
parent1e1405a4ac1863d5c1447ff278de4a5f522b300c (diff)
downloadstrace-9cd385010ec1e0d22be70ff5163db194f1f22735.tar.gz
strace-9cd385010ec1e0d22be70ff5163db194f1f22735.tar.bz2
strace-9cd385010ec1e0d22be70ff5163db194f1f22735.tar.xz
Print shutdown(2) modes as SHUT_* constants
* net.c (shutdown_modes): New xlat structure. (sys_shutdown): Use shutdown_modes to decode 2nd syscall argument.
Diffstat (limited to 'net.c')
-rw-r--r--net.c21
1 files changed, 9 insertions, 12 deletions
diff --git a/net.c b/net.c
index cafa739..a46cf06 100644
--- a/net.c
+++ b/net.c
@@ -1796,23 +1796,20 @@ sys_recvmmsg(struct tcb *tcp)
#endif /* HAVE_SENDMSG */
+static const struct xlat shutdown_modes[] = {
+ { 0, "SHUT_RD" },
+ { 1, "SHUT_WR" },
+ { 2, "SHUT_RDWR" },
+ { 0, NULL }
+};
+
int
sys_shutdown(tcp)
struct tcb *tcp;
{
if (entering(tcp)) {
- tprintf("%ld, %ld", tcp->u_arg[0], tcp->u_arg[1]);
- switch (tcp->u_arg[1]) {
- case 0:
- tprintf("%s", " /* receive */");
- break;
- case 1:
- tprintf("%s", " /* send */");
- break;
- case 2:
- tprintf("%s", " /* send and receive */");
- break;
- }
+ tprintf("%ld, ", tcp->u_arg[0]);
+ printxval(shutdown_modes, tcp->u_arg[1], "SHUT_???");
}
return 0;
}