aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2005-12-08 08:55:15 +0000
committerGuy Harris <guy@alum.mit.edu>2005-12-08 08:55:15 +0000
commita9892169e358525240336f5e856c6e0334e05545 (patch)
tree27597117c7251aa3603dae9c52f119f6d0db07d2
parentfebe5a84e38a03b4ad5f29a7ad805498c3b16d16 (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.c709
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);
- }
-}