From: Corey Bryant <coreyb@linux.vnet.ibm.com>
To: qemu-devel@nongnu.org
Cc: aliguori@us.ibm.com, rmarwah@linux.vnet.ibm.com
Subject: Re: [Qemu-devel] [PATCH v5 0/4] -net bridge: rootless bridge support for qemu
Date: Wed, 07 Dec 2011 14:43:01 -0500 [thread overview]
Message-ID: <4EDFC1C5.4030902@linux.vnet.ibm.com> (raw)
In-Reply-To: <1321242349-4140-1-git-send-email-coreyb@linux.vnet.ibm.com>
On 11/13/2011 10:45 PM, Corey Bryant wrote:
> With qemu it is possible to run a guest from an unprivileged user but if
> we wanted to communicate with the outside world we had to switch
> to root.
>
> We address this problem by introducing a new network backend and a new
> network option for -net tap. This is less flexible when compared to
> existing -net tap options because it relies on a helper with elevated
> privileges to do the heavy lifting of allocating and attaching a tap
> device to a bridge. We use a special purpose helper because we don't
> want to elevate the privileges of more generic tools like brctl.
>
> Qemu can be run with the default network helper as follows (in these cases
> attaching the tap device to the default br0 bridge):
>
> qemu linux.img -net bridge -net nic,model=virtio
>
> qemu linux.img -net tap,helper=/usr/local/libexec/qemu-bridge-helper
> -net nic,model=virtio
>
> qemu linux.img -netdev bridge,id=hn0
> -device virtio-net-pci,netdev=hn0,id=nic1
>
> qemu linux.img -netdev tap,helper=/usr/local/libexec/qemu-bridge-helper,id=hn0
> -device virtio-net-pci,netdev=hn0,id=nic1
>
> The default helper uses it's own ACL mechanism for access control, but
> future network helpers could be developed, for example, to support PolicyKit
> for access control.
>
> More details are included in individual patches. The helper is broken into
> a series of patches to improve reviewabilty.
>
> v2:
> - Updated signed-off-by's
> - Updated author's email
> - Set default bridge to br0
> - Added -net bridge
> - Updated ACL example
> - Moved from libcap to libcap-ng
> - Fail helper when libcap-ng not configured
>
> v3:
> - Use simple queue to store ACLs
> - Added goto cleanup to helper's main
> - Allow helper execution if libcap-ng not configured
> - Completed static analysis and memory analysis on helper
>
> v4:
> - Update has_vnet_hdr() to return bool
> - Update helper's main() to prevent errno clobbering
> - Let Kernel cleanup helper's file descriptors
>
> v5:
> - Removed if statement with TUNGETIFF ioctl() from has_vnet_hdr()
> - Added -netdev examples and udpated qemu -help netdev documentation
> - Disallow vnet_hdr option with -net tap,helper
>
> Corey Bryant (4):
> Add basic version of bridge helper
> Add access control support to qemu bridge helper
> Add cap reduction support to enable use as SUID
> Add support for net bridge
>
> Makefile | 12 ++-
> configure | 37 +++++
> net.c | 29 ++++-
> net.h | 3 +
> net/tap.c | 191 +++++++++++++++++++++++-
> net/tap.h | 3 +
> qemu-bridge-helper.c | 402 ++++++++++++++++++++++++++++++++++++++++++++++++++
> qemu-options.hx | 74 ++++++++--
> 8 files changed, 728 insertions(+), 23 deletions(-)
> create mode 100644 qemu-bridge-helper.c
>
Does anyone have any comments on this patch series? I haven't received
any thus far for this version. Surely no news can't be good news. :)
--
Regards,
Corey
prev parent reply other threads:[~2011-12-07 19:44 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-11-14 3:45 [Qemu-devel] [PATCH v5 0/4] -net bridge: rootless bridge support for qemu Corey Bryant
2011-11-14 3:45 ` [Qemu-devel] [PATCH v5 1/4] Add basic version of bridge helper Corey Bryant
2011-11-14 3:45 ` [Qemu-devel] [PATCH v5 2/4] Add access control support to qemu " Corey Bryant
2011-11-14 3:45 ` [Qemu-devel] [PATCH v5 3/4] Add cap reduction support to enable use as SUID Corey Bryant
2011-11-14 3:45 ` [Qemu-devel] [PATCH v5 4/4] Add support for net bridge Corey Bryant
2011-12-15 15:26 ` Anthony Liguori
2011-12-15 18:15 ` Corey Bryant
2011-12-16 4:00 ` Corey Bryant
2011-12-07 19:43 ` Corey Bryant [this message]
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=4EDFC1C5.4030902@linux.vnet.ibm.com \
--to=coreyb@linux.vnet.ibm.com \
--cc=aliguori@us.ibm.com \
--cc=qemu-devel@nongnu.org \
--cc=rmarwah@linux.vnet.ibm.com \
/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).