From: "Tim Foerster" via qemu development <qemu-devel@nongnu.org>
To: <qemu-devel@nongnu.org>
Cc: "Jason Wang" <jasowangio@gmail.com>,
"Markus Armbruster" <armbru@redhat.com>
Subject: QMP: exposing the host TAP interface name
Date: Wed, 16 Sep 2026 08:22:10 +0200 [thread overview]
Message-ID: <DLGIW2X7905Z.1AXV42Q0QG1CM@hetzner.com> (raw)
Hi,
I'd like to query the host TAP interface name of a network backend via QMP, especially when the TAP FD is passed to QEMU using SCM_RIGHTS
and then assigned to a backend through fd=.
In my current setup, retrieving this information externally requires CAP_SYS_PTRACE. This gives the management process far more access
than needed and conflicts with the Landlock sandboxing I want to apply, due to Landlock's ptrace restrictions [1].
QEMU already owns the FD, and tap_fd_get_ifname() can retrieve the name using TUNGETIFF on Linux. For a TAP passed through fd=, x-query-
network currently reports the following (simplified):
{
"name": "hostnet0",
"type": "tap",
"info-str": "fd=42"
}
I'd like to obtain the actual interface name in a structured field, regardless of how the TAP was created or passed to QEMU. For example:
{
"name": "hostnet0",
"type": "tap",
"info-str": "fd=42",
"data": {
"ifname": "vnet7"
}
}
Would extending x-query-network be the preferred approach? If so, would you prefer a dedicated ifname field or a type-specific data object
selected by the existing type field?
Personally, I'd prefer an approach that is reasonably easy to backport downstream to older QEMU releases. Since x-query-network is
relatively new, extending it would also require bringing that command to releases which don't have it yet, potentially increasing the
backporting effort.
A type-specific data object could also accommodate additional TAP properties later, such as multiqueue mode or vnet_hdr. However, those
are outside my current scope, I only need the interface name.
Is there an existing alternative I've missed?
Thanks!
[1] https://docs.kernel.org/userspace-api/landlock.html#ptrace-restrictions
next reply other threads:[~2026-09-16 6:22 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-16 6:22 Tim Foerster via qemu development [this message]
2026-09-16 13:18 ` QMP: exposing the host TAP interface name Marc-André Lureau
2026-09-17 6:12 ` Tim Foerster via qemu development
2026-09-17 8:27 ` Daniel P. Berrangé
2026-09-17 9:13 ` Tim Foerster via qemu development
2026-09-17 9:51 ` Daniel P. Berrangé
2026-09-17 10:07 ` Tim Foerster via qemu development
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=DLGIW2X7905Z.1AXV42Q0QG1CM@hetzner.com \
--to=qemu-devel@nongnu.org \
--cc=armbru@redhat.com \
--cc=jasowangio@gmail.com \
--cc=tim.foerster@hetzner.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.