diff options
author | Jan Engelhardt <jengelh@medozas.de> | 2009-06-17 07:57:48 -0400 |
---|---|---|
committer | Jan Engelhardt <jengelh@medozas.de> | 2010-02-10 11:13:33 -0500 |
commit | 2b95efe7f6bb750256a702cc32d33b0cb2cd8223 (patch) | |
tree | 49ab6f0eb13fe524211f94db29c19827529f49a5 /include/linux | |
parent | 2b21e051472fdb4680076278b2ccf63ebc1cc3bc (diff) |
netfilter: xtables: use xt_table for hook instantiation
The respective xt_table structures already have most of the metadata
needed for hook setup. Add a 'priority' field to struct xt_table so
that xt_hook_link() can be called with a reduced number of arguments.
So should we be having more tables in the future, it comes at no
static cost (only runtime, as before) - space saved:
6807373->6806555.
Signed-off-by: Jan Engelhardt <jengelh@medozas.de>
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/netfilter/x_tables.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/netfilter/x_tables.h b/include/linux/netfilter/x_tables.h index 365fabe1b16e..fdd3342c1235 100644 --- a/include/linux/netfilter/x_tables.h +++ b/include/linux/netfilter/x_tables.h | |||
@@ -361,6 +361,7 @@ struct xt_table { | |||
361 | struct module *me; | 361 | struct module *me; |
362 | 362 | ||
363 | u_int8_t af; /* address/protocol family */ | 363 | u_int8_t af; /* address/protocol family */ |
364 | int priority; /* hook order */ | ||
364 | 365 | ||
365 | /* A unique name... */ | 366 | /* A unique name... */ |
366 | const char name[XT_TABLE_MAXNAMELEN]; | 367 | const char name[XT_TABLE_MAXNAMELEN]; |
@@ -522,6 +523,9 @@ static inline unsigned long ifname_compare_aligned(const char *_a, | |||
522 | return ret; | 523 | return ret; |
523 | } | 524 | } |
524 | 525 | ||
526 | extern struct nf_hook_ops *xt_hook_link(const struct xt_table *, nf_hookfn *); | ||
527 | extern void xt_hook_unlink(const struct xt_table *, struct nf_hook_ops *); | ||
528 | |||
525 | #ifdef CONFIG_COMPAT | 529 | #ifdef CONFIG_COMPAT |
526 | #include <net/compat.h> | 530 | #include <net/compat.h> |
527 | 531 | ||