qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Eduardo Otubo <otubo@linux.vnet.ibm.com>
To: Paul Moore <pmoore@redhat.com>
Cc: coreyb@linux.vnet.ibm.com, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH 1/2] seccomp: no need to check arch in syscall whitelist
Date: Tue, 16 Jul 2013 14:46:46 -0300	[thread overview]
Message-ID: <51E58706.6080305@linux.vnet.ibm.com> (raw)
In-Reply-To: <2186539.dUKsGWFR1D@sifl>



On 07/15/2013 03:55 PM, Paul Moore wrote:
> On Monday, July 15, 2013 02:29:37 PM Eduardo Otubo wrote:
>> Since libseccomp 2.0 there's no need to check the architecture type
>> anymore.
>>
>> Signed-off-by: Eduardo Otubo <otubo@linux.vnet.ibm.com>
>> ---
>>   qemu-seccomp.c | 13 -------------
>>   1 file changed, 13 deletions(-)
>
> Good, this should make long term maintenance easier.  However, you should
> probably update the configure script to require libseccomp-2.0.0 or greater.
> Actually, since this is 1.6 material, I would make it dependent on
> libseccomp-2.1.0 as there are a number of improvements in that release and it
> has been out for a while now.

Great tip, Paul. Doing this on v2.

>
> If you're feeling particularly adventurous, you could even enable the QEMU
> seccomp code for x32/ARM hosts with libseccomp-2.1.0 hosts :)

One step at a time :-) Perhaps for Qemu 1.7?

