ftypes: move set_value_uinteger into the union

Delete set_value_uinteger from struct _ftype_t, make it part of the
set_value union.

Change-Id: I26de15be8ea0ede76236a8f8a4958bfd97ad9d52
Reviewed-on: https://code.wireshark.org/review/20521
Reviewed-by: Martin Kaiser <wireshark@kaiser.cx>
Petri-Dish: Martin Kaiser <wireshark@kaiser.cx>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
This commit is contained in:
Martin Kaiser 2017-03-12 19:15:19 +01:00 committed by Michael Mann
parent c70927c0e1
commit 9e82cffeea
14 changed files with 23 additions and 59 deletions

View File

@ -739,7 +739,6 @@ ftype_register_bytes(void)
{ .set_value_byte_array = bytes_fvalue_set }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */
@ -780,7 +779,6 @@ ftype_register_bytes(void)
{ .set_value_byte_array = bytes_fvalue_set }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */
@ -821,7 +819,6 @@ ftype_register_bytes(void)
{ .set_value_bytes = ax25_fvalue_set }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_integer */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */
@ -862,7 +859,6 @@ ftype_register_bytes(void)
{ .set_value_bytes = vines_fvalue_set }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_integer */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */
@ -903,7 +899,6 @@ ftype_register_bytes(void)
{ .set_value_bytes = ether_fvalue_set }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */
@ -944,7 +939,6 @@ ftype_register_bytes(void)
{ .set_value_byte_array = oid_fvalue_set }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */
@ -985,7 +979,6 @@ ftype_register_bytes(void)
{ .set_value_byte_array = oid_fvalue_set }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */
@ -1026,7 +1019,6 @@ ftype_register_bytes(void)
{ .set_value_byte_array = system_id_fvalue_set }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */
@ -1067,7 +1059,6 @@ ftype_register_bytes(void)
{ .set_value_bytes = fcwwn_fvalue_set }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */

View File

@ -172,7 +172,6 @@ ftype_register_double(void)
{ NULL }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */
@ -213,7 +212,6 @@ ftype_register_double(void)
{ NULL }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */

View File

@ -137,7 +137,6 @@ ftype_register_guid(void)
{ .set_value_guid = guid_fvalue_set_guid }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */

View File

@ -1438,9 +1438,8 @@ Example: 114 is 0x0072
sfloat_ieee_11073_val_to_repr, /* val_to_string_repr */
sfloat_ieee_11073_val_repr_len, /* len_string_repr */
{ NULL }, /* union set_value */
{ .set_value_uinteger = sfloat_ieee_11073_value_set }, /* union set_value */
sfloat_ieee_11073_value_set, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */
@ -1506,9 +1505,8 @@ Example: 36.4 is 0xFF00016C
float_ieee_11073_val_to_repr, /* val_to_string_repr */
float_ieee_11073_val_repr_len, /* len_string_repr */
{ NULL }, /* union set_value */
{ .set_value_uinteger = float_ieee_11073_value_set }, /* union set_value */
float_ieee_11073_value_set, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */

View File

@ -1026,9 +1026,8 @@ ftype_register_integers(void)
char_to_repr, /* val_to_string_repr */
char_repr_len, /* len_string_repr */
{ NULL }, /* union set_value */
{ .set_value_uinteger = set_uinteger }, /* union set_value */
set_uinteger, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */
@ -1066,9 +1065,8 @@ ftype_register_integers(void)
uinteger_to_repr, /* val_to_string_repr */
uinteger_repr_len, /* len_string_repr */
{ NULL }, /* union set_value */
{ .set_value_uinteger = set_uinteger }, /* union set_value */
set_uinteger, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */
@ -1106,9 +1104,8 @@ ftype_register_integers(void)
uinteger_to_repr, /* val_to_string_repr */
uinteger_repr_len, /* len_string_repr */
{ NULL }, /* union set_value */
{ .set_value_uinteger = set_uinteger }, /* union set_value */
set_uinteger, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */
@ -1146,9 +1143,8 @@ ftype_register_integers(void)
uinteger_to_repr, /* val_to_string_repr */
uinteger_repr_len, /* len_string_repr */
{ NULL }, /* union set_value */
{ .set_value_uinteger = set_uinteger }, /* union set_value */
set_uinteger, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */
@ -1186,9 +1182,8 @@ ftype_register_integers(void)
uinteger_to_repr, /* val_to_string_repr */
uinteger_repr_len, /* len_string_repr */
{ NULL }, /* union set_value */
{ .set_value_uinteger = set_uinteger }, /* union set_value */
set_uinteger, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */
@ -1228,7 +1223,6 @@ ftype_register_integers(void)
{ NULL }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_sinteger */
set_uinteger64, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */
@ -1268,7 +1262,6 @@ ftype_register_integers(void)
{ NULL }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_sinteger */
set_uinteger64, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */
@ -1308,7 +1301,6 @@ ftype_register_integers(void)
{ NULL }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_sinteger */
set_uinteger64, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */
@ -1348,7 +1340,6 @@ ftype_register_integers(void)
{ NULL }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_sinteger */
set_uinteger64, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */
@ -1388,7 +1379,6 @@ ftype_register_integers(void)
{ NULL }, /* union set_value */
NULL, /* set_value_uinteger */
set_sinteger, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */
@ -1428,7 +1418,6 @@ ftype_register_integers(void)
{ NULL }, /* union set_value */
NULL, /* set_value_uinteger */
set_sinteger, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */
@ -1468,7 +1457,6 @@ ftype_register_integers(void)
{ NULL }, /* union set_value */
NULL, /* set_value_uinteger */
set_sinteger, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */
@ -1508,7 +1496,6 @@ ftype_register_integers(void)
{ NULL }, /* union set_value */
NULL, /* set_value_uinteger */
set_sinteger, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */
@ -1548,7 +1535,6 @@ ftype_register_integers(void)
{ NULL }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
set_sinteger64, /* set_value_sinteger64 */
@ -1588,7 +1574,6 @@ ftype_register_integers(void)
{ NULL }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
set_sinteger64, /* set_value_sinteger64 */
@ -1628,7 +1613,6 @@ ftype_register_integers(void)
{ NULL }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
set_sinteger64, /* set_value_sinteger64 */
@ -1668,7 +1652,6 @@ ftype_register_integers(void)
{ NULL }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
set_sinteger64, /* set_value_sinteger64 */
@ -1708,7 +1691,6 @@ ftype_register_integers(void)
{ NULL }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_sinteger */
set_uinteger64, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */
@ -1747,9 +1729,8 @@ ftype_register_integers(void)
ipxnet_to_repr, /* val_to_string_repr */
ipxnet_repr_len, /* len_string_repr */
{ NULL }, /* union set_value */
{ .set_value_uinteger = set_uinteger }, /* union set_value */
set_uinteger, /* set_value_uinteger */
NULL, /* get_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */
@ -1788,9 +1769,8 @@ ftype_register_integers(void)
uinteger_to_repr, /* val_to_string_repr */
uinteger_repr_len, /* len_string_repr */
{ NULL }, /* union set_value */
{ .set_value_uinteger = set_uinteger }, /* union set_value */
set_uinteger, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */
@ -1831,7 +1811,6 @@ ftype_register_integers(void)
{ NULL }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_sinteger */
set_uinteger64, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */

