From ccc5da470e76032f8e175920553516835efb30f1 Mon Sep 17 00:00:00 2001 From: Elise Lennion Date: Tue, 29 Nov 2016 23:12:37 -0200 Subject: datatype: Replace getnameinfo() by internal lookup table To avoid exceeding the inputs number limit of the flex scanner used, when calling getnameinfo() in inet_service_type_print(). The new symbol_table was associated with inet_service_type, to enable listing all pre-defined services using nft command line tool. The listed services are all well-known and registered ports of my local /etc/services file, from Ubuntu 16.04. Service numbers are converted to respect network byte order. Signed-off-by: Elise Lennion Signed-off-by: Pablo Neira Ayuso --- include/datatype.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'include/datatype.h') diff --git a/include/datatype.h b/include/datatype.h index 9f3f711c..d4fe817b 100644 --- a/include/datatype.h +++ b/include/datatype.h @@ -196,6 +196,8 @@ extern void symbol_table_print(const struct symbol_table *tbl, extern struct symbol_table *rt_symbol_table_init(const char *filename); extern void rt_symbol_table_free(struct symbol_table *tbl); +extern const struct symbol_table inet_service_tbl; + extern const struct datatype invalid_type; extern const struct datatype verdict_type; extern const struct datatype nfproto_type; -- cgit v1.2.3