diff --git a/compel/include/uapi/ptrace.h b/compel/include/uapi/ptrace.h index fcc2d62b0..4df00b6e1 100644 --- a/compel/include/uapi/ptrace.h +++ b/compel/include/uapi/ptrace.h @@ -52,13 +52,17 @@ #ifndef PTRACE_SECCOMP_GET_METADATA # define PTRACE_SECCOMP_GET_METADATA 0x420d +#endif /* PTRACE_SECCOMP_GET_METADATA */ -struct seccomp_metadata { +/* + * struct seccomp_metadata is not yet + * settled down well in headers so use + * own identical definition for a while. + */ +typedef struct { uint64_t filter_off; /* Input: which filter */ uint64_t flags; /* Output: filter's flags */ -}; - -#endif /* PTRACE_SECCOMP_GET_METADATA */ +} seccomp_metadata_t; #ifdef PTRACE_EVENT_STOP # if PTRACE_EVENT_STOP == 7 /* Bad value from Linux 3.1-3.3, fixed in 3.4 */ diff --git a/criu/seccomp.c b/criu/seccomp.c index df7cadff3..94e663d40 100644 --- a/criu/seccomp.c +++ b/criu/seccomp.c @@ -131,7 +131,7 @@ int seccomp_dump_thread(pid_t tid_real, ThreadCoreEntry *thread_core) static int collect_filter(struct seccomp_entry *entry) { - struct seccomp_metadata meta_buf, *meta = &meta_buf; + seccomp_metadata_t meta_buf, *meta = &meta_buf; struct seccomp_filter_chain *chain, *prev; struct sock_filter buf[BPF_MAXINSNS]; size_t i;