aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/irda
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/irda')
-rw-r--r--plugins/irda/packet-ircomm.c19
-rw-r--r--plugins/irda/packet-irda.c15
-rw-r--r--plugins/irda/packet-sir.c4
3 files changed, 14 insertions, 24 deletions
diff --git a/plugins/irda/packet-ircomm.c b/plugins/irda/packet-ircomm.c
index 7458f19e25..e9d79c122c 100644
--- a/plugins/irda/packet-ircomm.c
+++ b/plugins/irda/packet-ircomm.c
@@ -123,7 +123,6 @@ static gint ett_ircomm_ctrl = -1;
#define MAX_PARAMETERS 32
static gint ett_param[MAX_IAP_ENTRIES * MAX_PARAMETERS];
-static dissector_handle_t data_handle;
static dissector_handle_t ircomm_raw_handle;
static dissector_handle_t ircomm_cooked_handle;
@@ -191,10 +190,10 @@ static int dissect_cooked_ircomm(tvbuff_t* tvb, packet_info* pinfo, proto_tree*
proto_tree_add_item(ctrl_tree, hf_control_len, tvb, offset, 1, ENC_BIG_ENDIAN);
offset++;
- call_dissector(data_handle, tvb_new_subset_length(tvb, offset, clen), pinfo, ctrl_tree);
+ call_data_dissector(tvb_new_subset_length(tvb, offset, clen), pinfo, ctrl_tree);
offset += clen;
- call_dissector(data_handle, tvb_new_subset_remaining(tvb, offset), pinfo, ircomm_tree);
+ call_data_dissector(tvb_new_subset_remaining(tvb, offset), pinfo, ircomm_tree);
return len;
}
@@ -206,6 +205,8 @@ static int dissect_cooked_ircomm(tvbuff_t* tvb, packet_info* pinfo, proto_tree*
static int dissect_raw_ircomm(tvbuff_t* tvb, packet_info* pinfo, proto_tree* tree, void* data _U_)
{
guint len = tvb_reported_length(tvb);
+ proto_item* ti;
+ proto_tree* ircomm_tree;
if (len == 0)
return 0;
@@ -215,14 +216,11 @@ static int dissect_raw_ircomm(tvbuff_t* tvb, packet_info* pinfo, proto_tree* tre
col_add_fstr(pinfo->cinfo, COL_INFO, "User Data: %d byte%s", len, (len > 1)? "s": "");
- if (tree)
- {
- /* create display subtree for the protocol */
- proto_item* ti = proto_tree_add_item(tree, proto_ircomm, tvb, 0, -1, ENC_NA);
- proto_tree* ircomm_tree = proto_item_add_subtree(ti, ett_ircomm);
+ /* create display subtree for the protocol */
+ ti = proto_tree_add_item(tree, proto_ircomm, tvb, 0, -1, ENC_NA);
+ ircomm_tree = proto_item_add_subtree(ti, ett_ircomm);
- call_dissector(data_handle, tvb, pinfo, ircomm_tree);
- }
+ call_data_dissector(tvb, pinfo, ircomm_tree);
return len;
}
@@ -420,7 +418,6 @@ void proto_register_ircomm(void)
void
proto_reg_handoff_ircomm(void) {
- data_handle = find_dissector("data");
ircomm_raw_handle = find_dissector("ircomm_raw");
ircomm_cooked_handle = find_dissector("ircomm_cooked");
}
diff --git a/plugins/irda/packet-irda.c b/plugins/irda/packet-irda.c
index 322b739ba0..f9c46d33da 100644
--- a/plugins/irda/packet-irda.c
+++ b/plugins/irda/packet-irda.c
@@ -139,8 +139,6 @@
void proto_reg_handoff_irda(void);
void proto_register_irda(void);
-static dissector_handle_t data_handle;
-
/* Initialize the protocol and registered fields */
static int proto_irlap = -1;
static int hf_lap_a = -1;
@@ -645,7 +643,7 @@ static void dissect_iap_request(tvbuff_t* tvb, packet_info* pinfo, proto_tree* r
/* If any bytes remain, send it to the generic data dissector */
tvb = tvb_new_subset_remaining(tvb, offset);
- call_dissector(data_handle, tvb, pinfo, root);
+ call_data_dissector(tvb, pinfo, root);
}
@@ -895,7 +893,7 @@ static void dissect_iap_result(tvbuff_t* tvb, packet_info* pinfo, proto_tree* ro
/* If any bytes remain, send it to the generic data dissector */
tvb = tvb_new_subset_remaining(tvb, offset);
- call_dissector(data_handle, tvb, pinfo, root);
+ call_data_dissector(tvb, pinfo, root);
}
@@ -1007,7 +1005,7 @@ static void dissect_appl_proto(tvbuff_t* tvb, packet_info* pinfo, proto_tree* ro
call_dissector_with_data(lmp_conv->dissector, tvb, pinfo, root, GUINT_TO_POINTER(pdu_type));
}
else
- call_dissector(data_handle, tvb, pinfo, root);
+ call_data_dissector(tvb, pinfo, root);
}
@@ -1159,7 +1157,7 @@ static void dissect_irlmp(tvbuff_t* tvb, packet_info* pinfo, proto_tree* root, g
else
{
if ((dlsap == LSAP_IAS) || (slsap == LSAP_IAS))
- call_dissector(data_handle, tvb, pinfo, root);
+ call_data_dissector(tvb, pinfo, root);
else
switch (opcode)
{
@@ -1173,7 +1171,7 @@ static void dissect_irlmp(tvbuff_t* tvb, packet_info* pinfo, proto_tree* root, g
break;
default:
- call_dissector(data_handle, tvb, pinfo, root);
+ call_data_dissector(tvb, pinfo, root);
}
}
}
@@ -1828,7 +1826,7 @@ static void dissect_irlap(tvbuff_t* tvb, packet_info* pinfo, proto_tree* root)
if (tvb_reported_length_remaining(tvb, offset) > 0)
{
tvb = tvb_new_subset_remaining(tvb, offset);
- call_dissector(data_handle, tvb, pinfo, root);
+ call_data_dissector(tvb, pinfo, root);
}
}
@@ -2248,7 +2246,6 @@ void proto_reg_handoff_irda(void)
irda_handle = find_dissector("irda");
dissector_add_uint("wtap_encap", WTAP_ENCAP_IRDA, irda_handle);
dissector_add_uint("sll.ltype", LINUX_SLL_P_IRDA_LAP, irda_handle);
- data_handle = find_dissector("data");
}
/*
diff --git a/plugins/irda/packet-sir.c b/plugins/irda/packet-sir.c
index 526db940c7..98ee323390 100644
--- a/plugins/irda/packet-sir.c
+++ b/plugins/irda/packet-sir.c
@@ -47,7 +47,6 @@ void proto_reg_handoff_irsir(void);
void proto_register_irsir(void);
/** Protocol handles. */
-static dissector_handle_t data_handle;
static dissector_handle_t irda_handle;
/** Protocol fields. */
@@ -181,10 +180,7 @@ proto_reg_handoff_irsir(void)
{
dissector_add_uint("tcp.port", TCP_PORT_SIR, find_dissector("sir"));
- data_handle = find_dissector("data");
irda_handle = find_dissector("irda");
- if (irda_handle == NULL)
- irda_handle = data_handle;
}