The following series of patches is a prototype implementation of a ebtables based MAC
address filter. This is currently not intended for inclusion, but rather to get some
feedback/comments about the approach and the implementation.
At the moment, some defaults are set when libvirtd starts and when a domain is started or
destroyed. The plan is to extend this filter capability to the API level and virsh command
level. The plan is also to add more filtering features like VLAN filtering and QoS
filtering.
Thanks, Gerhard
---
Gerhard Stenzel (6):
remove currently unused parameter to pass make check test
add MAC address based port filtering to qemu
add MAC address based port filtering to libvirt
add the ebtables wrapper to network driver
add build support for ebtables wrapper
add ebtables wrapper
configure.in | 3
include/libvirt/libvirt.h.in | 14 +
src/Makefile.am | 1
src/conf/network_conf.h | 10
src/driver.h | 14 +
src/libvirt.c | 119 +++++
src/libvirt_private.syms | 26 +
src/libvirt_public.syms | 3
src/network/bridge_driver.c | 175 ++++++++
src/qemu/qemu.conf | 3
src/qemu/qemu_conf.c | 14 +
src/qemu/qemu_conf.h | 2
src/qemu/qemu_driver.c | 23 +
src/test/test_driver.c | 3
src/util/ebtables.c | 961 ++++++++++++++++++++++++++++++++++++++++++
src/util/ebtables.h | 134 ++++++
16 files changed, 1505 insertions(+), 0 deletions(-)
create mode 100644 src/util/ebtables.c
create mode 100644 src/util/ebtables.h
--