All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/5] net: support for CFI with libslirp >= 4.7
@ 2022-05-04 20:59 Paolo Bonzini
  2022-05-04 20:59 ` [PATCH 1/5] slirp: bump submodule to 4.7 release Paolo Bonzini
                   ` (4 more replies)
  0 siblings, 5 replies; 17+ messages in thread
From: Paolo Bonzini @ 2022-05-04 20:59 UTC (permalink / raw)
  To: qemu-devel; +Cc: Daniele Buono

Up until now, a CFI-enabled build would require slirp to be compiled as
a static library, using the version that is bundled together with QEMU.
This is because slirp registers functions as callbacks for QEMU Timers
and, when using a system-wide shared libslirp, the type information for
the callback is missing.  Thus, the timer call produces a false positive
with CFI.

slirp 4.7 introduces a new CFI-friendly timer callback that does not pass
function pointers within libslirp as callbacks for timers.  Check the
version number and, if it is new enough, allow using CFI even with a
system libslirp.

Supersedes: <20220412121337.207203-1-pbonzini@redhat.com>
Paolo

Paolo Bonzini (5):
  slirp: bump submodule to 4.7 release
  net: slirp: introduce a wrapper struct for QemuTimer
  net: slirp: switch to slirp_new
  net: slirp: add support for CFI-friendly timer API
  net: slirp: allow CFI with libslirp >= 4.7

 meson.build | 31 ++++++++++---------
 net/slirp.c | 85 ++++++++++++++++++++++++++++++++++++++++++++++-------
 slirp       |  2 +-
 3 files changed, 92 insertions(+), 26 deletions(-)

-- 
2.35.1



^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2022-05-05 12:05 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-05-04 20:59 [PATCH 0/5] net: support for CFI with libslirp >= 4.7 Paolo Bonzini
2022-05-04 20:59 ` [PATCH 1/5] slirp: bump submodule to 4.7 release Paolo Bonzini
2022-05-05  8:21   ` Marc-André Lureau
2022-05-05  8:34     ` Paolo Bonzini
2022-05-05  8:37       ` Marc-André Lureau
2022-05-05  8:42         ` Paolo Bonzini
2022-05-04 20:59 ` [PATCH 2/5] net: slirp: introduce a wrapper struct for QemuTimer Paolo Bonzini
2022-05-05  8:22   ` Marc-André Lureau
2022-05-04 20:59 ` [PATCH 3/5] net: slirp: switch to slirp_new Paolo Bonzini
2022-05-05  8:20   ` Marc-André Lureau
2022-05-05  8:29     ` Paolo Bonzini
2022-05-05 10:07       ` Daniel P. Berrangé
2022-05-05 12:02         ` Paolo Bonzini
2022-05-04 21:00 ` [PATCH 4/5] net: slirp: add support for CFI-friendly timer API Paolo Bonzini
2022-05-05  8:24   ` Marc-André Lureau
2022-05-04 21:00 ` [PATCH 5/5] net: slirp: allow CFI with libslirp >= 4.7 Paolo Bonzini
2022-05-05  8:21   ` Marc-André Lureau

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.