X-Git-Url: http://git.onelab.eu/?p=iptables.git;a=blobdiff_plain;f=trunk%2Fextensions%2Flibip6t_eui64.c;fp=trunk%2Fextensions%2Flibip6t_eui64.c;h=b93d12156227b13ba4a2fda27f1364a52f5467ae;hp=0000000000000000000000000000000000000000;hb=65d1e3fdac47d3d758f6f018457c28d6f3f6306a;hpb=98c90cbcc6f660e13f9e7878bbb80dfc9d03ceae diff --git a/trunk/extensions/libip6t_eui64.c b/trunk/extensions/libip6t_eui64.c new file mode 100644 index 0000000..b93d121 --- /dev/null +++ b/trunk/extensions/libip6t_eui64.c @@ -0,0 +1,44 @@ +/* Shared library add-on to ip6tables to add EUI64 address checking support. */ +#include +#include +#include +#include +#include +#if defined(__GLIBC__) && __GLIBC__ == 2 +#include +#else +#include +#endif +#include + +/* Function which prints out usage message. */ +static void eui64_help(void) +{ + printf( +"eui64 match options:\n" +" This module hasn't got any option\n" +" This module checks for EUI64 IPv6 addresses\n"); +} + +/* Function which parses command options; returns true if it + ate an option */ +static int eui64_parse(int c, char **argv, int invert, unsigned int *flags, + const void *entry, struct xt_entry_match **match) +{ + return 0; +} + +static struct xtables_match eui64_mt6_reg = { + .name = "eui64", + .version = XTABLES_VERSION, + .family = PF_INET6, + .size = XT_ALIGN(sizeof(int)), + .userspacesize = XT_ALIGN(sizeof(int)), + .help = eui64_help, + .parse = eui64_parse, +}; + +void _init(void) +{ + xtables_register_match(&eui64_mt6_reg); +}