remove the broken patch for now
OBS-URL: https://build.opensuse.org/package/show/network:utilities/wireshark?expand=0&rev=35
This commit is contained in:
parent
dbddd0d7b0
commit
39aa943ff9
@ -1,413 +0,0 @@
|
||||
Index: wireshark-1.4.3/epan/dissectors/packet-lldp.c
|
||||
===================================================================
|
||||
--- wireshark-1.4.3.orig/epan/dissectors/packet-lldp.c
|
||||
+++ wireshark-1.4.3/epan/dissectors/packet-lldp.c
|
||||
@@ -128,6 +128,12 @@ static gint ett_802_3_power = -1;
|
||||
static gint ett_802_3_aggregation = -1;
|
||||
static gint ett_media_capabilities = -1;
|
||||
static gint ett_profinet_period = -1;
|
||||
+static gint ett_dcb_cn_cnpv = -1;
|
||||
+static gint ett_dcb_cn_ready = -1;
|
||||
+static gint ett_dcb_ets_priority_mapping = -1;
|
||||
+static gint ett_dcb_ets_tc_bw_table = -1;
|
||||
+static gint ett_dcb_ets_tsa_table = -1;
|
||||
+static gint ett_dcb_pfc_enable = -1;
|
||||
|
||||
static const value_string tlv_types[] = {
|
||||
{ END_OF_LLDPDU_TLV_TYPE, "End of LLDPDU"},
|
||||
@@ -188,6 +194,11 @@ static const value_string ieee_802_1_sub
|
||||
{ 0x02, "Port and Protocol VLAN ID" },
|
||||
{ 0x03, "VLAN Name" },
|
||||
{ 0x04, "Protocol Identity" },
|
||||
+ { 0x08, "Congestion Notification" },
|
||||
+ { 0x09, "ETS Configuration" },
|
||||
+ { 0x0A, "ETS Recommendation" },
|
||||
+ { 0x0B, "Priority-based Flow Control Configuration" },
|
||||
+ { 0x0C, "Application Priority" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
|
||||
@@ -1332,6 +1343,368 @@ dissect_ieee_802_1_tlv(tvbuff_t *tvb, pa
|
||||
|
||||
break;
|
||||
}
|
||||
+ case 0x08: /* Congestion Notification */
|
||||
+ {
|
||||
+ proto_item *tf = NULL;
|
||||
+ proto_tree *cnpv = NULL;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+
|
||||
+ tf = proto_tree_add_text(tree, tvb, tempOffset, 1, "CNPV to Priority Mapping: 0x%02X", tempByte);
|
||||
+ cnpv = proto_item_add_subtree(tf, ett_dcb_cn_cnpv);
|
||||
+
|
||||
+ proto_tree_add_text(cnpv, tvb, tempOffset, 1, "%s", decode_boolean_bitfield(tempByte, 0x80, 8, "Priority 0: CNPV Capable",
|
||||
+ "Priority 0: Not CNPV Capable"));
|
||||
+ proto_tree_add_text(cnpv, tvb, tempOffset, 1, "%s", decode_boolean_bitfield(tempByte, 0x40, 8, "Priority 1: CNPV Capable",
|
||||
+ "Priority 1: Not CNPV Capable"));
|
||||
+ proto_tree_add_text(cnpv, tvb, tempOffset, 1, "%s", decode_boolean_bitfield(tempByte, 0x20, 8, "Priority 2: CNPV Capable",
|
||||
+ "Priority 2: Not CNPV Capable"));
|
||||
+ proto_tree_add_text(cnpv, tvb, tempOffset, 1, "%s", decode_boolean_bitfield(tempByte, 0x10, 8, "Priority 3: CNPV Capable",
|
||||
+ "Priority 3: Not CNPV Capable"));
|
||||
+ proto_tree_add_text(cnpv, tvb, tempOffset, 1, "%s", decode_boolean_bitfield(tempByte, 0x08, 8, "Priority 4: CNPV Capable",
|
||||
+ "Priority 4: Not CNPV Capable"));
|
||||
+ proto_tree_add_text(cnpv, tvb, tempOffset, 1, "%s", decode_boolean_bitfield(tempByte, 0x04, 8, "Priority 5: CNPV Capable",
|
||||
+ "Priority 5: Not CNPV Capable"));
|
||||
+ proto_tree_add_text(cnpv, tvb, tempOffset, 1, "%s", decode_boolean_bitfield(tempByte, 0x02, 8, "Priority 6: CNPV Capable",
|
||||
+ "Priority 6: Not CNPV Capable"));
|
||||
+ proto_tree_add_text(cnpv, tvb, tempOffset, 1, "%s", decode_boolean_bitfield(tempByte, 0x01, 8, "Priority 7: CNPV Capable",
|
||||
+ "Priority 7: Not CNPV Capable"));
|
||||
+
|
||||
+ proto_tree *ready = NULL;
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ tf = proto_tree_add_text(tree, tvb, tempOffset, 1, "Ready Indicators: 0x%02X", tempByte);
|
||||
+ ready = proto_item_add_subtree(tf, ett_dcb_cn_ready);
|
||||
+
|
||||
+ proto_tree_add_text(ready, tvb, tempOffset, 1, "%s", decode_boolean_bitfield(tempByte, 0x80, 8, "Priority 0: Xmit Ready",
|
||||
+ "Priority 0: Not Xmit Ready"));
|
||||
+ proto_tree_add_text(ready, tvb, tempOffset, 1, "%s", decode_boolean_bitfield(tempByte, 0x40, 8, "Priority 1: Xmit Ready",
|
||||
+ "Priority 1: Not Xmit Ready"));
|
||||
+ proto_tree_add_text(ready, tvb, tempOffset, 1, "%s", decode_boolean_bitfield(tempByte, 0x20, 8, "Priority 2: Xmit Ready",
|
||||
+ "Priority 2: Not Xmit Ready"));
|
||||
+ proto_tree_add_text(ready, tvb, tempOffset, 1, "%s", decode_boolean_bitfield(tempByte, 0x10, 8, "Priority 3: Xmit Ready",
|
||||
+ "Priority 3: Not Xmit Ready"));
|
||||
+ proto_tree_add_text(ready, tvb, tempOffset, 1, "%s", decode_boolean_bitfield(tempByte, 0x08, 8, "Priority 4: Xmit Ready",
|
||||
+ "Priority 4: Not Xmit Ready"));
|
||||
+ proto_tree_add_text(ready, tvb, tempOffset, 1, "%s", decode_boolean_bitfield(tempByte, 0x04, 8, "Priority 5: Xmit Ready",
|
||||
+ "Priority 5: Not Xmit Ready"));
|
||||
+ proto_tree_add_text(ready, tvb, tempOffset, 1, "%s", decode_boolean_bitfield(tempByte, 0x02, 8, "Priority 6: Xmit Ready",
|
||||
+ "Priority 6: Not Xmit Ready"));
|
||||
+ proto_tree_add_text(ready, tvb, tempOffset, 1, "%s", decode_boolean_bitfield(tempByte, 0x01, 8, "Priority 7: Xmit Ready",
|
||||
+ "Priority 7: Not Xmit Ready"));
|
||||
+ break;
|
||||
+ }
|
||||
+ case 0x09: /* ETS Configuration */
|
||||
+ {
|
||||
+ proto_item *tf = NULL;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(tree, tvb, tempOffset, 1, "%s",
|
||||
+ decode_boolean_bitfield(tempByte, 0x80, 8, "Willing: Enabled",
|
||||
+ "Willing: Not Enabled"));
|
||||
+ proto_tree_add_text(tree, tvb, tempOffset, 1, "%s",
|
||||
+ decode_boolean_bitfield(tempByte, 0x40, 8, "CBS: Enabled",
|
||||
+ "CBS: Not Enabled"));
|
||||
+ proto_tree_add_text(tree, tvb, tempOffset, 1, "Max Traffic Classes: %u", (tempByte&0x07));
|
||||
+
|
||||
+ /* Traffic Class to Priority Map */
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+
|
||||
+ long tempLong = tvb_get_ntohl(tvb, tempOffset);
|
||||
+ proto_tree *priority_mapping = NULL;
|
||||
+
|
||||
+ tf = proto_tree_add_text(tree, tvb, tempOffset, 4, "Traffic Class to Priority Mapping: 0x%08X", tempLong);
|
||||
+ priority_mapping = proto_item_add_subtree(tf, ett_dcb_ets_priority_mapping);
|
||||
+
|
||||
+ proto_tree_add_text(priority_mapping, tvb, tempOffset, 1, "Priority 0: %u", ((tempByte&0xF0)>>4));
|
||||
+ proto_tree_add_text(priority_mapping, tvb, tempOffset, 1, "Priority 1: %u", (tempByte&0x0F));
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(priority_mapping, tvb, tempOffset, 1, "Priority 2: %u", ((tempByte&0xF0)>>4));
|
||||
+ proto_tree_add_text(priority_mapping, tvb, tempOffset, 1, "Priority 3: %u", (tempByte&0x0F));
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(priority_mapping, tvb, tempOffset, 1, "Priority 4: %u", ((tempByte&0xF0)>>4));
|
||||
+ proto_tree_add_text(priority_mapping, tvb, tempOffset, 1, "Priority 5: %u", (tempByte&0x0F));
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(priority_mapping, tvb, tempOffset, 1, "Priority 6: %u", ((tempByte&0xF0)>>4));
|
||||
+ proto_tree_add_text(priority_mapping, tvb, tempOffset, 1, "Priority 7: %u", (tempByte&0x0F));
|
||||
+
|
||||
+ /* TC BW Table */
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+
|
||||
+ tempLong = tvb_get_ntohl(tvb, tempOffset);
|
||||
+ long tempLong2 = tvb_get_ntohl(tvb, tempOffset+4);
|
||||
+ proto_tree *bw_table = NULL;
|
||||
+ tf = proto_tree_add_text(tree, tvb, tempOffset, 8, "Traffic Class Bandwidth Table: 0x%08X%08X", tempLong, tempLong2);
|
||||
+ bw_table = proto_item_add_subtree(tf, ett_dcb_ets_tc_bw_table);
|
||||
+
|
||||
+ proto_tree_add_text(bw_table, tvb, tempOffset, 1, "Traffic Class 1: %u", tempByte);
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(bw_table, tvb, tempOffset, 1, "Traffic Class 2: %u", tempByte);
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(bw_table, tvb, tempOffset, 1, "Traffic Class 3: %u", tempByte);
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(bw_table, tvb, tempOffset, 1, "Traffic Class 4: %u", tempByte);
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(bw_table, tvb, tempOffset, 1, "Traffic Class 5: %u", tempByte);
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(bw_table, tvb, tempOffset, 1, "Traffic Class 6: %u", tempByte);
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(bw_table, tvb, tempOffset, 1, "Traffic Class 7: %u", tempByte);
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(bw_table, tvb, tempOffset, 1, "Traffic Class 8: %u", tempByte);
|
||||
+
|
||||
+ /* TSA Table */
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+
|
||||
+ tempLong = tvb_get_ntohl(tvb, tempOffset);
|
||||
+ tempLong2 = tvb_get_ntohl(tvb, tempOffset+4);
|
||||
+ proto_tree *tsa_table = NULL;
|
||||
+ tf = proto_tree_add_text(tree, tvb, tempOffset, 8, "Traffic Selection Algorithm Table: 0x%08X%08X", tempLong, tempLong2);
|
||||
+ tsa_table = proto_item_add_subtree(tf, ett_dcb_ets_tsa_table);
|
||||
+
|
||||
+ proto_tree_add_text(tsa_table, tvb, tempOffset, 1, "Traffic Class 1: %u", tempByte);
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(tsa_table, tvb, tempOffset, 1, "Traffic Class 2: %u", tempByte);
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(tsa_table, tvb, tempOffset, 1, "Traffic Class 3: %u", tempByte);
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(tsa_table, tvb, tempOffset, 1, "Traffic Class 4: %u", tempByte);
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(tsa_table, tvb, tempOffset, 1, "Traffic Class 5: %u", tempByte);
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(tsa_table, tvb, tempOffset, 1, "Traffic Class 6: %u", tempByte);
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(tsa_table, tvb, tempOffset, 1, "Traffic Class 7: %u", tempByte);
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(tsa_table, tvb, tempOffset, 1, "Traffic Class 8: %u", tempByte);
|
||||
+
|
||||
+ break;
|
||||
+ }
|
||||
+ case 0x0A: /* ETS Recommendation */
|
||||
+ {
|
||||
+ /* Traffic Class to Priority Map */
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+
|
||||
+ long tempLong = tvb_get_ntohl(tvb, tempOffset);
|
||||
+ proto_tree *priority_mapping = NULL;
|
||||
+
|
||||
+ tf = proto_tree_add_text(tree, tvb, tempOffset, 4, "Traffic Class to Priority Mapping: 0x%08X", tempLong);
|
||||
+ priority_mapping = proto_item_add_subtree(tf, ett_dcb_ets_priority_mapping);
|
||||
+
|
||||
+ proto_tree_add_text(priority_mapping, tvb, tempOffset, 1, "Priority 0: %u", ((tempByte&0xF0)>>4));
|
||||
+ proto_tree_add_text(priority_mapping, tvb, tempOffset, 1, "Priority 1: %u", (tempByte&0x0F));
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(priority_mapping, tvb, tempOffset, 1, "Priority 2: %u", ((tempByte&0xF0)>>4));
|
||||
+ proto_tree_add_text(priority_mapping, tvb, tempOffset, 1, "Priority 3: %u", (tempByte&0x0F));
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(priority_mapping, tvb, tempOffset, 1, "Priority 4: %u", ((tempByte&0xF0)>>4));
|
||||
+ proto_tree_add_text(priority_mapping, tvb, tempOffset, 1, "Priority 5: %u", (tempByte&0x0F));
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(priority_mapping, tvb, tempOffset, 1, "Priority 6: %u", ((tempByte&0xF0)>>4));
|
||||
+ proto_tree_add_text(priority_mapping, tvb, tempOffset, 1, "Priority 7: %u", (tempByte&0x0F));
|
||||
+
|
||||
+ /* TC BW Table */
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+
|
||||
+ tempLong = tvb_get_ntohl(tvb, tempOffset);
|
||||
+ long tempLong2 = tvb_get_ntohl(tvb, tempOffset+4);
|
||||
+ proto_tree *bw_table = NULL;
|
||||
+ tf = proto_tree_add_text(tree, tvb, tempOffset, 8, "Traffic Class Bandwidth Table: 0x%08X%08X", tempLong, tempLong2);
|
||||
+ bw_table = proto_item_add_subtree(tf, ett_dcb_ets_tc_bw_table);
|
||||
+
|
||||
+ proto_tree_add_text(bw_table, tvb, tempOffset, 1, "Traffic Class 1: %u", tempByte);
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(bw_table, tvb, tempOffset, 1, "Traffic Class 2: %u", tempByte);
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(bw_table, tvb, tempOffset, 1, "Traffic Class 3: %u", tempByte);
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(bw_table, tvb, tempOffset, 1, "Traffic Class 4: %u", tempByte);
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(bw_table, tvb, tempOffset, 1, "Traffic Class 5: %u", tempByte);
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(bw_table, tvb, tempOffset, 1, "Traffic Class 6: %u", tempByte);
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(bw_table, tvb, tempOffset, 1, "Traffic Class 7: %u", tempByte);
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(bw_table, tvb, tempOffset, 1, "Traffic Class 8: %u", tempByte);
|
||||
+
|
||||
+ /* TSA Table */
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+
|
||||
+ tempLong = tvb_get_ntohl(tvb, tempOffset);
|
||||
+ tempLong2 = tvb_get_ntohl(tvb, tempOffset+4);
|
||||
+ proto_tree *tsa_table = NULL;
|
||||
+ tf = proto_tree_add_text(tree, tvb, tempOffset, 8, "Traffic Selection Algorithm Table: 0x%08X%08X", tempLong, tempLong2);
|
||||
+ tsa_table = proto_item_add_subtree(tf, ett_dcb_ets_tsa_table);
|
||||
+
|
||||
+ proto_tree_add_text(tsa_table, tvb, tempOffset, 1, "Traffic Class 1: %u", tempByte);
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(tsa_table, tvb, tempOffset, 1, "Traffic Class 2: %u", tempByte);
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(tsa_table, tvb, tempOffset, 1, "Traffic Class 3: %u", tempByte);
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(tsa_table, tvb, tempOffset, 1, "Traffic Class 4: %u", tempByte);
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(tsa_table, tvb, tempOffset, 1, "Traffic Class 5: %u", tempByte);
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(tsa_table, tvb, tempOffset, 1, "Traffic Class 6: %u", tempByte);
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(tsa_table, tvb, tempOffset, 1, "Traffic Class 7: %u", tempByte);
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(tsa_table, tvb, tempOffset, 1, "Traffic Class 8: %u", tempByte);
|
||||
+
|
||||
+ break;
|
||||
+ }
|
||||
+ case 0x0B: /* PFC Configuration */
|
||||
+ {
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+
|
||||
+ /* Willing Flag */
|
||||
+ proto_tree_add_text(tree, tvb, tempOffset, 1, "%s",
|
||||
+ decode_boolean_bitfield(tempByte, 0x80, 8, "Willing: Enabled",
|
||||
+ "Willing: Not Enabled"));
|
||||
+ /* MBC Flag */
|
||||
+ proto_tree_add_text(tree, tvb, tempOffset, 1, "%s",
|
||||
+ decode_boolean_bitfield(tempByte, 0x40, 8, "MBC: Enable",
|
||||
+ "MBC: Not Enabled"));
|
||||
+ /* PFC Cabaility Field */
|
||||
+ proto_tree_add_text(tree, tvb, tempOffset, 1, "PFC Capability: %u", (tempByte&0x0F));
|
||||
+
|
||||
+ /* PFC Enabled Flag Field */
|
||||
+ proto_item *tf = NULL;
|
||||
+ proto_tree *pfc_table = NULL;
|
||||
+
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ tf = proto_tree_add_text(tree, tvb, tempOffset, 1, "PFC Enable Table: 0x%02X", tempByte);
|
||||
+ pfc_table = proto_item_add_subtree(tf, ett_dcb_pfc_enable);
|
||||
+
|
||||
+
|
||||
+
|
||||
+ proto_tree_add_text(pfc_table, tvb, tempOffset, 1, "%s",
|
||||
+ decode_boolean_bitfield(tempByte, 0x01, 8, "Priority 1: Enabled",
|
||||
+ "Priority 1: Not Enabled"));
|
||||
+ proto_tree_add_text(pfc_table, tvb, tempOffset, 1, "%s",
|
||||
+ decode_boolean_bitfield(tempByte, 0x02, 8, "Priority 2: Enabled",
|
||||
+ "Priority 2: Not Enabled"));
|
||||
+ proto_tree_add_text(pfc_table, tvb, tempOffset, 1, "%s",
|
||||
+ decode_boolean_bitfield(tempByte, 0x04, 8, "Priority 3: Enabled",
|
||||
+ "Priority 3: Not Enabled"));
|
||||
+ proto_tree_add_text(pfc_table, tvb, tempOffset, 1, "%s",
|
||||
+ decode_boolean_bitfield(tempByte, 0x08, 8, "Priority 4: Enabled",
|
||||
+ "Priority 4: Not Enabled"));
|
||||
+ proto_tree_add_text(pfc_table, tvb, tempOffset, 1, "%s",
|
||||
+ decode_boolean_bitfield(tempByte, 0x10, 8, "Priority 5: Enabled",
|
||||
+ "Priority 5: Not Enabled"));
|
||||
+ proto_tree_add_text(pfc_table, tvb, tempOffset, 1, "%s",
|
||||
+ decode_boolean_bitfield(tempByte, 0x20, 8, "Priority 6: Enabled",
|
||||
+ "Priority 6: Not Enabled"));
|
||||
+ proto_tree_add_text(pfc_table, tvb, tempOffset, 1, "%s",
|
||||
+ decode_boolean_bitfield(tempByte, 0x40, 8, "Priority 7: Enabled",
|
||||
+ "Priority 7: Not Enabled"));
|
||||
+ proto_tree_add_text(pfc_table, tvb, tempOffset, 1, "%s",
|
||||
+ decode_boolean_bitfield(tempByte, 0x80, 8, "Priority 8: Enabled",
|
||||
+ "Priority 8: Not Enabled"));
|
||||
+ break;
|
||||
+ }
|
||||
+ case 0x0C: /* App TLV */
|
||||
+ {
|
||||
+ /* Get tlv length */
|
||||
+ guint16 tempShort = tvb_get_ntohs(tvb, tempOffset-6);
|
||||
+ guint32 tempLen = 0;
|
||||
+ tempLen = TLV_INFO_LEN(tempShort);
|
||||
+
|
||||
+ if(tempLen-5<0 || (tempLen-5)%3!=0)
|
||||
+ proto_tree_add_text(tree, tvb, tempOffset-4, tempLen, "Invalid Application TLV Length (%u)", tempLen);
|
||||
+ else
|
||||
+ {
|
||||
+ int i = 0;
|
||||
+ for( i; i < ((tempLen-5)/3); i++)
|
||||
+ {
|
||||
+ tempOffset++;
|
||||
+ tempByte = tvb_get_guint8(tvb, tempOffset);
|
||||
+ proto_tree_add_text(tree, tvb, tempOffset, 1, "Application %u Priority: %u", i+1, ((tempByte&0xE0)>>5));
|
||||
+ proto_tree_add_text(tree, tvb, tempOffset, 1, "Application %u Selection: %u", i+1, (tempByte&0x07));
|
||||
+ tempOffset++;
|
||||
+ tempShort = tvb_get_ntohs(tvb, tempOffset);
|
||||
+ proto_tree_add_text(tree, tvb, tempOffset, 2, "Application %u Selection: %04X", i+1, tempShort);
|
||||
+ tempOffset++;
|
||||
+ }
|
||||
+ }
|
||||
+ break;
|
||||
+ }
|
||||
}
|
||||
|
||||
return;
|
||||
@@ -2844,7 +3217,13 @@ proto_register_lldp(void)
|
||||
&ett_802_3_power,
|
||||
&ett_802_3_aggregation,
|
||||
&ett_media_capabilities,
|
||||
- &ett_profinet_period
|
||||
+ &ett_profinet_period,
|
||||
+ &ett_dcb_cn_cnpv,
|
||||
+ &ett_dcb_cn_ready,
|
||||
+ &ett_dcb_ets_priority_mapping,
|
||||
+ &ett_dcb_ets_tc_bw_table,
|
||||
+ &ett_dcb_ets_tsa_table,
|
||||
+ &ett_dcb_pfc_enable
|
||||
};
|
||||
|
||||
/* Register the protocol name and description */
|
@ -41,11 +41,6 @@ Tue Feb 15 12:52:45 UTC 2011 - prusnak@opensuse.org
|
||||
- new and updated capture file support:
|
||||
Endace ERF, Microsoft Network Monitor, VMS TCPtrace
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Feb 11 13:56:50 CET 2011 - hare@suse.de
|
||||
|
||||
- Add packet dissector for DCBx LLDP
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Dec 8 16:15:13 UTC 2010 - prusnak@opensuse.org
|
||||
|
||||
|
@ -38,8 +38,6 @@ Patch3: %{name}-corosync-packet-dissector.patch
|
||||
Patch4: %{name}-1.2.4-enable_lua.patch
|
||||
# PATCH-FEATURE-OPENSUSE wireshark-nfsv4-opts.patch -- add NFSv4 options
|
||||
Patch5: %{name}-nfsv4-opts.patch
|
||||
# PATCH-FEATURE-UPSTREAM wireshark-dcbx-lldp-dissector.patch hare@suse.de -- add DCBx LLDP packet dissector
|
||||
Patch6: %{name}-dcbx-lldp-dissector.patch
|
||||
BuildRequires: bison
|
||||
BuildRequires: cairo-devel
|
||||
BuildRequires: flex
|
||||
@ -102,7 +100,6 @@ view the reconstructed stream of a TCP session.
|
||||
%patch3 -p1
|
||||
%patch4 -p1
|
||||
%patch5 -p1
|
||||
%patch6 -p1
|
||||
sed -i 's/^Icon=wireshark.png$/Icon=wireshark/' wireshark.desktop
|
||||
# run as root on 11.3 and older - bnc#349782
|
||||
%if ! %{use_caps}
|
||||
|
Loading…
Reference in New Issue
Block a user