diff --git a/epan/ftypes/ftype-bytes.c b/epan/ftypes/ftype-bytes.c index 0d10c95652..148c3fc856 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_sinteger64 */ NULL, /* set_value_floating */ value_get, /* get_value */ @@ -777,7 +776,6 @@ ftype_register_bytes(void) { .set_value_byte_array = bytes_fvalue_set }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ value_get, /* get_value */ @@ -815,7 +813,6 @@ ftype_register_bytes(void) { .set_value_bytes = ax25_fvalue_set }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ value_get, /* get_value */ @@ -853,7 +850,6 @@ ftype_register_bytes(void) { .set_value_bytes = vines_fvalue_set }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ value_get, /* get_value */ @@ -891,7 +887,6 @@ ftype_register_bytes(void) { .set_value_bytes = ether_fvalue_set }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ value_get, /* get_value */ @@ -929,7 +924,6 @@ ftype_register_bytes(void) { .set_value_byte_array = oid_fvalue_set }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ value_get, /* get_value */ @@ -967,7 +961,6 @@ ftype_register_bytes(void) { .set_value_byte_array = oid_fvalue_set }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ value_get, /* get_value */ @@ -1005,7 +998,6 @@ ftype_register_bytes(void) { .set_value_byte_array = system_id_fvalue_set }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ value_get, /* get_value */ @@ -1043,7 +1035,6 @@ ftype_register_bytes(void) { .set_value_bytes = fcwwn_fvalue_set }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ value_get, /* get_value */ diff --git a/epan/ftypes/ftype-double.c b/epan/ftypes/ftype-double.c index 2fdb2a38a9..5891eabd7b 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_sinteger64 */ double_fvalue_set_floating, /* set_value_floating */ NULL, /* get_value */ @@ -210,7 +209,6 @@ ftype_register_double(void) { NULL }, /* union set_value */ - NULL, /* set_value_sinteger64 */ double_fvalue_set_floating, /* set_value_floating */ NULL, /* get_value */ diff --git a/epan/ftypes/ftype-guid.c b/epan/ftypes/ftype-guid.c index e2bbe708e5..59a3c54f96 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_sinteger64 */ NULL, /* set_value_floating */ value_get, /* get_value */ diff --git a/epan/ftypes/ftype-ieee-11073-float.c b/epan/ftypes/ftype-ieee-11073-float.c index ef10e53e6a..83b43a40c7 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 { .set_value_uinteger = sfloat_ieee_11073_value_set }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ NULL, /* get_value */ @@ -1505,7 +1504,6 @@ Example: 36.4 is 0xFF00016C { .set_value_uinteger = float_ieee_11073_value_set }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ NULL, /* get_value */ diff --git a/epan/ftypes/ftype-integer.c b/epan/ftypes/ftype-integer.c index 4bf64eb611..de0fc6726b 100644 --- a/epan/ftypes/ftype-integer.c +++ b/epan/ftypes/ftype-integer.c @@ -1028,7 +1028,6 @@ ftype_register_integers(void) { .set_value_uinteger = set_uinteger }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ NULL, /* get_value */ @@ -1065,7 +1064,6 @@ ftype_register_integers(void) { .set_value_uinteger = set_uinteger }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ NULL, /* get_value */ @@ -1102,7 +1100,6 @@ ftype_register_integers(void) { .set_value_uinteger = set_uinteger }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ NULL, /* get_value */ @@ -1139,7 +1136,6 @@ ftype_register_integers(void) { .set_value_uinteger = set_uinteger }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ NULL, /* get_value */ @@ -1176,7 +1172,6 @@ ftype_register_integers(void) { .set_value_uinteger = set_uinteger }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ NULL, /* get_value */ @@ -1213,7 +1208,6 @@ ftype_register_integers(void) { .set_value_uinteger64 = set_uinteger64 }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ NULL, /* get_value */ @@ -1250,7 +1244,6 @@ ftype_register_integers(void) { .set_value_uinteger64 = set_uinteger64 }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ NULL, /* get_value */ @@ -1287,7 +1280,6 @@ ftype_register_integers(void) { .set_value_uinteger64 = set_uinteger64 }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ NULL, /* get_value */ @@ -1324,7 +1316,6 @@ ftype_register_integers(void) { .set_value_uinteger64 = set_uinteger64 }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ NULL, /* get_value */ @@ -1361,7 +1352,6 @@ ftype_register_integers(void) { .set_value_sinteger = set_sinteger }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ NULL, /* get_value */ @@ -1398,7 +1388,6 @@ ftype_register_integers(void) { .set_value_sinteger = set_sinteger }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ NULL, /* get_value */ @@ -1435,7 +1424,6 @@ ftype_register_integers(void) { .set_value_sinteger = set_sinteger }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ NULL, /* get_value */ @@ -1472,7 +1460,6 @@ ftype_register_integers(void) { .set_value_sinteger = set_sinteger }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ NULL, /* get_value */ @@ -1507,9 +1494,8 @@ ftype_register_integers(void) integer64_to_repr, /* val_to_string_repr */ integer64_repr_len, /* len_string_repr */ - { NULL }, /* union set_value */ + { .set_value_sinteger64 = set_sinteger64 }, /* union set_value */ - set_sinteger64, /* set_value_sinteger64 */ NULL, /* set_value_floating */ NULL, /* get_value */ @@ -1544,9 +1530,8 @@ ftype_register_integers(void) integer64_to_repr, /* val_to_string_repr */ integer64_repr_len, /* len_string_repr */ - { NULL }, /* union set_value */ + { .set_value_sinteger64 = set_sinteger64 }, /* union set_value */ - set_sinteger64, /* set_value_sinteger64 */ NULL, /* set_value_floating */ NULL, /* get_value */ @@ -1581,9 +1566,8 @@ ftype_register_integers(void) integer64_to_repr, /* val_to_string_repr */ integer64_repr_len, /* len_string_repr */ - { NULL }, /* union set_value */ + { .set_value_sinteger64 = set_sinteger64 }, /* union set_value */ - set_sinteger64, /* set_value_sinteger64 */ NULL, /* set_value_floating */ NULL, /* get_value */ @@ -1618,9 +1602,8 @@ ftype_register_integers(void) integer64_to_repr, /* val_to_string_repr */ integer64_repr_len, /* len_string_repr */ - { NULL }, /* union set_value */ + { .set_value_sinteger64 = set_sinteger64 }, /* union set_value */ - set_sinteger64, /* set_value_sinteger64 */ NULL, /* set_value_floating */ NULL, /* get_value */ @@ -1657,7 +1640,6 @@ ftype_register_integers(void) { .set_value_uinteger64 = set_uinteger64 }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ NULL, /* get_value */ @@ -1695,7 +1677,6 @@ ftype_register_integers(void) { .set_value_uinteger = set_uinteger }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ NULL, /* get_value */ @@ -1733,7 +1714,6 @@ ftype_register_integers(void) { .set_value_uinteger = set_uinteger }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ NULL, /* get_value */ @@ -1771,7 +1751,6 @@ ftype_register_integers(void) { .set_value_uinteger64 = set_uinteger64 }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ NULL, /* get_value */ diff --git a/epan/ftypes/ftype-ipv4.c b/epan/ftypes/ftype-ipv4.c index f3ef2c72c0..f00e26ff02 100644 --- a/epan/ftypes/ftype-ipv4.c +++ b/epan/ftypes/ftype-ipv4.c @@ -187,7 +187,6 @@ ftype_register_ipv4(void) { .set_value_uinteger = set_uinteger }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ value_get, /* get_value */ diff --git a/epan/ftypes/ftype-ipv6.c b/epan/ftypes/ftype-ipv6.c index 57c41dd984..f780fd26cb 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_sinteger64 */ NULL, /* set_value_floating */ value_get, /* get_value */ diff --git a/epan/ftypes/ftype-none.c b/epan/ftypes/ftype-none.c index 2846b11bbb..a393b51f6e 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_sinteger64 */ NULL, /* set_value_floating */ NULL, /* get_value */ diff --git a/epan/ftypes/ftype-pcre.c b/epan/ftypes/ftype-pcre.c index 63db531fac..6d8dd99bd4 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_sinteger64 */ NULL, /* set_value_floating */ gregex_fvalue_get, /* get_value */ diff --git a/epan/ftypes/ftype-protocol.c b/epan/ftypes/ftype-protocol.c index 8ae96c6c44..6be868f6cb 100644 --- a/epan/ftypes/ftype-protocol.c +++ b/epan/ftypes/ftype-protocol.c @@ -465,7 +465,6 @@ ftype_register_tvbuff(void) { .set_value_protocol = value_set }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ value_get, /* get_value */ diff --git a/epan/ftypes/ftype-string.c b/epan/ftypes/ftype-string.c index a6dcf9f01c..d623ad4451 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_sinteger64 */ NULL, /* set_value_floating */ value_get, /* get_value */ @@ -279,7 +278,6 @@ ftype_register_string(void) { .set_value_string = string_fvalue_set_string }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ value_get, /* get_value */ @@ -316,7 +314,6 @@ ftype_register_string(void) { .set_value_string = string_fvalue_set_string }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ value_get, /* get_value */ @@ -353,7 +350,6 @@ ftype_register_string(void) { .set_value_string = string_fvalue_set_string }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ value_get, /* get_value */ diff --git a/epan/ftypes/ftype-time.c b/epan/ftypes/ftype-time.c index 4849d64573..39076a57ee 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_sinteger64 */ NULL, /* set_value_floating */ value_get, /* get_value */ @@ -434,7 +433,6 @@ ftype_register_time(void) { .set_value_time = time_fvalue_set }, /* union set_value */ - NULL, /* set_value_sinteger64 */ NULL, /* set_value_floating */ value_get, /* get_value */ diff --git a/epan/ftypes/ftypes-int.h b/epan/ftypes/ftypes-int.h index 712f615e9d..1b583b7a67 100644 --- a/epan/ftypes/ftypes-int.h +++ b/epan/ftypes/ftypes-int.h @@ -100,10 +100,10 @@ struct _ftype_t { FvalueSetUnsignedIntegerFunc set_value_uinteger; FvalueSetSignedIntegerFunc set_value_sinteger; FvalueSetUnsignedInteger64Func set_value_uinteger64; + FvalueSetSignedInteger64Func set_value_sinteger64; } set_value; /* could be union */ - FvalueSetSignedInteger64Func set_value_sinteger64; FvalueSetFloatingFunc set_value_floating; /* could be union */ diff --git a/epan/ftypes/ftypes.c b/epan/ftypes/ftypes.c index 3adafa4b46..f4ae611476 100644 --- a/epan/ftypes/ftypes.c +++ b/epan/ftypes/ftypes.c @@ -598,8 +598,12 @@ fvalue_set_uinteger64(fvalue_t *fv, guint64 value) void fvalue_set_sinteger64(fvalue_t *fv, gint64 value) { - g_assert(fv->ftype->set_value_sinteger64); - fv->ftype->set_value_sinteger64(fv, value); + g_assert(fv->ftype->ftype == FT_INT40 || + fv->ftype->ftype == FT_INT48 || + fv->ftype->ftype == FT_INT56 || + fv->ftype->ftype == FT_INT64); + g_assert(fv->ftype->set_value.set_value_sinteger64); + fv->ftype->set_value.set_value_sinteger64(fv, value); } void