|
@@ -13,6 +13,7 @@
|
|
#include <linux/netfilter_bridge.h>
|
|
#include <linux/netfilter_bridge.h>
|
|
#include <linux/netfilter/xt_physdev.h>
|
|
#include <linux/netfilter/xt_physdev.h>
|
|
#include <linux/netfilter/x_tables.h>
|
|
#include <linux/netfilter/x_tables.h>
|
|
|
|
+#include <net/netfilter/br_netfilter.h>
|
|
|
|
|
|
MODULE_LICENSE("GPL");
|
|
MODULE_LICENSE("GPL");
|
|
MODULE_AUTHOR("Bart De Schuymer <bdschuym@pandora.be>");
|
|
MODULE_AUTHOR("Bart De Schuymer <bdschuym@pandora.be>");
|
|
@@ -87,6 +88,8 @@ static int physdev_mt_check(const struct xt_mtchk_param *par)
|
|
{
|
|
{
|
|
const struct xt_physdev_info *info = par->matchinfo;
|
|
const struct xt_physdev_info *info = par->matchinfo;
|
|
|
|
|
|
|
|
+ br_netfilter_enable();
|
|
|
|
+
|
|
if (!(info->bitmask & XT_PHYSDEV_OP_MASK) ||
|
|
if (!(info->bitmask & XT_PHYSDEV_OP_MASK) ||
|
|
info->bitmask & ~XT_PHYSDEV_OP_MASK)
|
|
info->bitmask & ~XT_PHYSDEV_OP_MASK)
|
|
return -EINVAL;
|
|
return -EINVAL;
|