components/wireshark/patches/Bug12236-1.patch
changeset 5873 1b57430f3995
parent 5872 1cb591a3235b
child 5874 4078dc2a92c4
equal deleted inserted replaced
5872:1cb591a3235b 5873:1b57430f3995
     1 From 3570d264c1de081fe0d05309efab46ef569de07e Mon Sep 17 00:00:00 2001
       
     2 From: Guy Harris <[email protected]>
       
     3 Date: Tue, 15 Mar 2016 14:20:02 -0700
       
     4 Subject: [PATCH] FT_BOOLEAN is now stored as a 64-bit value; treat it as such.
       
     5 
       
     6 Always look and set the uinteger64 member of the union for FT_BOOLEAN
       
     7 values.
       
     8 
       
     9 Bug: 12236
       
    10 Change-Id: I7b0166e564b9d6cbb80051a81714a4b4c5f740a2
       
    11 Reviewed-on: https://code.wireshark.org/review/14481
       
    12 Reviewed-by: Guy Harris <[email protected]>
       
    13 ---
       
    14  epan/dfilter/semcheck.c     |  4 ++--
       
    15  epan/ftypes/ftype-integer.c | 14 +++++++-------
       
    16  2 files changed, 9 insertions(+), 9 deletions(-)
       
    17 
       
    18 diff --git a/epan/dfilter/semcheck.c b/epan/dfilter/semcheck.c
       
    19 index de01413..b1fb17b 100644
       
    20 --- epan/dfilter/semcheck.c
       
    21 +++ epan/dfilter/semcheck.c
       
    22 @@ -260,10 +260,10 @@ mk_fvalue_from_val_string(dfwork_t *dfw, header_field_info *hfinfo, char *s)
       
    23  		}
       
    24  
       
    25  		if (g_ascii_strcasecmp(s, tf->true_string) == 0) {
       
    26 -			return mk_uint32_fvalue(TRUE);
       
    27 +			return mk_uint64_fvalue(TRUE);
       
    28  		}
       
    29  		else if (g_ascii_strcasecmp(s, tf->false_string) == 0) {
       
    30 -			return mk_uint32_fvalue(FALSE);
       
    31 +			return mk_uint64_fvalue(FALSE);
       
    32  		}
       
    33  		else {
       
    34  			/*
       
    35 diff --git a/epan/ftypes/ftype-integer.c b/epan/ftypes/ftype-integer.c
       
    36 index b3e6cde..b95d7b5 100644
       
    37 --- epan/ftypes/ftype-integer.c
       
    38 +++ epan/ftypes/ftype-integer.c
       
    39 @@ -675,7 +675,7 @@ cmp_bitwise_and64(const fvalue_t *a, const fvalue_t *b)
       
    40  static void
       
    41  boolean_fvalue_new(fvalue_t *fv)
       
    42  {
       
    43 -	fv->value.uinteger = TRUE;
       
    44 +	fv->value.uinteger64 = TRUE;
       
    45  }
       
    46  
       
    47  static int
       
    48 @@ -687,7 +687,7 @@ boolean_repr_len(fvalue_t *fv _U_, ftrepr_t rtype _U_, int field_display _U_)
       
    49  static void
       
    50  boolean_to_repr(fvalue_t *fv, ftrepr_t rtype _U_, int field_display _U_, char *buf)
       
    51  {
       
    52 -	*buf++ = (fv->value.uinteger) ? '1' : '0';
       
    53 +	*buf++ = (fv->value.uinteger64) ? '1' : '0';
       
    54  	*buf   = '\0';
       
    55  }
       
    56  
       
    57 @@ -695,8 +695,8 @@ boolean_to_repr(fvalue_t *fv, ftrepr_t rtype _U_, int field_display _U_, char *b
       
    58  static gboolean
       
    59  bool_eq(const fvalue_t *a, const fvalue_t *b)
       
    60  {
       
    61 -	if (a->value.uinteger) {
       
    62 -		if (b->value.uinteger) {
       
    63 +	if (a->value.uinteger64) {
       
    64 +		if (b->value.uinteger64) {
       
    65  			return TRUE;
       
    66  		}
       
    67  		else {
       
    68 @@ -704,7 +704,7 @@ bool_eq(const fvalue_t *a, const fvalue_t *b)
       
    69  		}
       
    70  	}
       
    71  	else {
       
    72 -		if (b->value.uinteger) {
       
    73 +		if (b->value.uinteger64) {
       
    74  			return FALSE;
       
    75  		}
       
    76  		else {
       
    77 @@ -1503,14 +1503,14 @@ ftype_register_integers(void)
       
    78  		NULL,				/* set_value_time */
       
    79  		NULL,				/* set_value_string */
       
    80  		NULL,				/* set_value_tvbuff */
       
    81 -		set_uinteger,			/* set_value_uinteger */
       
    82 +		NULL,				/* set_value_uinteger */
       
    83  		NULL,				/* set_value_sinteger */
       
    84  		set_uinteger64,			/* set_value_uinteger64 */
       
    85  		NULL,				/* set_value_sinteger64 */
       
    86  		NULL,				/* set_value_floating */
       
    87  
       
    88  		NULL,				/* get_value */
       
    89 -		get_uinteger,			/* get_value_uinteger */
       
    90 +		NULL,				/* get_value_uinteger */
       
    91  		NULL,				/* get_value_sinteger */
       
    92  		get_uinteger64,			/* get_value_uinteger64 */
       
    93  		NULL,				/* get_value_sinteger64 */