mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-02-22 03:12:22 +00:00
Thanks to a lack of coordination between kernel and glibc folks, it has been impossible to mix code using <linux/in.h> and <net/in.h> for some time now (see for example commit c308a9a). On at least RHEL 6, <linux/if_bridge.h> tries to use the kernel side, and fails due to our desire to use the glibc side elsewhere: In file included from /usr/include/linux/if_bridge.h:17, from util/virnetdevbridge.c:42: /usr/include/linux/in6.h:31: error: redefinition of ‘struct in6_addr’ /usr/include/linux/in6.h:48: error: redefinition of ‘struct sockaddr_in6’ /usr/include/linux/in6.h:56: error: redefinition of ‘struct ipv6_mreq’ Thankfully, the kernel layout of these structs is ABI-compatible, they only differ in the type system presented to the C compiler. While there are other versions of kernel headers that avoid the problem, it is easier to just work around the issue than to expect all developers to upgrade to working kernel headers. * src/util/virnetdevbridge.c (includes): Coerce the kernel version of in.h to not collide with the normal version. Signed-off-by: Eric Blake <eblake@redhat.com>
…
…
LibVirt : simple API for virtualization Libvirt is a C toolkit to interact with the virtualization capabilities of recent versions of Linux (and other OSes). It is free software available under the GNU Lesser General Public License. Virtualization of the Linux Operating System means the ability to run multiple instances of Operating Systems concurrently on a single hardware system where the basic resources are driven by a Linux instance. The library aim at providing long term stable C API initially for the Xen paravirtualization but should be able to integrate other virtualization mechanisms if needed. Daniel Veillard <veillard@redhat.com>
Description
Libvirt provides a portable, long term stable C API for managing the
virtualization technologies provided by many operating systems. It
includes support for QEMU, KVM, Xen, LXC, bhyve, Virtuozzo, VMware
vCenter and ESX, VMware Desktop, Hyper-V, VirtualBox and the POWER
Hypervisor.
Languages
C
94.8%
Python
2%
Meson
0.9%
Shell
0.8%
Dockerfile
0.6%
Other
0.8%