View File

@ -185,9 +185,8 @@ ftype_register_ipv4(void)
val_to_repr, /* val_to_string_repr */
val_repr_len, /* len_string_repr */
{ NULL }, /* union set_value */
{ .set_value_uinteger = set_uinteger }, /* union set_value */
set_uinteger, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */

View File

@ -237,7 +237,6 @@ ftype_register_ipv6(void)
{ .set_value_bytes = ipv6_fvalue_set }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */

View File

@ -41,7 +41,6 @@ ftype_register_none(void)
{ NULL }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */

View File

@ -165,7 +165,6 @@ ftype_register_pcre(void)
{ .set_value_string = gregex_fvalue_set }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */

View File

@ -465,7 +465,6 @@ ftype_register_tvbuff(void)
{ .set_value_protocol = value_set }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */

View File

@ -242,7 +242,6 @@ ftype_register_string(void)
{ .set_value_string = string_fvalue_set_string }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */
@ -282,7 +281,6 @@ ftype_register_string(void)
{ .set_value_string = string_fvalue_set_string }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */
@ -322,7 +320,6 @@ ftype_register_string(void)
{ .set_value_string = string_fvalue_set_string }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */
@ -362,7 +359,6 @@ ftype_register_string(void)
{ .set_value_string = string_fvalue_set_string }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */

View File

@ -397,7 +397,6 @@ ftype_register_time(void)
{ .set_value_time = time_fvalue_set }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */
@ -437,7 +436,6 @@ ftype_register_time(void)
{ .set_value_time = time_fvalue_set }, /* union set_value */
NULL, /* set_value_uinteger */
NULL, /* set_value_sinteger */
NULL, /* set_value_uinteger64 */
NULL, /* set_value_sinteger64 */

View File

@ -97,10 +97,10 @@ struct _ftype_t {
FvalueSetTimeFunc set_value_time;
FvalueSetStringFunc set_value_string;
FvalueSetProtocolFunc set_value_protocol;
FvalueSetUnsignedIntegerFunc set_value_uinteger;
} set_value;
/* could be union */
FvalueSetUnsignedIntegerFunc set_value_uinteger;
FvalueSetSignedIntegerFunc set_value_sinteger;
FvalueSetUnsignedInteger64Func set_value_uinteger64;
FvalueSetSignedInteger64Func set_value_sinteger64;

View File

@ -557,8 +557,18 @@ fvalue_set_protocol(fvalue_t *fv, tvbuff_t *value, const gchar *name)
void
fvalue_set_uinteger(fvalue_t *fv, guint32 value)
{
g_assert(fv->ftype->set_value_uinteger);
fv->ftype->set_value_uinteger(fv, value);
g_assert(fv->ftype->ftype == FT_IEEE_11073_SFLOAT ||
fv->ftype->ftype == FT_IEEE_11073_FLOAT ||
fv->ftype->ftype == FT_CHAR ||
fv->ftype->ftype == FT_UINT8 ||
fv->ftype->ftype == FT_UINT16 ||
fv->ftype->ftype == FT_UINT24 ||
fv->ftype->ftype == FT_UINT32 ||
fv->ftype->ftype == FT_IPXNET ||
fv->ftype->ftype == FT_FRAMENUM ||
fv->ftype->ftype == FT_IPv4);
g_assert(fv->ftype->set_value.set_value_uinteger);
fv->ftype->set_value.set_value_uinteger(fv, value);
}
void