diff options
author | Guy Harris <guy@alum.mit.edu> | 2005-12-08 08:55:15 +0000 |
---|---|---|
committer | Guy Harris <guy@alum.mit.edu> | 2005-12-08 08:55:15 +0000 |
commit | a9892169e358525240336f5e856c6e0334e05545 (patch) | |
tree | 27597117c7251aa3603dae9c52f119f6d0db07d2 | |
parent | febe5a84e38a03b4ad5f29a7ad805498c3b16d16 (diff) |
From Kyle J. Harms:
Fix a few problems.
CIGI 1 and 2 are only big-endian; CIGI 3 can be little-endian or
big-endian.
Remove the port preferences.
svn path=/trunk/; revision=16730
-rw-r--r-- | epan/dissectors/packet-cigi.c | 709 |
1 files changed, 383 insertions, 326 deletions
diff --git a/epan/dissectors/packet-cigi.c b/epan/dissectors/packet-cigi.c index 82b4f2a570..4d4489b306 100644 --- a/epan/dissectors/packet-cigi.c +++ b/epan/dissectors/packet-cigi.c @@ -45,8 +45,6 @@ /* Forward declaration */ void proto_reg_handoff_cigi(void); -static void range_delete_udp_callback(guint32); -static void range_add_udp_callback(guint32); static void cigi_add_tree(tvbuff_t*, proto_tree*); static gint cigi_add_data(tvbuff_t*, proto_tree*, gint); @@ -268,7 +266,7 @@ static int hf_cigi2_ig_control_time_tag = -1; static const value_string cigi2_ig_control_ig_mode_vals[] = { {0, "Standby/Reset"}, {1, "Operate"}, - {2, "Debug"}, + {2, "Debug"}, {0, NULL}, }; @@ -511,9 +509,9 @@ static int hf_cigi2_view_definition_fov_bottom = -1; static const value_string cigi2_view_definition_pixel_rep_vals[] = { {0, "No Replicate"}, - {1, "1×2 Pixel Replicate"}, - {2, "2×1 Pixel Replicate"}, - {3, "2×2 Pixel Replicate"}, + {1, "1x2 Pixel Replicate"}, + {2, "2x1 Pixel Replicate"}, + {3, "2x2 Pixel Replicate"}, {4, "TBD"}, {5, "TBD"}, {6, "TBD"}, @@ -1393,9 +1391,9 @@ static const value_string cigi3_view_definition_mirror_mode_vals[] = { static const value_string cigi3_view_definition_pixel_replication_vals[] = { {0, "None"}, - {1, "1×2"}, - {2, "2×1"}, - {3, "2×2"}, + {1, "1x2"}, + {2, "2x1"}, + {3, "2x2"}, {4, "Defined by IG"}, {5, "Defined by IG"}, {6, "Defined by IG"}, @@ -1833,6 +1831,7 @@ static int hf_cigi3_user_defined = -1; /* Global preferences */ #define CIGI_VERSION_FROM_PACKET 0 +#define CIGI_VERSION_1 1 #define CIGI_VERSION_2 2 #define CIGI_VERSION_3 3 @@ -1844,11 +1843,6 @@ static gint global_cigi_version = CIGI_VERSION_FROM_PACKET; static gint global_cigi_byte_order = CIGI_BYTE_ORDER_FROM_PACKET; -#define CIGI_MAX_PORT 65536 - -static range_t *global_cigi_udp_ports; -static range_t *cigi_udp_ports; - static const char *global_host_ip; static const char *global_ig_ip; @@ -1863,13 +1857,142 @@ static gint cigi_version = 0; static gint cigi_byte_order = CIGI_BYTE_ORDER_BIG_ENDIAN; +/* + * The heuristic dissector + */ +static gboolean +dissect_cigi_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) +{ + gint length; + + guint8 packet_id; + guint8 packet_size; + guint8 cigi_version; + guint8 ig_mode; + + /* CIGI 3 */ + guint16 byte_swap; + guint8 reserved; + + + length = tvb_length(tvb); + packet_id = tvb_get_guint8(tvb, 0); + packet_size = tvb_get_guint8(tvb, 1); + cigi_version = tvb_get_guint8(tvb, 2); + + if ( packet_size > tvb_reported_length(tvb) ) { + return FALSE; + } + + /* Currently there are only 3 versions of CIGI */ + switch ( cigi_version ) { + + case CIGI_VERSION_1: + /* CIGI 1 requires that the first packet is always the IG Control or SOF */ + switch ( packet_id ) { + case 1: + if ( packet_size != 16 || length < 16 ) { + return FALSE; + } + + ig_mode = (tvb_get_guint8(tvb, 4) & 0xc0) >> 6; + if ( ig_mode > 2 ) { + return FALSE; + } + break; + case 101: + if ( packet_size != 12 || length < 12 ) { + return FALSE; + } + break; + default: + return FALSE; + } + break; + + case CIGI_VERSION_2: + /* CIGI 2 requires that the first packet is always the IG Control or SOF */ + switch ( packet_id ) { + case CIGI2_PACKET_ID_IG_CONTROL: + if ( packet_size != CIGI2_PACKET_SIZE_IG_CONTROL || length < CIGI2_PACKET_SIZE_IG_CONTROL ) { + return FALSE; + } + + ig_mode = (tvb_get_guint8(tvb, 4) & 0xc0) >> 6; + if ( ig_mode > 2 ) { + return FALSE; + } + break; + case CIGI2_PACKET_ID_START_OF_FRAME: + if ( packet_size != CIGI2_PACKET_SIZE_START_OF_FRAME || length < CIGI2_PACKET_SIZE_START_OF_FRAME ) { + return FALSE; + } + break; + default: + return FALSE; + } + break; + + case CIGI_VERSION_3: + /* CIGI 3 requires that the first packet is always the IG Control or SOF */ + switch ( packet_id ) { + case CIGI3_PACKET_ID_IG_CONTROL: + if ( packet_size != CIGI3_PACKET_SIZE_IG_CONTROL || length < CIGI3_PACKET_SIZE_IG_CONTROL ) { + return FALSE; + } + + ig_mode = (tvb_get_guint8(tvb, 4) & 0x03); + if ( ig_mode > 2 ) { + return FALSE; + } + + /* In CIGI 3 Reserved fields must be zero */ + reserved = (tvb_get_guint8(tvb, 4) & 0xf8); + if ( reserved != 0x00 ) { + return FALSE; + } + reserved = tvb_get_guint8(tvb, 5); + if ( reserved != 0x00 ) { + return FALSE; + } + break; + case CIGI3_PACKET_ID_START_OF_FRAME: + if ( packet_size != CIGI3_PACKET_SIZE_START_OF_FRAME || length < CIGI3_PACKET_SIZE_START_OF_FRAME ) { + return FALSE; + } + + /* In CIGI 3 Reserved fields must be zero */ + reserved = (tvb_get_guint8(tvb, 5) & 0xf0); + if ( reserved != 0x00 ) { + return FALSE; + } + break; + default: + return FALSE; + } + + /* CIGI 3 has the byte swap field which only allows two values. */ + byte_swap = tvb_get_ntohs(tvb, 6); + + if ( byte_swap != CIGI3_BYTE_SWAP_BIG_ENDIAN && byte_swap != CIGI3_BYTE_SWAP_LITTLE_ENDIAN ) { + return FALSE; + } + break; + + default: + return FALSE; + } + + /* If we made it here, then this is probably CIGI */ + return TRUE; +} + /* Code to actually dissect the CIGI packets */ static int dissect_cigi(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) { /* Set up structures needed to add the protocol subtree and manage it */ guint8 packet_id = 0; - gint length = 0; proto_item *ti; proto_tree *cigi_tree; @@ -1878,51 +2001,13 @@ dissect_cigi(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) const char* dest_str; const char* info_str; - guint8 size; - guint8 version; - guint16 byte_swap; - - length = tvb_length(tvb); packet_id = tvb_get_guint8(tvb, 0); /* Make sure this looks like CIGI */ - - /* CIGI 2 & 3 SOF and IG Control packets are 16 bytes */ - if ( length < 16 ) { + if ( !dissect_cigi_heur(tvb, pinfo, tree) ) { return 0; } - size = tvb_get_guint8(tvb, 1); - if (( size > tvb_reported_length(tvb) ) || ( size != 16 )) { - return 0; - } - - /* CIGI 2 & 3 requires that the first packet is always the SOF or IG Control */ - switch ( packet_id ) { - case 1: - case 101: - break; - default: - return 0; - } - - /* Currently there are only 3 versions of CIGI */ - version = tvb_get_guint8(tvb, 2); - switch ( version ) { - case 1: - case 2: - break; - case 3: - /* CIGI 3 has the byte swap field which only allows two values. */ - byte_swap = tvb_get_ntohs(tvb, 6); - - if ( byte_swap != CIGI3_BYTE_SWAP_BIG_ENDIAN && byte_swap != CIGI3_BYTE_SWAP_LITTLE_ENDIAN ) { - return 0; - } - break; - default: - return 0; - } /* Make entries in Protocol column and Info column on summary display */ @@ -1962,7 +2047,7 @@ dissect_cigi(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) if (tree) { - ti = proto_tree_add_protocol_format(tree, proto_cigi, tvb, 0, length, "Common Image Generator Interface (%i), %s", cigi_version, info_str); + ti = proto_tree_add_protocol_format(tree, proto_cigi, tvb, 0, tvb_length(tvb), "Common Image Generator Interface (%i), %s", cigi_version, info_str); cigi_tree = proto_item_add_subtree(ti, ett_cigi); @@ -1973,7 +2058,7 @@ dissect_cigi(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) proto_tree_add_uint_hidden(cigi_tree, hf_cigi_port, tvb, 0, 0, pinfo->destport); /* Frame Size */ - proto_tree_add_uint_hidden(cigi_tree, hf_cigi_frame_size, tvb, 0, 0, length); + proto_tree_add_uint_hidden(cigi_tree, hf_cigi_frame_size, tvb, 0, 0, tvb_reported_length(tvb)); /* Since the versions of CIGI are not backwards compatible, * dissection is different for each version. @@ -2208,10 +2293,10 @@ cigi2_add_tree(tvbuff_t *tvb, proto_tree *cigi_tree) /* In all CIGI versions the first byte of a packet is the packet ID. * The second byte is the size of the packet (in bytes). */ init_offset = offset; - proto_tree_add_item(cigi_packet_tree, hf_cigi2_packet_id, tvb, offset, 1, FALSE); + proto_tree_add_item(cigi_packet_tree, hf_cigi2_packet_id, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset++; - proto_tree_add_item(cigi_packet_tree, hf_cigi_packet_size, tvb, offset, 1, FALSE); + proto_tree_add_item(cigi_packet_tree, hf_cigi_packet_size, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset++; if ( packet_id == CIGI2_PACKET_ID_IG_CONTROL ) { @@ -2583,21 +2668,21 @@ cigi3_add_tree(tvbuff_t *tvb, proto_tree *cigi_tree) static gint cigi2_add_ig_control(tvbuff_t *tvb, proto_tree *tree, gint offset) { - proto_tree_add_item(tree, hf_cigi_version, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi_version, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset++; - proto_tree_add_item(tree, hf_cigi2_ig_control_db_number, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_ig_control_db_number, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset++; - proto_tree_add_item(tree, hf_cigi2_ig_control_ig_mode, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_ig_control_tracking_enable, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_ig_control_boresight, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_ig_control_ig_mode, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_ig_control_tracking_enable, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_ig_control_boresight, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_ig_control_frame_ctr, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_ig_control_frame_ctr, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_ig_control_time_tag, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_ig_control_time_tag, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; return offset; @@ -2607,43 +2692,43 @@ cigi2_add_ig_control(tvbuff_t *tvb, proto_tree *tree, gint offset) static gint cigi2_add_entity_control(tvbuff_t *tvb, proto_tree *tree, gint offset) { - proto_tree_add_item(tree, hf_cigi2_entity_control_entity_id, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_entity_control_entity_id, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; - proto_tree_add_item(tree, hf_cigi2_entity_control_entity_state, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_entity_control_attach_state, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_entity_control_collision_detect, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_entity_control_effect_state, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_entity_control_entity_state, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_entity_control_attach_state, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_entity_control_collision_detect, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_entity_control_effect_state, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_entity_control_type, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_entity_control_type, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; - proto_tree_add_item(tree, hf_cigi2_entity_control_parent_id, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_entity_control_parent_id, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; - proto_tree_add_item(tree, hf_cigi2_entity_control_opacity, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_entity_control_opacity, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_entity_control_internal_temp, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_entity_control_internal_temp, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_entity_control_roll, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_entity_control_roll, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_entity_control_pitch, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_entity_control_pitch, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_entity_control_heading, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_entity_control_heading, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_entity_control_alt, tvb, offset, 8, FALSE); + proto_tree_add_item(tree, hf_cigi2_entity_control_alt, tvb, offset, 8, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 8; - proto_tree_add_item(tree, hf_cigi2_entity_control_lat, tvb, offset, 8, FALSE); + proto_tree_add_item(tree, hf_cigi2_entity_control_lat, tvb, offset, 8, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 8; - proto_tree_add_item(tree, hf_cigi2_entity_control_lon, tvb, offset, 8, FALSE); + proto_tree_add_item(tree, hf_cigi2_entity_control_lon, tvb, offset, 8, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 8; return offset; @@ -2653,22 +2738,22 @@ cigi2_add_entity_control(tvbuff_t *tvb, proto_tree *tree, gint offset) static gint cigi2_add_component_control(tvbuff_t *tvb, proto_tree *tree, gint offset) { - proto_tree_add_item(tree, hf_cigi2_component_control_instance_id, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_component_control_instance_id, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; - proto_tree_add_item(tree, hf_cigi2_component_control_component_class, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_component_control_component_class, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_component_control_component_id, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_component_control_component_id, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; - proto_tree_add_item(tree, hf_cigi2_component_control_component_state, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_component_control_component_state, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; - proto_tree_add_item(tree, hf_cigi2_component_control_component_val1, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_component_control_component_val1, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_component_control_component_val2, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_component_control_component_val2, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; return offset; @@ -2678,37 +2763,37 @@ cigi2_add_component_control(tvbuff_t *tvb, proto_tree *tree, gint offset) static gint cigi2_add_articulated_parts_control(tvbuff_t *tvb, proto_tree *tree, gint offset) { - proto_tree_add_item(tree, hf_cigi2_articulated_parts_control_entity_id, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_articulated_parts_control_entity_id, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; - proto_tree_add_item(tree, hf_cigi2_articulated_parts_control_part_id, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_articulated_parts_control_part_id, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset++; - proto_tree_add_item(tree, hf_cigi2_articulated_parts_control_part_state, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_articulated_parts_control_xoff_enable, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_articulated_parts_control_yoff_enable, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_articulated_parts_control_zoff_enable, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_articulated_parts_control_roll_enable, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_articulated_parts_control_pitch_enable, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_articulated_parts_control_yaw_enable, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_articulated_parts_control_part_state, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_articulated_parts_control_xoff_enable, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_articulated_parts_control_yoff_enable, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_articulated_parts_control_zoff_enable, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_articulated_parts_control_roll_enable, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_articulated_parts_control_pitch_enable, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_articulated_parts_control_yaw_enable, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 3; - proto_tree_add_item(tree, hf_cigi2_articulated_parts_control_x_offset, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_articulated_parts_control_x_offset, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_articulated_parts_control_y_offset, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_articulated_parts_control_y_offset, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_articulated_parts_control_z_offset, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_articulated_parts_control_z_offset, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_articulated_parts_control_roll, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_articulated_parts_control_roll, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_articulated_parts_control_pitch, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_articulated_parts_control_pitch, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_articulated_parts_control_yaw, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_articulated_parts_control_yaw, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; return offset; @@ -2718,28 +2803,28 @@ cigi2_add_articulated_parts_control(tvbuff_t *tvb, proto_tree *tree, gint offset static gint cigi2_add_rate_control(tvbuff_t *tvb, proto_tree *tree, gint offset) { - proto_tree_add_item(tree, hf_cigi2_rate_control_entity_id, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_rate_control_entity_id, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; - proto_tree_add_item(tree, hf_cigi2_rate_control_part_id, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_rate_control_part_id, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_rate_control_x_rate, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_rate_control_x_rate, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_rate_control_y_rate, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_rate_control_y_rate, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_rate_control_z_rate, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_rate_control_z_rate, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_rate_control_roll_rate, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_rate_control_roll_rate, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_rate_control_pitch_rate, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_rate_control_pitch_rate, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_rate_control_yaw_rate, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_rate_control_yaw_rate, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; return offset; @@ -2749,38 +2834,38 @@ cigi2_add_rate_control(tvbuff_t *tvb, proto_tree *tree, gint offset) static gint cigi2_add_environment_control(tvbuff_t *tvb, proto_tree *tree, gint offset) { - proto_tree_add_item(tree, hf_cigi2_environment_control_hour, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_environment_control_hour, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset++; - proto_tree_add_item(tree, hf_cigi2_environment_control_minute, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_environment_control_minute, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset++; - proto_tree_add_item(tree, hf_cigi2_environment_control_ephemeris_enable, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_environment_control_humidity, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_environment_control_ephemeris_enable, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_environment_control_humidity, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset++; - proto_tree_add_item(tree, hf_cigi2_environment_control_modtran_enable, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_environment_control_modtran_enable, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 3; - proto_tree_add_item(tree, hf_cigi2_environment_control_date, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_environment_control_date, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_environment_control_air_temp, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_environment_control_air_temp, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_environment_control_global_visibility, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_environment_control_global_visibility, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_environment_control_wind_speed, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_environment_control_wind_speed, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_environment_control_wind_direction, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_environment_control_wind_direction, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_environment_control_pressure, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_environment_control_pressure, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_environment_control_aerosol, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_environment_control_aerosol, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; return offset; @@ -2790,43 +2875,43 @@ cigi2_add_environment_control(tvbuff_t *tvb, proto_tree *tree, gint offset) static gint cigi2_add_weather_control(tvbuff_t *tvb, proto_tree *tree, gint offset) { - proto_tree_add_item(tree, hf_cigi2_weather_control_entity_id, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_weather_control_entity_id, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; - proto_tree_add_item(tree, hf_cigi2_weather_control_weather_enable, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_weather_control_scud_enable, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_weather_control_random_winds, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_weather_control_severity, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_weather_control_weather_enable, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_weather_control_scud_enable, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_weather_control_random_winds, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_weather_control_severity, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; - proto_tree_add_item(tree, hf_cigi2_weather_control_phenomenon_type, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_weather_control_phenomenon_type, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; - proto_tree_add_item(tree, hf_cigi2_weather_control_air_temp, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_weather_control_air_temp, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_weather_control_opacity, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_weather_control_opacity, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_weather_control_scud_frequency, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_weather_control_scud_frequency, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_weather_control_coverage, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_weather_control_coverage, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_weather_control_elevation, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_weather_control_elevation, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_weather_control_thickness, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_weather_control_thickness, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_weather_control_transition_band, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_weather_control_transition_band, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_weather_control_wind_speed, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_weather_control_wind_speed, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_weather_control_wind_direction, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_weather_control_wind_direction, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; return offset; @@ -2836,37 +2921,37 @@ cigi2_add_weather_control(tvbuff_t *tvb, proto_tree *tree, gint offset) static gint cigi2_add_view_control(tvbuff_t *tvb, proto_tree *tree, gint offset) { - proto_tree_add_item(tree, hf_cigi2_view_control_entity_id, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_view_control_entity_id, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; - proto_tree_add_item(tree, hf_cigi2_view_control_view_id, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_view_control_view_group, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_view_control_view_id, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_view_control_view_group, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset++; - proto_tree_add_item(tree, hf_cigi2_view_control_xoff_enable, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_view_control_yoff_enable, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_view_control_zoff_enable, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_view_control_roll_enable, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_view_control_pitch_enable, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_view_control_yaw_enable, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_view_control_xoff_enable, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_view_control_yoff_enable, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_view_control_zoff_enable, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_view_control_roll_enable, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_view_control_pitch_enable, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_view_control_yaw_enable, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 3; - proto_tree_add_item(tree, hf_cigi2_view_control_x_offset, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_view_control_x_offset, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_view_control_y_offset, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_view_control_y_offset, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_view_control_z_offset, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_view_control_z_offset, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_view_control_roll, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_view_control_roll, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_view_control_pitch, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_view_control_pitch, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_view_control_yaw, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_view_control_yaw, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; return offset; @@ -2876,30 +2961,30 @@ cigi2_add_view_control(tvbuff_t *tvb, proto_tree *tree, gint offset) static gint cigi2_add_sensor_control(tvbuff_t *tvb, proto_tree *tree, gint offset) { - proto_tree_add_item(tree, hf_cigi2_sensor_control_view_id, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_sensor_control_sensor_enable, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_sensor_control_polarity, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_sensor_control_line_dropout, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_sensor_control_view_id, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_sensor_control_sensor_enable, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_sensor_control_polarity, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_sensor_control_line_dropout, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset++; - proto_tree_add_item(tree, hf_cigi2_sensor_control_sensor_id, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_sensor_control_sensor_id, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset++; - proto_tree_add_item(tree, hf_cigi2_sensor_control_track_mode, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_sensor_control_auto_gain, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_sensor_control_track_polarity, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_sensor_control_track_mode, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_sensor_control_auto_gain, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_sensor_control_track_polarity, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_sensor_control_gain, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_sensor_control_gain, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_sensor_control_level, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_sensor_control_level, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_sensor_control_ac_coupling, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_sensor_control_ac_coupling, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_sensor_control_noise, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_sensor_control_noise, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; return offset; @@ -2909,16 +2994,16 @@ cigi2_add_sensor_control(tvbuff_t *tvb, proto_tree *tree, gint offset) static gint cigi2_add_trajectory_definition(tvbuff_t *tvb, proto_tree *tree, gint offset) { - proto_tree_add_item(tree, hf_cigi2_trajectory_definition_entity_id, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_trajectory_definition_entity_id, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; - proto_tree_add_item(tree, hf_cigi2_trajectory_definition_acceleration, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_trajectory_definition_acceleration, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_trajectory_definition_retardation, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_trajectory_definition_retardation, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_trajectory_definition_terminal_velocity, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_trajectory_definition_terminal_velocity, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; return offset; @@ -2928,47 +3013,47 @@ cigi2_add_trajectory_definition(tvbuff_t *tvb, proto_tree *tree, gint offset) static gint cigi2_add_special_effect_definition(tvbuff_t *tvb, proto_tree *tree, gint offset) { - proto_tree_add_item(tree, hf_cigi2_special_effect_definition_entity_id, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_special_effect_definition_entity_id, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; - proto_tree_add_item(tree, hf_cigi2_special_effect_definition_seq_direction, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_special_effect_definition_color_enable, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_special_effect_definition_seq_direction, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_special_effect_definition_color_enable, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset++; - proto_tree_add_item(tree, hf_cigi2_special_effect_definition_red, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_special_effect_definition_red, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset++; - proto_tree_add_item(tree, hf_cigi2_special_effect_definition_green, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_special_effect_definition_green, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset++; - proto_tree_add_item(tree, hf_cigi2_special_effect_definition_blue, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_special_effect_definition_blue, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset++; - proto_tree_add_float(tree, hf_cigi2_special_effect_definition_x_scale, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, cigi_byte_order)); + proto_tree_add_float(tree, hf_cigi2_special_effect_definition_x_scale, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, CIGI_BYTE_ORDER_BIG_ENDIAN)); offset += 2; - proto_tree_add_float(tree, hf_cigi2_special_effect_definition_y_scale, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, cigi_byte_order)); + proto_tree_add_float(tree, hf_cigi2_special_effect_definition_y_scale, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, CIGI_BYTE_ORDER_BIG_ENDIAN)); offset += 2; - proto_tree_add_float(tree, hf_cigi2_special_effect_definition_z_scale, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, cigi_byte_order)); + proto_tree_add_float(tree, hf_cigi2_special_effect_definition_z_scale, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, CIGI_BYTE_ORDER_BIG_ENDIAN)); offset += 2; - proto_tree_add_float(tree, hf_cigi2_special_effect_definition_time_scale, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, cigi_byte_order)); + proto_tree_add_float(tree, hf_cigi2_special_effect_definition_time_scale, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, CIGI_BYTE_ORDER_BIG_ENDIAN)); offset += 2; proto_tree_add_text(tree, tvb, offset, 2, "Spare"); offset += 2; - proto_tree_add_item(tree, hf_cigi2_special_effect_definition_effect_count, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_special_effect_definition_effect_count, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; - proto_tree_add_item(tree, hf_cigi2_special_effect_definition_separation, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_special_effect_definition_separation, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_special_effect_definition_burst_interval, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_special_effect_definition_burst_interval, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_special_effect_definition_duration, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_special_effect_definition_duration, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; return offset; @@ -2978,40 +3063,40 @@ cigi2_add_special_effect_definition(tvbuff_t *tvb, proto_tree *tree, gint offset static gint cigi2_add_view_definition(tvbuff_t *tvb, proto_tree *tree, gint offset) { - proto_tree_add_item(tree, hf_cigi2_view_definition_view_id, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_view_definition_view_group, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_view_definition_view_id, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_view_definition_view_group, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset++; - proto_tree_add_item(tree, hf_cigi2_view_definition_view_type, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_view_definition_pixel_rep, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_view_definition_mirror, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_view_definition_view_type, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_view_definition_pixel_rep, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_view_definition_mirror, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset++; - proto_tree_add_item(tree, hf_cigi2_view_definition_tracker_assign, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_view_definition_near_enable, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_view_definition_far_enable, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_view_definition_left_enable, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_view_definition_right_enable, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_view_definition_top_enable, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_view_definition_bottom_enable, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_view_definition_tracker_assign, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_view_definition_near_enable, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_view_definition_far_enable, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_view_definition_left_enable, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_view_definition_right_enable, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_view_definition_top_enable, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_view_definition_bottom_enable, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_view_definition_fov_near, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_view_definition_fov_near, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_view_definition_fov_far, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_view_definition_fov_far, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_view_definition_fov_left, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_view_definition_fov_left, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_view_definition_fov_right, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_view_definition_fov_right, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_view_definition_fov_top, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_view_definition_fov_top, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_view_definition_fov_bottom, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_view_definition_fov_bottom, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; return offset; @@ -3021,32 +3106,32 @@ cigi2_add_view_definition(tvbuff_t *tvb, proto_tree *tree, gint offset) static gint cigi2_add_collision_detection_segment_definition(tvbuff_t *tvb, proto_tree *tree, gint offset) { - proto_tree_add_item(tree, hf_cigi2_collision_detection_segment_definition_entity_id, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_collision_detection_segment_definition_entity_id, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; - proto_tree_add_item(tree, hf_cigi2_collision_detection_segment_definition_segment_enable, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_collision_detection_segment_definition_segment_id, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_collision_detection_segment_definition_segment_enable, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_collision_detection_segment_definition_segment_id, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_collision_detection_segment_definition_collision_mask, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_collision_detection_segment_definition_collision_mask, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_float(tree, hf_cigi2_collision_detection_segment_definition_x_start, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, cigi_byte_order)); + proto_tree_add_float(tree, hf_cigi2_collision_detection_segment_definition_x_start, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, CIGI_BYTE_ORDER_BIG_ENDIAN)); offset += 2; - proto_tree_add_float(tree, hf_cigi2_collision_detection_segment_definition_y_start, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, cigi_byte_order)); + proto_tree_add_float(tree, hf_cigi2_collision_detection_segment_definition_y_start, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, CIGI_BYTE_ORDER_BIG_ENDIAN)); offset += 2; - proto_tree_add_float(tree, hf_cigi2_collision_detection_segment_definition_z_start, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, cigi_byte_order)); + proto_tree_add_float(tree, hf_cigi2_collision_detection_segment_definition_z_start, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, CIGI_BYTE_ORDER_BIG_ENDIAN)); offset += 2; - proto_tree_add_float(tree, hf_cigi2_collision_detection_segment_definition_x_end, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, cigi_byte_order)); + proto_tree_add_float(tree, hf_cigi2_collision_detection_segment_definition_x_end, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, CIGI_BYTE_ORDER_BIG_ENDIAN)); offset += 2; - proto_tree_add_float(tree, hf_cigi2_collision_detection_segment_definition_y_end, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, cigi_byte_order)); + proto_tree_add_float(tree, hf_cigi2_collision_detection_segment_definition_y_end, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, CIGI_BYTE_ORDER_BIG_ENDIAN)); offset += 2; - proto_tree_add_float(tree, hf_cigi2_collision_detection_segment_definition_z_end, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, cigi_byte_order)); + proto_tree_add_float(tree, hf_cigi2_collision_detection_segment_definition_z_end, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, CIGI_BYTE_ORDER_BIG_ENDIAN)); offset += 2; return offset; @@ -3056,29 +3141,29 @@ cigi2_add_collision_detection_segment_definition(tvbuff_t *tvb, proto_tree *tree static gint cigi2_add_collision_detection_volume_definition(tvbuff_t *tvb, proto_tree *tree, gint offset) { - proto_tree_add_item(tree, hf_cigi2_collision_detection_volume_definition_entity_id, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_collision_detection_volume_definition_entity_id, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; - proto_tree_add_item(tree, hf_cigi2_collision_detection_volume_definition_volume_enable, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_collision_detection_volume_definition_volume_id, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_collision_detection_volume_definition_volume_enable, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_collision_detection_volume_definition_volume_id, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_float(tree, hf_cigi2_collision_detection_volume_definition_x_offset, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, cigi_byte_order)); + proto_tree_add_float(tree, hf_cigi2_collision_detection_volume_definition_x_offset, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, CIGI_BYTE_ORDER_BIG_ENDIAN)); offset += 2; - proto_tree_add_float(tree, hf_cigi2_collision_detection_volume_definition_y_offset, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, cigi_byte_order)); + proto_tree_add_float(tree, hf_cigi2_collision_detection_volume_definition_y_offset, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, CIGI_BYTE_ORDER_BIG_ENDIAN)); offset += 2; - proto_tree_add_float(tree, hf_cigi2_collision_detection_volume_definition_z_offset, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, cigi_byte_order)); + proto_tree_add_float(tree, hf_cigi2_collision_detection_volume_definition_z_offset, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, CIGI_BYTE_ORDER_BIG_ENDIAN)); offset += 2; - proto_tree_add_float(tree, hf_cigi2_collision_detection_volume_definition_height, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, cigi_byte_order)); + proto_tree_add_float(tree, hf_cigi2_collision_detection_volume_definition_height, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, CIGI_BYTE_ORDER_BIG_ENDIAN)); offset += 2; - proto_tree_add_float(tree, hf_cigi2_collision_detection_volume_definition_width, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, cigi_byte_order)); + proto_tree_add_float(tree, hf_cigi2_collision_detection_volume_definition_width, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, CIGI_BYTE_ORDER_BIG_ENDIAN)); offset += 2; - proto_tree_add_float(tree, hf_cigi2_collision_detection_volume_definition_depth, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, cigi_byte_order)); + proto_tree_add_float(tree, hf_cigi2_collision_detection_volume_definition_depth, tvb, offset, 2, tvb_get_fixed_point(tvb, offset, CIGI_BYTE_ORDER_BIG_ENDIAN)); offset += 2; return offset; @@ -3088,16 +3173,16 @@ cigi2_add_collision_detection_volume_definition(tvbuff_t *tvb, proto_tree *tree, static gint cigi2_add_height_above_terrain_request(tvbuff_t *tvb, proto_tree *tree, gint offset) { - proto_tree_add_item(tree, hf_cigi2_height_above_terrain_request_hat_id, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_height_above_terrain_request_hat_id, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 6; - proto_tree_add_item(tree, hf_cigi2_height_above_terrain_request_alt, tvb, offset, 8, FALSE); + proto_tree_add_item(tree, hf_cigi2_height_above_terrain_request_alt, tvb, offset, 8, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 8; - proto_tree_add_item(tree, hf_cigi2_height_above_terrain_request_lat, tvb, offset, 8, FALSE); + proto_tree_add_item(tree, hf_cigi2_height_above_terrain_request_lat, tvb, offset, 8, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 8; - proto_tree_add_item(tree, hf_cigi2_height_above_terrain_request_lon, tvb, offset, 8, FALSE); + proto_tree_add_item(tree, hf_cigi2_height_above_terrain_request_lon, tvb, offset, 8, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 8; return offset; @@ -3107,25 +3192,25 @@ cigi2_add_height_above_terrain_request(tvbuff_t *tvb, proto_tree *tree, gint off static gint cigi2_add_line_of_sight_occult_request(tvbuff_t *tvb, proto_tree *tree, gint offset) { - proto_tree_add_item(tree, hf_cigi2_line_of_sight_occult_request_los_id, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_line_of_sight_occult_request_los_id, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 6; - proto_tree_add_item(tree, hf_cigi2_line_of_sight_occult_request_source_alt, tvb, offset, 8, FALSE); + proto_tree_add_item(tree, hf_cigi2_line_of_sight_occult_request_source_alt, tvb, offset, 8, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 8; - proto_tree_add_item(tree, hf_cigi2_line_of_sight_occult_request_source_lat, tvb, offset, 8, FALSE); + proto_tree_add_item(tree, hf_cigi2_line_of_sight_occult_request_source_lat, tvb, offset, 8, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 8; - proto_tree_add_item(tree, hf_cigi2_line_of_sight_occult_request_source_lon, tvb, offset, 8, FALSE); + proto_tree_add_item(tree, hf_cigi2_line_of_sight_occult_request_source_lon, tvb, offset, 8, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 8; - proto_tree_add_item(tree, hf_cigi2_line_of_sight_occult_request_dest_alt, tvb, offset, 8, FALSE); + proto_tree_add_item(tree, hf_cigi2_line_of_sight_occult_request_dest_alt, tvb, offset, 8, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 8; - proto_tree_add_item(tree, hf_cigi2_line_of_sight_occult_request_dest_lat, tvb, offset, 8, FALSE); + proto_tree_add_item(tree, hf_cigi2_line_of_sight_occult_request_dest_lat, tvb, offset, 8, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 8; - proto_tree_add_item(tree, hf_cigi2_line_of_sight_occult_request_dest_lon, tvb, offset, 8, FALSE); + proto_tree_add_item(tree, hf_cigi2_line_of_sight_occult_request_dest_lon, tvb, offset, 8, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 8; return offset; @@ -3135,28 +3220,28 @@ cigi2_add_line_of_sight_occult_request(tvbuff_t *tvb, proto_tree *tree, gint off static gint cigi2_add_line_of_sight_range_request(tvbuff_t *tvb, proto_tree *tree, gint offset) { - proto_tree_add_item(tree, hf_cigi2_line_of_sight_range_request_los_id, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_line_of_sight_range_request_los_id, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; - proto_tree_add_item(tree, hf_cigi2_line_of_sight_range_request_azimuth, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_line_of_sight_range_request_azimuth, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_line_of_sight_range_request_elevation, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_line_of_sight_range_request_elevation, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 8; - proto_tree_add_item(tree, hf_cigi2_line_of_sight_range_request_min_range, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_line_of_sight_range_request_min_range, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_line_of_sight_range_request_max_range, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_line_of_sight_range_request_max_range, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_line_of_sight_range_request_source_alt, tvb, offset, 8, FALSE); + proto_tree_add_item(tree, hf_cigi2_line_of_sight_range_request_source_alt, tvb, offset, 8, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 8; - proto_tree_add_item(tree, hf_cigi2_line_of_sight_range_request_source_lat, tvb, offset, 8, FALSE); + proto_tree_add_item(tree, hf_cigi2_line_of_sight_range_request_source_lat, tvb, offset, 8, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 8; - proto_tree_add_item(tree, hf_cigi2_line_of_sight_range_request_source_lon, tvb, offset, 8, FALSE); + proto_tree_add_item(tree, hf_cigi2_line_of_sight_range_request_source_lon, tvb, offset, 8, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 8; return offset; @@ -3166,13 +3251,13 @@ cigi2_add_line_of_sight_range_request(tvbuff_t *tvb, proto_tree *tree, gint offs static gint cigi2_add_height_of_terrain_request(tvbuff_t *tvb, proto_tree *tree, gint offset) { - proto_tree_add_item(tree, hf_cigi2_height_of_terrain_request_hot_id, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_height_of_terrain_request_hot_id, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 6; - proto_tree_add_item(tree, hf_cigi2_height_of_terrain_request_lat, tvb, offset, 8, FALSE); + proto_tree_add_item(tree, hf_cigi2_height_of_terrain_request_lat, tvb, offset, 8, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 8; - proto_tree_add_item(tree, hf_cigi2_height_of_terrain_request_lon, tvb, offset, 8, FALSE); + proto_tree_add_item(tree, hf_cigi2_height_of_terrain_request_lon, tvb, offset, 8, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 8; return offset; @@ -3182,22 +3267,22 @@ cigi2_add_height_of_terrain_request(tvbuff_t *tvb, proto_tree *tree, gint offset static gint cigi2_add_start_of_frame(tvbuff_t *tvb, proto_tree *tree, gint offset) { - proto_tree_add_item(tree, hf_cigi_version, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi_version, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset++; - proto_tree_add_item(tree, hf_cigi2_start_of_frame_db_number, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_start_of_frame_db_number, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset++; - proto_tree_add_item(tree, hf_cigi2_start_of_frame_ig_status_code, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_start_of_frame_ig_status_code, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset++; - proto_tree_add_item(tree, hf_cigi2_start_of_frame_ig_mode, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_start_of_frame_ig_mode, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 3; - proto_tree_add_item(tree, hf_cigi2_start_of_frame_frame_ctr, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_start_of_frame_frame_ctr, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_start_of_frame_time_tag, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_start_of_frame_time_tag, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; return offset; @@ -3207,16 +3292,16 @@ cigi2_add_start_of_frame(tvbuff_t *tvb, proto_tree *tree, gint offset) static gint cigi2_add_height_above_terrain_response(tvbuff_t *tvb, proto_tree *tree, gint offset) { - proto_tree_add_item(tree, hf_cigi2_height_above_terrain_response_hat_id, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_height_above_terrain_response_hat_id, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; - proto_tree_add_item(tree, hf_cigi2_height_above_terrain_response_valid, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_height_above_terrain_response_valid, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 8; - proto_tree_add_item(tree, hf_cigi2_height_above_terrain_response_material_type, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_height_above_terrain_response_material_type, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_height_above_terrain_response_alt, tvb, offset, 8, FALSE); + proto_tree_add_item(tree, hf_cigi2_height_above_terrain_response_alt, tvb, offset, 8, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 8; return offset; @@ -3226,26 +3311,26 @@ cigi2_add_height_above_terrain_response(tvbuff_t *tvb, proto_tree *tree, gint of static gint cigi2_add_line_of_sight_response(tvbuff_t *tvb, proto_tree *tree, gint offset) { - proto_tree_add_item(tree, hf_cigi2_line_of_sight_response_los_id, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_line_of_sight_response_los_id, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; - proto_tree_add_item(tree, hf_cigi2_line_of_sight_response_valid, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_line_of_sight_response_occult_response, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_line_of_sight_response_valid, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_line_of_sight_response_occult_response, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_line_of_sight_response_material_type, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_line_of_sight_response_material_type, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_line_of_sight_response_range, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_line_of_sight_response_range, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_line_of_sight_response_alt, tvb, offset, 8, FALSE); + proto_tree_add_item(tree, hf_cigi2_line_of_sight_response_alt, tvb, offset, 8, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 8; - proto_tree_add_item(tree, hf_cigi2_line_of_sight_response_lat, tvb, offset, 8, FALSE); + proto_tree_add_item(tree, hf_cigi2_line_of_sight_response_lat, tvb, offset, 8, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 8; - proto_tree_add_item(tree, hf_cigi2_line_of_sight_response_lon, tvb, offset, 8, FALSE); + proto_tree_add_item(tree, hf_cigi2_line_of_sight_response_lon, tvb, offset, 8, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 8; return offset; @@ -3255,26 +3340,26 @@ cigi2_add_line_of_sight_response(tvbuff_t *tvb, proto_tree *tree, gint offset) static gint cigi2_add_collision_detection_segment_response(tvbuff_t *tvb, proto_tree *tree, gint offset) { - proto_tree_add_item(tree, hf_cigi2_collision_detection_segment_response_entity_id, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_collision_detection_segment_response_entity_id, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; - proto_tree_add_item(tree, hf_cigi2_collision_detection_segment_response_segment_id, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_collision_detection_segment_response_contact, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_collision_detection_segment_response_segment_id, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_collision_detection_segment_response_contact, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; - proto_tree_add_item(tree, hf_cigi2_collision_detection_segment_response_contacted_entity, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_collision_detection_segment_response_contacted_entity, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; - proto_tree_add_item(tree, hf_cigi2_collision_detection_segment_response_material_type, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_collision_detection_segment_response_material_type, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_collision_detection_segment_response_collision_x, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_collision_detection_segment_response_collision_x, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_collision_detection_segment_response_collision_y, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_collision_detection_segment_response_collision_y, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_collision_detection_segment_response_collision_z, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_collision_detection_segment_response_collision_z, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; return offset; @@ -3284,23 +3369,23 @@ cigi2_add_collision_detection_segment_response(tvbuff_t *tvb, proto_tree *tree, static gint cigi2_add_sensor_response(tvbuff_t *tvb, proto_tree *tree, gint offset) { - proto_tree_add_item(tree, hf_cigi2_sensor_response_view_id, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_sensor_response_status, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_sensor_response_view_id, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_sensor_response_status, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset++; - proto_tree_add_item(tree, hf_cigi2_sensor_response_sensor_id, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_sensor_response_sensor_id, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset++; - proto_tree_add_item(tree, hf_cigi2_sensor_response_x_offset, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_sensor_response_x_offset, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; - proto_tree_add_item(tree, hf_cigi2_sensor_response_y_offset, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_sensor_response_y_offset, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; - proto_tree_add_item(tree, hf_cigi2_sensor_response_x_size, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_sensor_response_x_size, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; - proto_tree_add_item(tree, hf_cigi2_sensor_response_y_size, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_sensor_response_y_size, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; return offset; @@ -3310,16 +3395,16 @@ cigi2_add_sensor_response(tvbuff_t *tvb, proto_tree *tree, gint offset) static gint cigi2_add_height_of_terrain_response(tvbuff_t *tvb, proto_tree *tree, gint offset) { - proto_tree_add_item(tree, hf_cigi2_height_of_terrain_response_hot_id, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_height_of_terrain_response_hot_id, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; - proto_tree_add_item(tree, hf_cigi2_height_of_terrain_response_valid, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_height_of_terrain_response_valid, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 8; - proto_tree_add_item(tree, hf_cigi2_height_of_terrain_response_material_type, tvb, offset, 4, FALSE); + proto_tree_add_item(tree, hf_cigi2_height_of_terrain_response_material_type, tvb, offset, 4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 4; - proto_tree_add_item(tree, hf_cigi2_height_of_terrain_response_alt, tvb, offset, 8, FALSE); + proto_tree_add_item(tree, hf_cigi2_height_of_terrain_response_alt, tvb, offset, 8, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 8; return offset; @@ -3329,14 +3414,14 @@ cigi2_add_height_of_terrain_response(tvbuff_t *tvb, proto_tree *tree, gint offse static gint cigi2_add_collision_detection_volume_response(tvbuff_t *tvb, proto_tree *tree, gint offset) { - proto_tree_add_item(tree, hf_cigi2_collision_detection_volume_response_entity_id, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_collision_detection_volume_response_entity_id, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; - proto_tree_add_item(tree, hf_cigi2_collision_detection_volume_response_volume_id, tvb, offset, 1, FALSE); - proto_tree_add_item(tree, hf_cigi2_collision_detection_volume_response_contact, tvb, offset, 1, FALSE); + proto_tree_add_item(tree, hf_cigi2_collision_detection_volume_response_volume_id, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); + proto_tree_add_item(tree, hf_cigi2_collision_detection_volume_response_contact, tvb, offset, 1, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; - proto_tree_add_item(tree, hf_cigi2_collision_detection_volume_response_contact_entity, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_collision_detection_volume_response_contact_entity, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; return offset; @@ -3356,10 +3441,10 @@ cigi2_add_image_generator_message(tvbuff_t *tvb, proto_tree *tree, gint offset) THROW(ReportedBoundsError); } - proto_tree_add_item(tree, hf_cigi2_image_generator_message_id, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi2_image_generator_message_id, tvb, offset, 2, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += 2; - proto_tree_add_item(tree, hf_cigi2_image_generator_message_message, tvb, offset, packet_size-4, FALSE); + proto_tree_add_item(tree, hf_cigi2_image_generator_message_message, tvb, offset, packet_size-4, CIGI_BYTE_ORDER_BIG_ENDIAN); offset += packet_size-4; return offset; @@ -4726,10 +4811,10 @@ cigi3_add_image_generator_message(tvbuff_t *tvb, proto_tree *tree, gint offset) THROW(ReportedBoundsError); } - proto_tree_add_item(tree, hf_cigi3_image_generator_message_id, tvb, offset, 2, FALSE); + proto_tree_add_item(tree, hf_cigi3_image_generator_message_id, tvb, offset, 2, cigi_byte_order); offset += 2; - proto_tree_add_item(tree, hf_cigi3_image_generator_message_message, tvb, offset, packet_size-4, FALSE); + proto_tree_add_item(tree, hf_cigi3_image_generator_message_message, tvb, offset, packet_size-4, cigi_byte_order); offset += packet_size-4; return offset; @@ -4741,23 +4826,23 @@ cigi3_add_image_generator_message(tvbuff_t *tvb, proto_tree *tree, gint offset) static gfloat tvb_get_fixed_point(tvbuff_t *tvb, int offset, gint byte_order) { - gint16 fixed; + gint16 fixed; - switch (byte_order) { + switch (byte_order) { - case CIGI_BYTE_ORDER_BIG_ENDIAN: - fixed = tvb_get_ntohs(tvb, offset); - break; + case CIGI_BYTE_ORDER_BIG_ENDIAN: + fixed = tvb_get_ntohs(tvb, offset); + break; - case CIGI_BYTE_ORDER_LITTLE_ENDIAN: - fixed = tvb_get_letohs(tvb, offset); - break; + case CIGI_BYTE_ORDER_LITTLE_ENDIAN: + fixed = tvb_get_letohs(tvb, offset); + break; - default: - DISSECTOR_ASSERT_NOT_REACHED(); - fixed = 0; - } - return fixed / 128.0F; + default: + DISSECTOR_ASSERT_NOT_REACHED(); + fixed = 0; + } + return fixed / 128.0F; } /* Register the protocol with Ethereal */ @@ -8463,9 +8548,6 @@ proto_register_cigi(void) &ett_cigi, }; - global_cigi_udp_ports = range_empty(); - cigi_udp_ports = range_empty(); - /* Register the protocol name and description */ proto_cigi = proto_register_protocol("Common Image Generator Interface", "CIGI", "cigi"); @@ -8480,7 +8562,6 @@ proto_register_cigi(void) /* Register preferences */ prefs_register_enum_preference(cigi_module, "version", "CIGI version", "The version of CIGI with which to dissect packets", &global_cigi_version, cigi_versions, FALSE); prefs_register_enum_preference(cigi_module, "byte_order", "Byte Order", "The byte order with which to dissect CIGI packets (CIGI3)", &global_cigi_byte_order, cigi_byte_orders, FALSE); - prefs_register_range_preference(cigi_module, "upd_ports", "CIGI UDP Ports", "Set the UDP ports for CIGI packets (e.g. 8000-8002,8004,8005)", &global_cigi_udp_ports, CIGI_MAX_PORT); prefs_register_string_preference(cigi_module, "host", "Host IP", "IPv4 address or hostname of the host", &global_host_ip); prefs_register_string_preference(cigi_module, "ig", "Image Generator IP", "IPv4 address or hostname of the image generator", &global_ig_ip); @@ -8515,30 +8596,6 @@ proto_reg_handoff_cigi(void) heur_dissector_add("udp", dissect_cigi, proto_cigi); inited = TRUE; - } else { - - range_foreach(cigi_udp_ports, range_delete_udp_callback); } - - /* Register the range ports */ - g_free(cigi_udp_ports); - cigi_udp_ports = range_copy(global_cigi_udp_ports); - - range_foreach(cigi_udp_ports, range_add_udp_callback); } -static void -range_delete_udp_callback(guint32 port) -{ - if (port) { - dissector_delete("udp.port", port, cigi_handle); - } -} - -static void -range_add_udp_callback(guint32 port) -{ - if (port) { - dissector_add("udp.port", port, cigi_handle); - } -} |