summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry V. Levin <ldv@strace.io>2021-04-25 08:00:00 +0000
committerDmitry V. Levin <ldv@strace.io>2021-04-25 08:00:00 +0000
commit4f598720870fb4ead989a24af7e5d4faad50e94b (patch)
tree9d5dab9d07ab2d87bc30ae9f05b8715b4b1fc4dc
parent5864bc02b0370e86bd333954b761accf20494a78 (diff)
downloadstrace-4f598720870fb4ead989a24af7e5d4faad50e94b.tar.gz
seccomp: use print_fields.h helpers
* src/seccomp.c (SYS_FUNC(seccomp)): Use tprint_arg_next, tprint_indirect_begin, tprint_indirect_end, and PRINT_VAL_U.
-rw-r--r--src/seccomp.c24
1 files changed, 18 insertions, 6 deletions
diff --git a/src/seccomp.c b/src/seccomp.c
index fb10cefa7..2fe22dd15 100644
--- a/src/seccomp.c
+++ b/src/seccomp.c
@@ -17,29 +17,41 @@ SYS_FUNC(seccomp)
unsigned int flags = tcp->u_arg[1];
unsigned int act;
+ /* operation */
printxval(seccomp_ops, op, "SECCOMP_SET_MODE_???");
- tprints(", ");
+ tprint_arg_next();
switch (op) {
case SECCOMP_GET_ACTION_AVAIL:
- tprintf("%u, ", flags);
+ /* flags */
+ PRINT_VAL_U(flags);
+ tprint_arg_next();
+
+ /* args */
if (!umove_or_printaddr(tcp, tcp->u_arg[2], &act)) {
- tprints("[");
+ tprint_indirect_begin();
printxval(seccomp_ret_action, act, "SECCOMP_RET_???");
- tprints("]");
+ tprint_indirect_end();
}
break;
case SECCOMP_SET_MODE_FILTER:
+ /* flags */
printflags(seccomp_filter_flags, flags,
"SECCOMP_FILTER_FLAG_???");
- tprints(", ");
+ tprint_arg_next();
+
+ /* args */
decode_seccomp_fprog(tcp, tcp->u_arg[2]);
break;
case SECCOMP_SET_MODE_STRICT:
default:
- tprintf("%u, ", flags);
+ /* flags */
+ PRINT_VAL_U(flags);
+ tprint_arg_next();
+
+ /* args */
printaddr(tcp->u_arg[2]);
break;
}