summaryrefslogtreecommitdiffstats
path: root/userspace/ebtables2/extensions/ebtable_filter.c
blob: 904a857fd711b09b125b81d1a1d094d347b5bcdb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <stdio.h>
#include "../include/ebtables_u.h"

#define FILTER_VALID_HOOKS ((1 << NF_BR_LOCAL_IN) | (1 << NF_BR_FORWARD) | \
   (1 << NF_BR_LOCAL_OUT))

static void print_help(const char **hn)
{
	int i;

	printf("Supported chains for the filter table:\n");
	for (i = 0; i < NF_BR_NUMHOOKS; i++)
		if (FILTER_VALID_HOOKS & (1 << i))
			printf("%s ", hn[i]);
	printf("\n");
}

static struct ebt_u_table table =
{
	.name		= "filter",
	.help		= print_help,
};

static void _init(void) __attribute__ ((constructor));
static void _init(void)
{
	ebt_register_table(&table);
}