aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--epan/dissectors/packet-btamp.c20
-rw-r--r--epan/dissectors/packet-btl2cap.c20
-rw-r--r--epan/dissectors/packet-btobex.c22
-rw-r--r--epan/dissectors/packet-btrfcomm.c20
-rw-r--r--epan/dissectors/packet-frame.c1
-rw-r--r--epan/dissectors/packet-hci_h4.c25
-rw-r--r--wiretap/btsnoop.c6
-rw-r--r--wiretap/hcidump.c2
8 files changed, 100 insertions, 16 deletions
diff --git a/epan/dissectors/packet-btamp.c b/epan/dissectors/packet-btamp.c
index 89ea33e261..f997632c6c 100644
--- a/epan/dissectors/packet-btamp.c
+++ b/epan/dissectors/packet-btamp.c
@@ -389,7 +389,25 @@ static void dissect_btamp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
guint16 cmd_length;
col_set_str(pinfo->cinfo, COL_PROTOCOL, "AMP");
- col_set_str(pinfo->cinfo, COL_INFO, pinfo->p2p_dir == P2P_DIR_SENT ? "Sent " : "Rcvd ");
+ switch (pinfo->p2p_dir) {
+
+ case P2P_DIR_SENT:
+ col_add_str(pinfo->cinfo, COL_INFO, "Sent ");
+ break;
+
+ case P2P_DIR_RECV:
+ col_add_str(pinfo->cinfo, COL_INFO, "Rcvd ");
+ break;
+
+ case P2P_DIR_UNKNOWN:
+ col_clear(pinfo->cinfo, COL_INFO);
+ break;
+
+ default:
+ col_add_fstr(pinfo->cinfo, COL_INFO, "Unknown direction %d ",
+ pinfo->p2p_dir);
+ break;
+ }
if(tree){
ti=proto_tree_add_item(tree, proto_btamp, tvb, offset, -1, FALSE);
diff --git a/epan/dissectors/packet-btl2cap.c b/epan/dissectors/packet-btl2cap.c
index c4a4bf9fed..f3bad29491 100644
--- a/epan/dissectors/packet-btl2cap.c
+++ b/epan/dissectors/packet-btl2cap.c
@@ -1095,7 +1095,25 @@ dissect_btl2cap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
void* pd_save;
col_set_str(pinfo->cinfo, COL_PROTOCOL, "L2CAP");
- col_set_str(pinfo->cinfo, COL_INFO, pinfo->p2p_dir == P2P_DIR_SENT ? "Sent " : "Rcvd ");
+ switch (pinfo->p2p_dir) {
+
+ case P2P_DIR_SENT:
+ col_add_str(pinfo->cinfo, COL_INFO, "Sent ");
+ break;
+
+ case P2P_DIR_RECV:
+ col_add_str(pinfo->cinfo, COL_INFO, "Rcvd ");
+ break;
+
+ case P2P_DIR_UNKNOWN:
+ col_clear(pinfo->cinfo, COL_INFO);
+ break;
+
+ default:
+ col_add_fstr(pinfo->cinfo, COL_INFO, "Unknown direction %d ",
+ pinfo->p2p_dir);
+ break;
+ }
if(tree){
ti=proto_tree_add_item(tree, proto_btl2cap, tvb, offset, -1, FALSE);
diff --git a/epan/dissectors/packet-btobex.c b/epan/dissectors/packet-btobex.c
index 57a1d8dfa3..3ce630d0f9 100644
--- a/epan/dissectors/packet-btobex.c
+++ b/epan/dissectors/packet-btobex.c
@@ -490,8 +490,26 @@ dissect_btobex(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
code = tvb_get_guint8(next_tvb, offset) & BTOBEX_CODE_VALS_MASK;
final_flag = tvb_get_guint8(next_tvb, offset) & 0x80;
- col_add_fstr(pinfo->cinfo, COL_INFO, "%s %s",
- pinfo->p2p_dir==P2P_DIR_SENT?"Sent":"Rcvd",
+ switch (pinfo->p2p_dir) {
+
+ case P2P_DIR_SENT:
+ col_add_fstr(pinfo->cinfo, COL_INFO, "Sent ");
+ break;
+
+ case P2P_DIR_RECV:
+ col_add_fstr(pinfo->cinfo, COL_INFO, "Rcvd ");
+ break;
+
+ case P2P_DIR_UNKNOWN:
+ break;
+
+ default:
+ col_add_fstr(pinfo->cinfo, COL_INFO, "Unknown direction %d ",
+ pinfo->p2p_dir);
+ break;
+ }
+
+ col_append_fstr(pinfo->cinfo, COL_INFO, "%s",
val_to_str(code, code_vals, "Unknown"));
if( (code < BTOBEX_CODE_VALS_CONTINUE) || (code == BTOBEX_CODE_VALS_ABORT)) {
diff --git a/epan/dissectors/packet-btrfcomm.c b/epan/dissectors/packet-btrfcomm.c
index 1c03cd3251..1eeade23b9 100644
--- a/epan/dissectors/packet-btrfcomm.c
+++ b/epan/dissectors/packet-btrfcomm.c
@@ -512,8 +512,24 @@ dissect_btrfcomm(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
rfcomm_tree = proto_item_add_subtree(ti, ett_btrfcomm);
col_set_str(pinfo->cinfo, COL_PROTOCOL, "RFCOMM");
- if (check_col(pinfo->cinfo, COL_INFO)) {
- col_set_str(pinfo->cinfo, COL_INFO, pinfo->p2p_dir == P2P_DIR_SENT ? "Sent " : "Rcvd ");
+ switch (pinfo->p2p_dir) {
+
+ case P2P_DIR_SENT:
+ col_add_str(pinfo->cinfo, COL_INFO, "Sent ");
+ break;
+
+ case P2P_DIR_RECV:
+ col_add_str(pinfo->cinfo, COL_INFO, "Rcvd ");
+ break;
+
+ case P2P_DIR_UNKNOWN:
+ col_clear(pinfo->cinfo, COL_INFO);
+ break;
+
+ default:
+ col_add_fstr(pinfo->cinfo, COL_INFO, "Unknown direction %d ",
+ pinfo->p2p_dir);
+ break;
}
diff --git a/epan/dissectors/packet-frame.c b/epan/dissectors/packet-frame.c
index 6d608cd274..d787bfc64a 100644
--- a/epan/dissectors/packet-frame.c
+++ b/epan/dissectors/packet-frame.c
@@ -140,7 +140,6 @@ dissect_frame(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
case WTAP_ENCAP_CHDLC_WITH_PHDR:
case WTAP_ENCAP_PPP_WITH_PHDR:
case WTAP_ENCAP_SDLC:
- case WTAP_ENCAP_BLUETOOTH_H4:
case WTAP_ENCAP_BLUETOOTH_H4_WITH_PHDR:
pinfo->p2p_dir = pinfo->pseudo_header->p2p.sent ?
P2P_DIR_SENT : P2P_DIR_RECV;
diff --git a/epan/dissectors/packet-hci_h4.c b/epan/dissectors/packet-hci_h4.c
index f71ea67fe1..c941a51de5 100644
--- a/epan/dissectors/packet-hci_h4.c
+++ b/epan/dissectors/packet-hci_h4.c
@@ -69,7 +69,24 @@ dissect_hci_h4(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
proto_tree *hci_h4_tree=NULL;
col_set_str(pinfo->cinfo, COL_PROTOCOL, "HCI H4");
- col_clear(pinfo->cinfo, COL_INFO);
+ switch (pinfo->p2p_dir) {
+
+ case P2P_DIR_SENT:
+ col_add_fstr(pinfo->cinfo, COL_INFO, "Sent ");
+ break;
+
+ case P2P_DIR_RECV:
+ col_add_fstr(pinfo->cinfo, COL_INFO, "Rcvd ");
+ break;
+
+ case P2P_DIR_UNKNOWN:
+ break;
+
+ default:
+ col_add_fstr(pinfo->cinfo, COL_INFO, "Unknown direction %d ",
+ pinfo->p2p_dir);
+ break;
+ }
type = tvb_get_guint8(tvb, 0);
@@ -83,13 +100,11 @@ dissect_hci_h4(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
proto_tree_add_item(hci_h4_tree, hf_hci_h4_type,
tvb, 0, 1, TRUE);
+ col_append_fstr(pinfo->cinfo, COL_INFO, "%s",
+ val_to_str(type, hci_h4_type_vals, "Unknown HCI packet type 0x%02x"));
next_tvb = tvb_new_subset_remaining(tvb, 1);
if(!dissector_try_uint(hci_h4_table, type, next_tvb, pinfo, tree)) {
- col_add_fstr(pinfo->cinfo, COL_INFO, "%s %s",
- pinfo->p2p_dir==P2P_DIR_SENT ? "Sent" : "Rcvd",
- val_to_str(type, hci_h4_type_vals, "Unknown HCI packet type 0x%02x"));
-
call_dissector(data_handle, next_tvb, pinfo, tree);
}
}
diff --git a/wiretap/btsnoop.c b/wiretap/btsnoop.c
index 909a8311f2..8e9b91ea33 100644
--- a/wiretap/btsnoop.c
+++ b/wiretap/btsnoop.c
@@ -138,7 +138,7 @@ int btsnoop_open(wtap *wth, int *err, gchar **err_info _U_)
*err_info = g_strdup_printf("btsnoop: H5 capture logs unsupported");
return -1;
case KHciLoggerDatalinkTypeH4:
- file_encap=WTAP_ENCAP_BLUETOOTH_H4;
+ file_encap=WTAP_ENCAP_BLUETOOTH_H4_WITH_PHDR;
break;
default:
*err = WTAP_ERR_UNSUPPORTED;
@@ -209,7 +209,7 @@ static gboolean btsnoop_read(wtap *wth, int *err, gchar **err_info,
wth->phdr.ts.nsecs = (guint)((ts % 1000000) * 1000);
wth->phdr.caplen = packet_size;
wth->phdr.len = orig_size;
- if(wth->file_encap == WTAP_ENCAP_BLUETOOTH_H4)
+ if(wth->file_encap == WTAP_ENCAP_BLUETOOTH_H4_WITH_PHDR)
{
wth->pseudo_header.p2p.sent = (flags & KHciLoggerControllerToHost) ? FALSE : TRUE;
}
@@ -261,7 +261,7 @@ static gboolean btsnoop_seek_read(wtap *wth, gint64 seek_off,
if (!snoop_read_rec_data(wth->random_fh, pd, length, err))
return FALSE; /* failed */
- if(wth->file_encap == WTAP_ENCAP_BLUETOOTH_H4)
+ if(wth->file_encap == WTAP_ENCAP_BLUETOOTH_H4_WITH_PHDR)
{
pseudo_header->p2p.sent = (flags & KHciLoggerControllerToHost) ? FALSE : TRUE;
}
diff --git a/wiretap/hcidump.c b/wiretap/hcidump.c
index c67b206efd..b4ccf08565 100644
--- a/wiretap/hcidump.c
+++ b/wiretap/hcidump.c
@@ -150,7 +150,7 @@ int hcidump_open(wtap *wth, int *err, gchar **err_info _U_)
return -1;
wth->file_type = WTAP_FILE_HCIDUMP;
- wth->file_encap = WTAP_ENCAP_BLUETOOTH_H4;
+ wth->file_encap = WTAP_ENCAP_BLUETOOTH_H4_WITH_PHDR;
wth->snapshot_length = 0;
wth->subtype_read = hcidump_read;