From 8b11bc7b040862cfa5afd06541fb26829392a43c Mon Sep 17 00:00:00 2001 From: Martin Kaiser Date: Thu, 9 Mar 2017 23:05:18 +0100 Subject: ftypes: move set_value_protocol into the union Delete set_value_protocol from struct _ftype_t, make it part of the set_value union. Change-Id: Iae55388b8a2c965944028499619282c3232c31f3 Reviewed-on: https://code.wireshark.org/review/20475 Reviewed-by: Peter Wu Petri-Dish: Peter Wu Tested-by: Petri Dish Buildbot Reviewed-by: Michael Mann --- epan/ftypes/ftype-bytes.c | 9 --------- epan/ftypes/ftype-double.c | 2 -- epan/ftypes/ftype-guid.c | 1 - epan/ftypes/ftype-ieee-11073-float.c | 2 -- epan/ftypes/ftype-integer.c | 21 --------------------- epan/ftypes/ftype-ipv4.c | 1 - epan/ftypes/ftype-ipv6.c | 1 - epan/ftypes/ftype-none.c | 1 - epan/ftypes/ftype-pcre.c | 1 - epan/ftypes/ftype-protocol.c | 3 +-- epan/ftypes/ftype-string.c | 4 ---- epan/ftypes/ftype-time.c | 2 -- epan/ftypes/ftypes-int.h | 2 +- epan/ftypes/ftypes.c | 5 +++-- 14 files changed, 5 insertions(+), 50 deletions(-) (limited to 'epan/ftypes') diff --git a/epan/ftypes/ftype-bytes.c b/epan/ftypes/ftype-bytes.c index 817a1d064c..3738a64566 100644 --- a/epan/ftypes/ftype-bytes.c +++ b/epan/ftypes/ftype-bytes.c @@ -739,7 +739,6 @@ ftype_register_bytes(void) { .set_value_byte_array = bytes_fvalue_set }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ @@ -781,7 +780,6 @@ ftype_register_bytes(void) { .set_value_byte_array = bytes_fvalue_set }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ @@ -823,7 +821,6 @@ ftype_register_bytes(void) { .set_value_bytes = ax25_fvalue_set }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_integer */ NULL, /* set_value_uinteger64 */ @@ -865,7 +862,6 @@ ftype_register_bytes(void) { .set_value_bytes = vines_fvalue_set }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_integer */ NULL, /* set_value_uinteger64 */ @@ -907,7 +903,6 @@ ftype_register_bytes(void) { .set_value_bytes = ether_fvalue_set }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ @@ -949,7 +944,6 @@ ftype_register_bytes(void) { .set_value_byte_array = oid_fvalue_set }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ @@ -991,7 +985,6 @@ ftype_register_bytes(void) { .set_value_byte_array = oid_fvalue_set }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ @@ -1033,7 +1026,6 @@ ftype_register_bytes(void) { .set_value_byte_array = system_id_fvalue_set }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ @@ -1075,7 +1067,6 @@ ftype_register_bytes(void) { .set_value_bytes = fcwwn_fvalue_set }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ diff --git a/epan/ftypes/ftype-double.c b/epan/ftypes/ftype-double.c index dd7bb4cf89..01dde67149 100644 --- a/epan/ftypes/ftype-double.c +++ b/epan/ftypes/ftype-double.c @@ -172,7 +172,6 @@ ftype_register_double(void) { NULL }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ @@ -214,7 +213,6 @@ ftype_register_double(void) { NULL }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ diff --git a/epan/ftypes/ftype-guid.c b/epan/ftypes/ftype-guid.c index 959ed8e9fc..9d11aa1574 100644 --- a/epan/ftypes/ftype-guid.c +++ b/epan/ftypes/ftype-guid.c @@ -137,7 +137,6 @@ ftype_register_guid(void) { .set_value_guid = guid_fvalue_set_guid }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ diff --git a/epan/ftypes/ftype-ieee-11073-float.c b/epan/ftypes/ftype-ieee-11073-float.c index 15480ea828..7400c302b6 100644 --- a/epan/ftypes/ftype-ieee-11073-float.c +++ b/epan/ftypes/ftype-ieee-11073-float.c @@ -1440,7 +1440,6 @@ Example: 114 is 0x0072 { NULL }, /* union set_value */ - NULL, /* set_value_protocol */ sfloat_ieee_11073_value_set, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ @@ -1509,7 +1508,6 @@ Example: 36.4 is 0xFF00016C { NULL }, /* union set_value */ - NULL, /* set_value_protocol */ float_ieee_11073_value_set, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ diff --git a/epan/ftypes/ftype-integer.c b/epan/ftypes/ftype-integer.c index 782aa0193d..17aaebb8d7 100644 --- a/epan/ftypes/ftype-integer.c +++ b/epan/ftypes/ftype-integer.c @@ -1028,7 +1028,6 @@ ftype_register_integers(void) { NULL }, /* union set_value */ - NULL, /* set_value_protocol */ set_uinteger, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ @@ -1069,7 +1068,6 @@ ftype_register_integers(void) { NULL }, /* union set_value */ - NULL, /* set_value_protocol */ set_uinteger, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ @@ -1110,7 +1108,6 @@ ftype_register_integers(void) { NULL }, /* union set_value */ - NULL, /* set_value_protocol */ set_uinteger, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ @@ -1151,7 +1148,6 @@ ftype_register_integers(void) { NULL }, /* union set_value */ - NULL, /* set_value_protocol */ set_uinteger, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ @@ -1192,7 +1188,6 @@ ftype_register_integers(void) { NULL }, /* union set_value */ - NULL, /* set_value_protocol */ set_uinteger, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ @@ -1233,7 +1228,6 @@ ftype_register_integers(void) { NULL }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_sinteger */ set_uinteger64, /* set_value_uinteger64 */ @@ -1274,7 +1268,6 @@ ftype_register_integers(void) { NULL }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_sinteger */ set_uinteger64, /* set_value_uinteger64 */ @@ -1315,7 +1308,6 @@ ftype_register_integers(void) { NULL }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_sinteger */ set_uinteger64, /* set_value_uinteger64 */ @@ -1356,7 +1348,6 @@ ftype_register_integers(void) { NULL }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_sinteger */ set_uinteger64, /* set_value_uinteger64 */ @@ -1397,7 +1388,6 @@ ftype_register_integers(void) { NULL }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ set_sinteger, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ @@ -1438,7 +1428,6 @@ ftype_register_integers(void) { NULL }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ set_sinteger, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ @@ -1479,7 +1468,6 @@ ftype_register_integers(void) { NULL }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ set_sinteger, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ @@ -1520,7 +1508,6 @@ ftype_register_integers(void) { NULL }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ set_sinteger, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ @@ -1561,7 +1548,6 @@ ftype_register_integers(void) { NULL }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ @@ -1602,7 +1588,6 @@ ftype_register_integers(void) { NULL }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ @@ -1643,7 +1628,6 @@ ftype_register_integers(void) { NULL }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ @@ -1684,7 +1668,6 @@ ftype_register_integers(void) { NULL }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ @@ -1725,7 +1708,6 @@ ftype_register_integers(void) { NULL }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_sinteger */ set_uinteger64, /* set_value_uinteger64 */ @@ -1767,7 +1749,6 @@ ftype_register_integers(void) { NULL }, /* union set_value */ - NULL, /* set_value_protocol */ set_uinteger, /* set_value_uinteger */ NULL, /* get_value_sinteger */ NULL, /* set_value_uinteger64 */ @@ -1809,7 +1790,6 @@ ftype_register_integers(void) { NULL }, /* union set_value */ - NULL, /* set_value_protocol */ set_uinteger, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ @@ -1851,7 +1831,6 @@ ftype_register_integers(void) { NULL }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_sinteger */ set_uinteger64, /* set_value_uinteger64 */ diff --git a/epan/ftypes/ftype-ipv4.c b/epan/ftypes/ftype-ipv4.c index 7761e0c105..7611c9f279 100644 --- a/epan/ftypes/ftype-ipv4.c +++ b/epan/ftypes/ftype-ipv4.c @@ -187,7 +187,6 @@ ftype_register_ipv4(void) { NULL }, /* union set_value */ - NULL, /* set_value_protocol */ set_uinteger, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ diff --git a/epan/ftypes/ftype-ipv6.c b/epan/ftypes/ftype-ipv6.c index 98eb03fbd5..1ef45755fe 100644 --- a/epan/ftypes/ftype-ipv6.c +++ b/epan/ftypes/ftype-ipv6.c @@ -237,7 +237,6 @@ ftype_register_ipv6(void) { .set_value_bytes = ipv6_fvalue_set }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ diff --git a/epan/ftypes/ftype-none.c b/epan/ftypes/ftype-none.c index 320a8069b7..c8201b94b7 100644 --- a/epan/ftypes/ftype-none.c +++ b/epan/ftypes/ftype-none.c @@ -41,7 +41,6 @@ ftype_register_none(void) { NULL }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ diff --git a/epan/ftypes/ftype-pcre.c b/epan/ftypes/ftype-pcre.c index 35d0e48b88..637d1a753f 100644 --- a/epan/ftypes/ftype-pcre.c +++ b/epan/ftypes/ftype-pcre.c @@ -165,7 +165,6 @@ ftype_register_pcre(void) { .set_value_string = gregex_fvalue_set }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ diff --git a/epan/ftypes/ftype-protocol.c b/epan/ftypes/ftype-protocol.c index 64aa09a830..f0f25e9085 100644 --- a/epan/ftypes/ftype-protocol.c +++ b/epan/ftypes/ftype-protocol.c @@ -463,9 +463,8 @@ ftype_register_tvbuff(void) val_to_repr, /* val_to_string_repr */ val_repr_len, /* len_string_repr */ - { NULL }, /* union set_value */ + { .set_value_protocol = value_set }, /* union set_value */ - value_set, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ diff --git a/epan/ftypes/ftype-string.c b/epan/ftypes/ftype-string.c index d0fec6145f..0929d0d3f9 100644 --- a/epan/ftypes/ftype-string.c +++ b/epan/ftypes/ftype-string.c @@ -242,7 +242,6 @@ ftype_register_string(void) { .set_value_string = string_fvalue_set_string }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ @@ -283,7 +282,6 @@ ftype_register_string(void) { .set_value_string = string_fvalue_set_string }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ @@ -324,7 +322,6 @@ ftype_register_string(void) { .set_value_string = string_fvalue_set_string }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ @@ -365,7 +362,6 @@ ftype_register_string(void) { .set_value_string = string_fvalue_set_string }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ diff --git a/epan/ftypes/ftype-time.c b/epan/ftypes/ftype-time.c index 4c11f579d3..6a615a8e68 100644 --- a/epan/ftypes/ftype-time.c +++ b/epan/ftypes/ftype-time.c @@ -397,7 +397,6 @@ ftype_register_time(void) { .set_value_time = time_fvalue_set }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ @@ -438,7 +437,6 @@ ftype_register_time(void) { .set_value_time = time_fvalue_set }, /* union set_value */ - NULL, /* set_value_protocol */ NULL, /* set_value_uinteger */ NULL, /* set_value_sinteger */ NULL, /* set_value_uinteger64 */ diff --git a/epan/ftypes/ftypes-int.h b/epan/ftypes/ftypes-int.h index bf65e9b0da..d5883c74bd 100644 --- a/epan/ftypes/ftypes-int.h +++ b/epan/ftypes/ftypes-int.h @@ -96,10 +96,10 @@ struct _ftype_t { FvalueSetGuidFunc set_value_guid; FvalueSetTimeFunc set_value_time; FvalueSetStringFunc set_value_string; + FvalueSetProtocolFunc set_value_protocol; } set_value; /* could be union */ - FvalueSetProtocolFunc set_value_protocol; FvalueSetUnsignedIntegerFunc set_value_uinteger; FvalueSetSignedIntegerFunc set_value_sinteger; FvalueSetUnsignedInteger64Func set_value_uinteger64; diff --git a/epan/ftypes/ftypes.c b/epan/ftypes/ftypes.c index 21ae24cc04..5117849758 100644 --- a/epan/ftypes/ftypes.c +++ b/epan/ftypes/ftypes.c @@ -549,8 +549,9 @@ fvalue_set_string(fvalue_t *fv, const gchar *value) void fvalue_set_protocol(fvalue_t *fv, tvbuff_t *value, const gchar *name) { - g_assert(fv->ftype->set_value_protocol); - fv->ftype->set_value_protocol(fv, value, name); + g_assert(fv->ftype->ftype == FT_PROTOCOL); + g_assert(fv->ftype->set_value.set_value_protocol); + fv->ftype->set_value.set_value_protocol(fv, value, name); } void -- cgit v1.2.1