]> granicus.if.org Git - strace/commitdiff
ptrace: decode data argument of PTRACE_SECCOMP_GET_FILTER request
authorDmitry V. Levin <ldv@altlinux.org>
Thu, 12 May 2016 16:58:38 +0000 (16:58 +0000)
committerDmitry V. Levin <ldv@altlinux.org>
Fri, 13 May 2016 01:39:41 +0000 (01:39 +0000)
* process.c (SYS_FUNC(ptrace)): Print data argument of
PTRACE_SECCOMP_GET_FILTER request on exiting using print_seccomp_fprog.

process.c

index 39eb21f96e6aac42a52572605b9197706d96c44d..19b616d04dc52de258bd77916187109a10a7c1ab 100644 (file)
--- a/process.c
+++ b/process.c
@@ -212,6 +212,7 @@ SYS_FUNC(ptrace)
                case PTRACE_GETREGSET:
                case PTRACE_GETSIGINFO:
                case PTRACE_GETSIGMASK:
+               case PTRACE_SECCOMP_GET_FILTER:
                        if (verbose(tcp)) {
                                /* print data on exiting syscall */
                                return 0;
@@ -244,6 +245,12 @@ SYS_FUNC(ptrace)
                case PTRACE_GETSIGMASK:
                        print_sigset_addr_len(tcp, data, addr);
                        break;
+               case PTRACE_SECCOMP_GET_FILTER:
+                       if (syserror(tcp))
+                               printaddr(data);
+                       else
+                               print_seccomp_fprog(tcp, data, tcp->u_rval);
+                       break;
                }
        }
        return 0;