>
>> diff --git a/qemu-seccomp.c b/qemu-seccomp.c
>> index ca123bf..1d5fd71 100644
>> --- a/qemu-seccomp.c
>> +++ b/qemu-seccomp.c
>> @@ -26,12 +26,9 @@ static const struct QemuSeccompSyscall
>> seccomp_whitelist[] = { { SCMP_SYS(timer_gettime), 254 },
>>       { SCMP_SYS(futex), 253 },
>>       { SCMP_SYS(select), 252 },
>> -#if defined(__x86_64__)
>>       { SCMP_SYS(recvfrom), 251 },
>>       { SCMP_SYS(sendto), 250 },
>> -#elif defined(__i386__)
>>       { SCMP_SYS(socketcall), 250 },
>> -#endif
>>       { SCMP_SYS(read), 249 },
>>       { SCMP_SYS(brk), 248 },
>>       { SCMP_SYS(clone), 247 },
>> @@ -40,7 +37,6 @@ static const struct QemuSeccompSyscall seccomp_whitelist[]
>> = { { SCMP_SYS(execve), 245 },
>>       { SCMP_SYS(open), 245 },
>>       { SCMP_SYS(ioctl), 245 },
>> -#if defined(__x86_64__)
>>       { SCMP_SYS(socket), 245 },
>>       { SCMP_SYS(setsockopt), 245 },
>>       { SCMP_SYS(recvmsg), 245 },
>> @@ -51,9 +47,7 @@ static const struct QemuSeccompSyscall seccomp_whitelist[]
>> = { { SCMP_SYS(bind), 245 },
>>       { SCMP_SYS(listen), 245 },
>>       { SCMP_SYS(semget), 245 },
>> -#elif defined(__i386__)
>>       { SCMP_SYS(ipc), 245 },
>> -#endif
>>       { SCMP_SYS(gettimeofday), 245 },
>>       { SCMP_SYS(readlink), 245 },
>>       { SCMP_SYS(access), 245 },
>> @@ -64,7 +58,6 @@ static const struct QemuSeccompSyscall seccomp_whitelist[]
>> = { { SCMP_SYS(statfs), 245 },
>>       { SCMP_SYS(unlink), 245 },
>>       { SCMP_SYS(wait4), 245 },
>> -#if defined(__i386__)
>>       { SCMP_SYS(fcntl64), 245 },
>>       { SCMP_SYS(fstat64), 245 },
>>       { SCMP_SYS(stat64), 245 },
>> @@ -77,7 +70,6 @@ static const struct QemuSeccompSyscall seccomp_whitelist[]
>> = { { SCMP_SYS(_llseek), 245 },
>>       { SCMP_SYS(mmap2), 245 },
>>       { SCMP_SYS(sigprocmask), 245 },
>> -#endif
>>       { SCMP_SYS(sched_getparam), 245 },
>>       { SCMP_SYS(sched_getscheduler), 245 },
>>       { SCMP_SYS(fstat), 245 },
>> @@ -145,9 +137,7 @@ static const struct QemuSeccompSyscall
>> seccomp_whitelist[] = { { SCMP_SYS(epoll_create), 242 },
>>       { SCMP_SYS(epoll_ctl), 242 },
>>       { SCMP_SYS(epoll_wait), 242 },
>> -#if defined(__i386__)
>>       { SCMP_SYS(waitpid), 242 },
>> -#elif defined(__x86_64__)
>>       { SCMP_SYS(getsockname), 242 },
>>       { SCMP_SYS(getpeername), 242 },
>>       { SCMP_SYS(accept4), 242 },
>> @@ -159,7 +149,6 @@ static const struct QemuSeccompSyscall
>> seccomp_whitelist[] = { { SCMP_SYS(semtimedop), 241 },
>>       { SCMP_SYS(epoll_ctl_old), 241 },
>>       { SCMP_SYS(epoll_wait_old), 241 },
>> -#endif
>>       { SCMP_SYS(epoll_pwait), 241 },
>>       { SCMP_SYS(epoll_create1), 241 },
>>       { SCMP_SYS(ppoll), 241 },
>> @@ -174,7 +163,6 @@ static const struct QemuSeccompSyscall
>> seccomp_whitelist[] = { { SCMP_SYS(getresuid), 241 },
>>       { SCMP_SYS(getresgid), 241 },
>>       { SCMP_SYS(getgroups), 241 },
>> -#if defined(__i386__)
>>       { SCMP_SYS(getresuid32), 241 },
>>       { SCMP_SYS(getresgid32), 241 },
>>       { SCMP_SYS(getgroups32), 241 },
>> @@ -193,7 +181,6 @@ static const struct QemuSeccompSyscall
>> seccomp_whitelist[] = { { SCMP_SYS(lstat64), 241 },
>>       { SCMP_SYS(sendfile64), 241 },
>>       { SCMP_SYS(ugetrlimit), 241 },
>> -#endif
>>       { SCMP_SYS(alarm), 241 },
>>       { SCMP_SYS(rt_sigsuspend), 241 },
>>       { SCMP_SYS(rt_sigqueueinfo), 241 },

-- 
Eduardo Otubo
IBM Linux Technology Center

  reply	other threads:[~2013-07-16 17:46 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-15 17:29 [Qemu-devel] seccomp: remove unused syscalls - for 1.6 Eduardo Otubo
2013-07-15 17:29 ` [Qemu-devel] [PATCH 1/2] seccomp: no need to check arch in syscall whitelist Eduardo Otubo
2013-07-15 18:55   ` Paul Moore
2013-07-16 17:46     ` Eduardo Otubo [this message]
2013-07-15 17:29 ` [Qemu-devel] [PATCH 2/2] seccomp: removing unused syscalls gtom whitelist Eduardo Otubo
2013-07-15 17:35   ` Eduardo Otubo
2013-07-15 20:57   ` Paolo Bonzini
2013-07-16 17:45     ` Eduardo Otubo
2013-07-16 17:49       ` Paolo Bonzini
2013-07-16 18:55         ` Eduardo Otubo
2013-07-16 19:15           ` Paolo Bonzini
2013-07-22 19:48         ` Eduardo Otubo
2013-07-15 17:29 ` [Qemu-devel] seccomp: remove unused syscalls - for 1.6 Eduardo Otubo

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=51E58706.6080305@linux.vnet.ibm.com \
    --to=otubo@linux.vnet.ibm.com \
    --cc=coreyb@linux.vnet.ibm.com \
    --cc=pmoore@redhat.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).