netfilter-devel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] dtype: remove unnecessary icmp* parse/print functions
@ 2014-12-10 22:14 Patrick McHardy
  2014-12-10 23:48 ` Álvaro Neira Ayuso
  0 siblings, 1 reply; 2+ messages in thread
From: Patrick McHardy @ 2014-12-10 22:14 UTC (permalink / raw)
  To: pablo; +Cc: netfilter-devel

Just setting the .sym_tbl correctly is all we need.

Signed-off-by: Patrick McHardy <kaber@trash.net>
---
 src/datatype.c | 42 +++---------------------------------------
 1 file changed, 3 insertions(+), 39 deletions(-)

diff --git a/src/datatype.c b/src/datatype.c
index 729e63b..db3fb06 100644
--- a/src/datatype.c
+++ b/src/datatype.c
@@ -709,17 +709,6 @@ static const struct symbol_table icmp_code_tbl = {
 	},
 };
 
-static void icmp_code_type_print(const struct expr *expr)
-{
-	return symbolic_constant_print(&icmp_code_tbl, expr);
-}
-
-static struct error_record *icmp_code_type_parse(const struct expr *sym,
-						 struct expr **res)
-{
-	return symbolic_constant_parse(sym, &icmp_code_tbl, res);
-}
-
 const struct datatype icmp_code_type = {
 	.type		= TYPE_ICMP_CODE,
 	.name		= "icmp_code",
@@ -727,8 +716,7 @@ const struct datatype icmp_code_type = {
 	.size		= BITS_PER_BYTE,
 	.byteorder	= BYTEORDER_BIG_ENDIAN,
 	.basetype	= &integer_type,
-	.print		= icmp_code_type_print,
-	.parse		= icmp_code_type_parse,
+	.sym_tbl	= &icmp_code_tbl,
 };
 
 static const struct symbol_table icmpv6_code_tbl = {
@@ -741,17 +729,6 @@ static const struct symbol_table icmpv6_code_tbl = {
 	},
 };
 
-static void icmpv6_code_type_print(const struct expr *expr)
-{
-	return symbolic_constant_print(&icmpv6_code_tbl, expr);
-}
-
-static struct error_record *icmpv6_code_type_parse(const struct expr *sym,
-						   struct expr **res)
-{
-	return symbolic_constant_parse(sym, &icmpv6_code_tbl, res);
-}
-
 const struct datatype icmpv6_code_type = {
 	.type		= TYPE_ICMPV6_CODE,
 	.name		= "icmpv6_code",
@@ -759,8 +736,7 @@ const struct datatype icmpv6_code_type = {
 	.size		= BITS_PER_BYTE,
 	.byteorder	= BYTEORDER_BIG_ENDIAN,
 	.basetype	= &integer_type,
-	.print		= icmpv6_code_type_print,
-	.parse		= icmpv6_code_type_parse,
+	.sym_tbl	= &icmpv6_code_tbl,
 };
 
 static const struct symbol_table icmpx_code_tbl = {
@@ -773,17 +749,6 @@ static const struct symbol_table icmpx_code_tbl = {
 	},
 };
 
-static void icmpx_code_type_print(const struct expr *expr)
-{
-	return symbolic_constant_print(&icmpx_code_tbl, expr);
-}
-
-static struct error_record *icmpx_code_type_parse(const struct expr *sym,
-						  struct expr **res)
-{
-	return symbolic_constant_parse(sym, &icmpx_code_tbl, res);
-}
-
 const struct datatype icmpx_code_type = {
 	.type		= TYPE_ICMPX_CODE,
 	.name		= "icmpx_code",
@@ -791,8 +756,7 @@ const struct datatype icmpx_code_type = {
 	.size		= BITS_PER_BYTE,
 	.byteorder	= BYTEORDER_BIG_ENDIAN,
 	.basetype	= &integer_type,
-	.print		= icmpx_code_type_print,
-	.parse		= icmpx_code_type_parse,
+	.sym_tbl	= &icmpx_code_tbl,
 };
 
 static void time_type_print(const struct expr *expr)
-- 
2.1.0


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] dtype: remove unnecessary icmp* parse/print functions
  2014-12-10 22:14 [PATCH] dtype: remove unnecessary icmp* parse/print functions Patrick McHardy
@ 2014-12-10 23:48 ` Álvaro Neira Ayuso
  0 siblings, 0 replies; 2+ messages in thread
