diff --git a/epan/ftypes/ftype-bytes.c b/epan/ftypes/ftype-bytes.c index be60f1668b..f4363ac110 100644 --- a/epan/ftypes/ftype-bytes.c +++ b/epan/ftypes/ftype-bytes.c @@ -742,7 +742,6 @@ ftype_register_bytes(void) value_get, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq, cmp_ne, @@ -775,7 +774,6 @@ ftype_register_bytes(void) value_get, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq, cmp_ne, @@ -808,7 +806,6 @@ ftype_register_bytes(void) value_get, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_integer */ cmp_eq, cmp_ne, @@ -841,7 +838,6 @@ ftype_register_bytes(void) value_get, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_integer */ cmp_eq, cmp_ne, @@ -874,7 +870,6 @@ ftype_register_bytes(void) value_get, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq, cmp_ne, @@ -907,7 +902,6 @@ ftype_register_bytes(void) value_get, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq, cmp_ne, @@ -940,7 +934,6 @@ ftype_register_bytes(void) value_get, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq, cmp_ne, @@ -973,7 +966,6 @@ ftype_register_bytes(void) value_get, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq, cmp_ne, @@ -1006,7 +998,6 @@ ftype_register_bytes(void) value_get, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq, cmp_ne, diff --git a/epan/ftypes/ftype-double.c b/epan/ftypes/ftype-double.c index 02a6ef1689..1e994ab66c 100644 --- a/epan/ftypes/ftype-double.c +++ b/epan/ftypes/ftype-double.c @@ -175,7 +175,6 @@ ftype_register_double(void) NULL, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq, cmp_ne, @@ -208,7 +207,6 @@ ftype_register_double(void) NULL, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq, cmp_ne, diff --git a/epan/ftypes/ftype-guid.c b/epan/ftypes/ftype-guid.c index a14cfa31f9..ceb758f56e 100644 --- a/epan/ftypes/ftype-guid.c +++ b/epan/ftypes/ftype-guid.c @@ -140,7 +140,6 @@ ftype_register_guid(void) value_get, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq, cmp_ne, diff --git a/epan/ftypes/ftype-ieee-11073-float.c b/epan/ftypes/ftype-ieee-11073-float.c index f05f026711..2cb7384a82 100644 --- a/epan/ftypes/ftype-ieee-11073-float.c +++ b/epan/ftypes/ftype-ieee-11073-float.c @@ -1443,7 +1443,6 @@ Example: 114 is 0x0072 NULL, /* get_value_ptr */ sfloat_ieee_11073_value_get, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ sfloat_ieee_11073_cmp_eq, sfloat_ieee_11073_cmp_ne, @@ -1503,7 +1502,6 @@ Example: 36.4 is 0xFF00016C NULL, /* get_value_ptr */ float_ieee_11073_value_get, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ float_ieee_11073_cmp_eq, float_ieee_11073_cmp_ne, diff --git a/epan/ftypes/ftype-integer.c b/epan/ftypes/ftype-integer.c index 35244b9d36..f2317d6001 100644 --- a/epan/ftypes/ftype-integer.c +++ b/epan/ftypes/ftype-integer.c @@ -1031,7 +1031,6 @@ ftype_register_integers(void) NULL, /* get_value_ptr */ get_uinteger, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq, cmp_ne, @@ -1063,7 +1062,6 @@ ftype_register_integers(void) NULL, /* get_value_ptr */ get_uinteger, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq, cmp_ne, @@ -1095,7 +1093,6 @@ ftype_register_integers(void) NULL, /* get_value_ptr */ get_uinteger, /* get_value_integer */ - NULL, /* get_value_sinteger */ cmp_eq, cmp_ne, @@ -1127,7 +1124,6 @@ ftype_register_integers(void) NULL, /* get_value_ptr */ get_uinteger, /* get_value_integer */ - NULL, /* get_value_sinteger */ cmp_eq, cmp_ne, @@ -1159,7 +1155,6 @@ ftype_register_integers(void) NULL, /* get_value_ptr */ get_uinteger, /* get_value_integer */ - NULL, /* get_value_sinteger */ cmp_eq, cmp_ne, @@ -1191,7 +1186,6 @@ ftype_register_integers(void) NULL, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq64, cmp_ne64, @@ -1223,7 +1217,6 @@ ftype_register_integers(void) NULL, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq64, cmp_ne64, @@ -1255,7 +1248,6 @@ ftype_register_integers(void) NULL, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq64, cmp_ne64, @@ -1287,7 +1279,6 @@ ftype_register_integers(void) NULL, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq64, cmp_ne64, @@ -1315,11 +1306,10 @@ ftype_register_integers(void) integer_repr_len, /* len_string_repr */ { .set_value_sinteger = set_sinteger }, /* union set_value */ - { NULL }, /* union get_value */ + { .get_value_sinteger = get_sinteger }, /* union get_value */ NULL, /* get_value_ptr */ NULL, /* get_value_uinteger */ - get_sinteger, /* get_value_sinteger */ cmp_eq, cmp_ne, @@ -1347,11 +1337,10 @@ ftype_register_integers(void) integer_repr_len, /* len_string_repr */ { .set_value_sinteger = set_sinteger }, /* union set_value */ - { NULL }, /* union get_value */ + { .get_value_sinteger = get_sinteger }, /* union get_value */ NULL, /* get_value_ptr */ NULL, /* get_value_uinteger */ - get_sinteger, /* get_value_sinteger */ cmp_eq, cmp_ne, @@ -1379,11 +1368,10 @@ ftype_register_integers(void) integer_repr_len, /* len_string_repr */ { .set_value_sinteger = set_sinteger }, /* union set_value */ - { NULL }, /* union get_value */ + { .get_value_sinteger = get_sinteger }, /* union get_value */ NULL, /* get_value_ptr */ NULL, /* get_value_uinteger */ - get_sinteger, /* get_value_integer */ cmp_eq, cmp_ne, @@ -1411,11 +1399,10 @@ ftype_register_integers(void) integer_repr_len, /* len_string_repr */ { .set_value_sinteger = set_sinteger }, /* union set_value */ - { NULL }, /* union get_value */ + { .get_value_sinteger = get_sinteger }, /* union get_value */ NULL, /* get_value_ptr */ NULL, /* get_value_uinteger */ - get_sinteger, /* get_value_sinteger */ cmp_eq, cmp_ne, @@ -1447,7 +1434,6 @@ ftype_register_integers(void) NULL, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq64, cmp_ne64, @@ -1479,7 +1465,6 @@ ftype_register_integers(void) NULL, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq64, cmp_ne64, @@ -1511,7 +1496,6 @@ ftype_register_integers(void) NULL, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq64, cmp_ne64, @@ -1543,7 +1527,6 @@ ftype_register_integers(void) NULL, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq64, cmp_ne64, @@ -1575,7 +1558,6 @@ ftype_register_integers(void) NULL, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ bool_eq, /* cmp_eq */ bool_ne, /* cmp_ne */ @@ -1608,7 +1590,6 @@ ftype_register_integers(void) NULL, /* get_value_ptr */ get_uinteger, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq, cmp_ne, @@ -1641,7 +1622,6 @@ ftype_register_integers(void) NULL, /* get_value_ptr */ get_uinteger, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq, cmp_ne, @@ -1674,7 +1654,6 @@ ftype_register_integers(void) NULL, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq64, cmp_ne64, diff --git a/epan/ftypes/ftype-ipv4.c b/epan/ftypes/ftype-ipv4.c index 9eb6204b71..3501188b42 100644 --- a/epan/ftypes/ftype-ipv4.c +++ b/epan/ftypes/ftype-ipv4.c @@ -190,7 +190,6 @@ ftype_register_ipv4(void) value_get, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq, cmp_ne, diff --git a/epan/ftypes/ftype-ipv6.c b/epan/ftypes/ftype-ipv6.c index eedf8f0c96..3221eb17a0 100644 --- a/epan/ftypes/ftype-ipv6.c +++ b/epan/ftypes/ftype-ipv6.c @@ -240,7 +240,6 @@ ftype_register_ipv6(void) value_get, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq, cmp_ne, diff --git a/epan/ftypes/ftype-none.c b/epan/ftypes/ftype-none.c index f599df6dd7..c28ec0175f 100644 --- a/epan/ftypes/ftype-none.c +++ b/epan/ftypes/ftype-none.c @@ -44,7 +44,6 @@ ftype_register_none(void) NULL, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ NULL, /* cmp_eq */ NULL, /* cmp_ne */ diff --git a/epan/ftypes/ftype-pcre.c b/epan/ftypes/ftype-pcre.c index 4bc6d073ed..c570cdc53d 100644 --- a/epan/ftypes/ftype-pcre.c +++ b/epan/ftypes/ftype-pcre.c @@ -168,7 +168,6 @@ ftype_register_pcre(void) gregex_fvalue_get, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ NULL, /* cmp_eq */ NULL, /* cmp_ne */ diff --git a/epan/ftypes/ftype-protocol.c b/epan/ftypes/ftype-protocol.c index 9bdf3c9b03..37c64823dd 100644 --- a/epan/ftypes/ftype-protocol.c +++ b/epan/ftypes/ftype-protocol.c @@ -468,7 +468,6 @@ ftype_register_tvbuff(void) value_get, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq, cmp_ne, diff --git a/epan/ftypes/ftype-string.c b/epan/ftypes/ftype-string.c index 311c3c9d31..3b388aab4c 100644 --- a/epan/ftypes/ftype-string.c +++ b/epan/ftypes/ftype-string.c @@ -245,7 +245,6 @@ ftype_register_string(void) value_get, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq, cmp_ne, @@ -277,7 +276,6 @@ ftype_register_string(void) value_get, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq, cmp_ne, @@ -309,7 +307,6 @@ ftype_register_string(void) value_get, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq, cmp_ne, @@ -341,7 +338,6 @@ ftype_register_string(void) value_get, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq, cmp_ne, diff --git a/epan/ftypes/ftype-time.c b/epan/ftypes/ftype-time.c index 70dc0ed57c..0119f7a200 100644 --- a/epan/ftypes/ftype-time.c +++ b/epan/ftypes/ftype-time.c @@ -400,7 +400,6 @@ ftype_register_time(void) value_get, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq, cmp_ne, @@ -432,7 +431,6 @@ ftype_register_time(void) value_get, /* get_value_ptr */ NULL, /* get_value_uinteger */ - NULL, /* get_value_sinteger */ cmp_eq, cmp_ne, diff --git a/epan/ftypes/ftypes-int.h b/epan/ftypes/ftypes-int.h index b76b6ff086..6abc79a1f6 100644 --- a/epan/ftypes/ftypes-int.h +++ b/epan/ftypes/ftypes-int.h @@ -105,6 +105,7 @@ struct _ftype_t { } set_value; union { + FvalueGetSignedIntegerFunc get_value_sinteger; FvalueGetUnsignedInteger64Func get_value_uinteger64; FvalueGetSignedInteger64Func get_value_sinteger64; FvalueGetFloatingFunc get_value_floating; @@ -113,7 +114,6 @@ struct _ftype_t { /* could be union */ FvalueGetFunc get_value_ptr; FvalueGetUnsignedIntegerFunc get_value_uinteger; - FvalueGetSignedIntegerFunc get_value_sinteger; FvalueCmp cmp_eq; FvalueCmp cmp_ne; diff --git a/epan/ftypes/ftypes.c b/epan/ftypes/ftypes.c index 5c2fafb200..8a0b4df387 100644 --- a/epan/ftypes/ftypes.c +++ b/epan/ftypes/ftypes.c @@ -633,8 +633,12 @@ fvalue_get_uinteger(fvalue_t *fv) gint32 fvalue_get_sinteger(fvalue_t *fv) { - g_assert(fv->ftype->get_value_sinteger); - return fv->ftype->get_value_sinteger(fv); + g_assert(fv->ftype->ftype == FT_INT8 || + fv->ftype->ftype == FT_INT16 || + fv->ftype->ftype == FT_INT24 || + fv->ftype->ftype == FT_INT32); + g_assert(fv->ftype->get_value.get_value_sinteger); + return fv->ftype->get_value.get_value_sinteger(fv); } guint64