Content-Type: text/plain 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: <[email protected]> Paolo v1->v2: check for minimum slirp version (4.1), use config version 1 Paolo Bonzini (5): slirp: bump submodule past 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 | 33 +++++++++++---------- net/slirp.c | 85 ++++++++++++++++++++++++++++++++++++++++++++++------- slirp | 2 +- 3 files changed, 93 insertions(+), 27 deletions(-) -- 2.35.1