From: Álvaro Neira Ayuso @ 2014-12-10 23:48 UTC (permalink / raw)
  To: Patrick McHardy, pablo; +Cc: netfilter-devel

El 10/12/14 a las 23:14, Patrick McHardy escribió:
> Just setting the .sym_tbl correctly is all we need.

Looks good to me and so smart. I didn't know that if we set up the 
.sym_tbl, we don't need the parse and print functions. Thanks Patrick.

>
> Signed-off-by: Patrick McHardy <kaber@trash.net>
> ---
>   src/datatype.c | 42 +++---------------------------------------
>   1 file changed, 3 insertions(+), 39 deletions(-)
>
> diff --git a/src/datatype.c b/src/datatype.c
> index 729e63b..db3fb06 100644
> --- a/src/datatype.c
> +++ b/src/datatype.c
> @@ -709,17 +709,6 @@ static const struct symbol_table icmp_code_tbl = {
>   	},
>   };
>
> -static void icmp_code_type_print(const struct expr *expr)
> -{
> -	return symbolic_constant_print(&icmp_code_tbl, expr);
> -}
> -
> -static struct error_record *icmp_code_type_parse(const struct expr *sym,
> -						 struct expr **res)
> -{
> -	return symbolic_constant_parse(sym, &icmp_code_tbl, res);
> -}
> -
>   const struct datatype icmp_code_type = {
>   	.type		= TYPE_ICMP_CODE,
>   	.name		= "icmp_code",
> @@ -727,8 +716,7 @@ const struct datatype icmp_code_type = {
>   	.size		= BITS_PER_BYTE,
>   	.byteorder	= BYTEORDER_BIG_ENDIAN,
>   	.basetype	= &integer_type,
> -	.print		= icmp_code_type_print,
> -	.parse		= icmp_code_type_parse,
> +	.sym_tbl	= &icmp_code_tbl,
>   };
>
>   static const struct symbol_table icmpv6_code_tbl = {
> @@ -741,17 +729,6 @@ static const struct symbol_table icmpv6_code_tbl = {
>   	},
>   };
>
> -static void icmpv6_code_type_print(const struct expr *expr)
> -{
> -	return symbolic_constant_print(&icmpv6_code_tbl, expr);
> -}
> -
> -static struct error_record *icmpv6_code_type_parse(const struct expr *sym,
> -						   struct expr **res)
> -{
> -	return symbolic_constant_parse(sym, &icmpv6_code_tbl, res);
> -}
> -
>   const struct datatype icmpv6_code_type = {
>   	.type		= TYPE_ICMPV6_CODE,
>   	.name		= "icmpv6_code",
> @@ -759,8 +736,7 @@ const struct datatype icmpv6_code_type = {
>   	.size		= BITS_PER_BYTE,
>   	.byteorder	= BYTEORDER_BIG_ENDIAN,
>   	.basetype	= &integer_type,
> -	.print		= icmpv6_code_type_print,
> -	.parse		= icmpv6_code_type_parse,
> +	.sym_tbl	= &icmpv6_code_tbl,
>   };
>
>   static const struct symbol_table icmpx_code_tbl = {
> @@ -773,17 +749,6 @@ static const struct symbol_table icmpx_code_tbl = {
>   	},
>   };
>
> -static void icmpx_code_type_print(const struct expr *expr)
> -{
> -	return symbolic_constant_print(&icmpx_code_tbl, expr);
> -}
> -
> -static struct error_record *icmpx_code_type_parse(const struct expr *sym,
> -						  struct expr **res)
> -{
> -	return symbolic_constant_parse(sym, &icmpx_code_tbl, res);
> -}
> -
>   const struct datatype icmpx_code_type = {
>   	.type		= TYPE_ICMPX_CODE,
>   	.name		= "icmpx_code",
> @@ -791,8 +756,7 @@ const struct datatype icmpx_code_type = {
>   	.size		= BITS_PER_BYTE,
>   	.byteorder	= BYTEORDER_BIG_ENDIAN,
>   	.basetype	= &integer_type,
> -	.print		= icmpx_code_type_print,
> -	.parse		= icmpx_code_type_parse,
> +	.sym_tbl	= &icmpx_code_tbl,
>   };
>
>   static void time_type_print(const struct expr *expr)
>

--
To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2014-12-10 23:47 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-12-10 22:14 [PATCH] dtype: remove unnecessary icmp* parse/print functions Patrick McHardy
2014-12-10 23:48 ` Álvaro Neira Ayuso

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).