From 4dd0772911a2c92a43d4e4aecf305fba498be106 Mon Sep 17 00:00:00 2001 From: Pablo Neira Ayuso Date: Sat, 13 Jul 2013 21:21:27 +0200 Subject: expr: use __attribute__((constructor)) to register expression Instead of manual array registration. Signed-off-by: Pablo Neira Ayuso --- src/expr/bitwise.c | 5 +++++ src/expr/byteorder.c | 5 +++++ src/expr/cmp.c | 4 ++++ src/expr/counter.c | 5 +++++ src/expr/ct.c | 5 +++++ src/expr/exthdr.c | 5 +++++ src/expr/immediate.c | 5 +++++ src/expr/limit.c | 5 +++++ src/expr/log.c | 5 +++++ src/expr/lookup.c | 5 +++++ src/expr/match.c | 5 +++++ src/expr/meta.c | 5 +++++ src/expr/nat.c | 5 +++++ src/expr/payload.c | 5 +++++ src/expr/target.c | 5 +++++ 15 files changed, 74 insertions(+) (limited to 'src/expr') diff --git a/src/expr/bitwise.c b/src/expr/bitwise.c index da601f9..7ea5376 100644 --- a/src/expr/bitwise.c +++ b/src/expr/bitwise.c @@ -360,3 +360,8 @@ struct expr_ops expr_ops_bitwise = { .snprintf = nft_rule_expr_bitwise_snprintf, .xml_parse = nft_rule_expr_bitwise_xml_parse, }; + +static void __init expr_bitwise(void) +{ + nft_expr_ops_register(&expr_ops_bitwise); +} diff --git a/src/expr/byteorder.c b/src/expr/byteorder.c index 1e6a51b..53283c1 100644 --- a/src/expr/byteorder.c +++ b/src/expr/byteorder.c @@ -356,3 +356,8 @@ struct expr_ops expr_ops_byteorder = { .snprintf = nft_rule_expr_byteorder_snprintf, .xml_parse = nft_rule_expr_byteorder_xml_parse, }; + +static void __init expr_byteorder_init(void) +{ + nft_expr_ops_register(&expr_ops_byteorder); +} diff --git a/src/expr/cmp.c b/src/expr/cmp.c index 3f795bc..f49261f 100644 --- a/src/expr/cmp.c +++ b/src/expr/cmp.c @@ -305,3 +305,7 @@ struct expr_ops expr_ops_cmp = { .snprintf = nft_rule_expr_cmp_snprintf, .xml_parse = nft_rule_expr_cmp_xml_parse, }; +static void __init expr_cmp_init(void) +{ + nft_expr_ops_register(&expr_ops_cmp); +} diff --git a/src/expr/counter.c b/src/expr/counter.c index 171088d..e32a46c 100644 --- a/src/expr/counter.c +++ b/src/expr/counter.c @@ -201,3 +201,8 @@ struct expr_ops expr_ops_counter = { .snprintf = nft_rule_expr_counter_snprintf, .xml_parse = nft_rule_expr_counter_xml_parse, }; + +static void __init expr_counter_init(void) +{ + nft_expr_ops_register(&expr_ops_counter); +} diff --git a/src/expr/ct.c b/src/expr/ct.c index 655a935..8ca2167 100644 --- a/src/expr/ct.c +++ b/src/expr/ct.c @@ -281,3 +281,8 @@ struct expr_ops expr_ops_ct = { .snprintf = nft_rule_expr_ct_snprintf, .xml_parse = nft_rule_expr_ct_xml_parse, }; + +static void __init expr_ct_init(void) +{ + nft_expr_ops_register(&expr_ops_ct); +} diff --git a/src/expr/exthdr.c b/src/expr/exthdr.c index eddcd00..a89d17b 100644 --- a/src/expr/exthdr.c +++ b/src/expr/exthdr.c @@ -317,3 +317,8 @@ struct expr_ops expr_ops_exthdr = { .snprintf = nft_rule_expr_exthdr_snprintf, .xml_parse = nft_rule_expr_exthdr_xml_parse, }; + +static void __init expr_exthdr_init(void) +{ + nft_expr_ops_register(&expr_ops_exthdr); +} diff --git a/src/expr/immediate.c b/src/expr/immediate.c index 847d0c4..1aa937b 100644 --- a/src/expr/immediate.c +++ b/src/expr/immediate.c @@ -360,3 +360,8 @@ struct expr_ops expr_ops_immediate = { .snprintf = nft_rule_expr_immediate_snprintf, .xml_parse = nft_rule_expr_immediate_xml_parse, }; + +static void __init expr_immediate_init(void) +{ + nft_expr_ops_register(&expr_ops_immediate); +} diff --git a/src/expr/limit.c b/src/expr/limit.c index c18ca2a..cce74ce 100644 --- a/src/expr/limit.c +++ b/src/expr/limit.c @@ -203,3 +203,8 @@ struct expr_ops expr_ops_limit = { .snprintf = nft_rule_expr_limit_snprintf, .xml_parse = nft_rule_expr_limit_xml_parse, }; + +static void __init expr_limit_init(void) +{ + nft_expr_ops_register(&expr_ops_limit); +} diff --git a/src/expr/log.c b/src/expr/log.c index 03be030..94e2908 100644 --- a/src/expr/log.c +++ b/src/expr/log.c @@ -274,3 +274,8 @@ struct expr_ops expr_ops_log = { .snprintf = nft_rule_expr_log_snprintf, .xml_parse = nft_rule_expr_log_xml_parse, }; + +static void __init expr_log_init(void) +{ + nft_expr_ops_register(&expr_ops_log); +} diff --git a/src/expr/lookup.c b/src/expr/lookup.c index 9babfd1..9495ab0 100644 --- a/src/expr/lookup.c +++ b/src/expr/lookup.c @@ -261,3 +261,8 @@ struct expr_ops expr_ops_lookup = { .snprintf = nft_rule_expr_lookup_snprintf, .xml_parse = nft_rule_expr_lookup_xml_parse, }; + +static void __init expr_lookup_init(void) +{ + nft_expr_ops_register(&expr_ops_lookup); +} diff --git a/src/expr/match.c b/src/expr/match.c index 01d8cef..8bc2878 100644 --- a/src/expr/match.c +++ b/src/expr/match.c @@ -265,3 +265,8 @@ struct expr_ops expr_ops_match = { .snprintf = nft_rule_expr_match_snprintf, .xml_parse = nft_rule_expr_match_xml_parse, }; + +static void __init expr_match_init(void) +{ + nft_expr_ops_register(&expr_ops_match); +} diff --git a/src/expr/meta.c b/src/expr/meta.c index 3b83a4a..ceb7af2 100644 --- a/src/expr/meta.c +++ b/src/expr/meta.c @@ -238,3 +238,8 @@ struct expr_ops expr_ops_meta = { .snprintf = nft_rule_expr_meta_snprintf, .xml_parse = nft_rule_expr_meta_xml_parse, }; + +static void __init expr_meta_init(void) +{ + nft_expr_ops_register(&expr_ops_meta); +} diff --git a/src/expr/nat.c b/src/expr/nat.c index 66ae405..5ba2f4d 100644 --- a/src/expr/nat.c +++ b/src/expr/nat.c @@ -420,3 +420,8 @@ struct expr_ops expr_ops_nat = { .snprintf = nft_rule_expr_nat_snprintf, .xml_parse = nft_rule_expr_nat_xml_parse, }; + +static void __init expr_nat_init(void) +{ + nft_expr_ops_register(&expr_ops_nat); +} diff --git a/src/expr/payload.c b/src/expr/payload.c index 539b157..7ae356b 100644 --- a/src/expr/payload.c +++ b/src/expr/payload.c @@ -342,3 +342,8 @@ struct expr_ops expr_ops_payload = { .snprintf = nft_rule_expr_payload_snprintf, .xml_parse = nft_rule_expr_payload_xml_parse, }; + +static void __init expr_payload_init(void) +{ + nft_expr_ops_register(&expr_ops_payload); +} diff --git a/src/expr/target.c b/src/expr/target.c index fc24a81..15e167b 100644 --- a/src/expr/target.c +++ b/src/expr/target.c @@ -267,3 +267,8 @@ struct expr_ops expr_ops_target = { .snprintf = nft_rule_expr_target_snprintf, .xml_parse = nft_rule_expr_target_xml_parse, }; + +static void __init expr_target_init(void) +{ + nft_expr_ops_register(&expr_ops_target); +} -- cgit v1.2.3