This patch updates wireshark to the current wireless-testing.

---

--- a/epan/dissectors/packet-ieee80211.c
+++ b/epan/dissectors/packet-ieee80211.c
@@ -649,10 +649,11 @@ int add_mimo_compressed_beamforming_feed
 /* Not yet assigned by ANA */
 #define TAG_MESH_CONFIGURATION    113
 #define TAG_MESH_ID               114
-#define TAG_MESH_PEER_LINK_MGMT   55
+#define TAG_MESH_PEER_LINK_MGMT          117
+#define TAG_MESH_PEER_LINK        55
 #define TAG_MESH_PREQ             130
 #define TAG_MESH_PREP             131
-#define TAG_MESH_PERR             70
+#define TAG_MESH_PERR             132
 #endif /* MESH_OVERRIDES */
 
 static const range_string tag_num_vals[] = {
@@ -733,6 +734,7 @@ static const range_string tag_num_vals[]
   { TAG_MESH_ID, TAG_MESH_ID, "Mesh ID" },
   { TAG_MESH_CONFIGURATION, TAG_MESH_CONFIGURATION, "Mesh Configuration" },
   { TAG_MESH_PEER_LINK_MGMT, TAG_MESH_PEER_LINK_MGMT, "Mesh Peer Link 
Management" },
+  { TAG_MESH_PEER_LINK, TAG_MESH_PEER_LINK, "Mesh Peer Link" },
   { TAG_MESH_PREQ, TAG_MESH_PREQ, "Mesh Path Request" },
   { TAG_MESH_PREP, TAG_MESH_PREP, "Mesh Path Response" },
   { TAG_MESH_PERR, TAG_MESH_PERR, "Mesh Path Error" },
@@ -975,6 +977,7 @@ static const value_string aruba_mgt_type
 #define CAT_VENDOR_SPECIFIC     127
 
 #ifdef MESH_OVERRIDES
+#define CAT_MESH_ACTION                           13
 #define CAT_MESH_PEER_LINK                 30 /* Per 802.11s draft 1.08.  ANA 
will probably revise this */
 #define CAT_MESH_LINK_METRIC               31
 #define CAT_MESH_PATH_SELECTION            32
@@ -1052,9 +1055,9 @@ static const value_string aruba_mgt_type
 #define TDLS_DISCOVERY_REQUEST          10
 
 #ifdef MESH_OVERRIDES
-#define MESH_PL_PEER_LINK_OPEN                      0
-#define MESH_PL_PEER_LINK_CONFIRM                   1
-#define MESH_PL_PEER_LINK_CLOSE                     2
+#define MESH_PL_PEER_LINK_OPEN                      1
+#define MESH_PL_PEER_LINK_CONFIRM                   2
+#define MESH_PL_PEER_LINK_CLOSE                     3
 
 #define MESH_PS_PATH_REQUEST                        0
 #define MESH_PS_PATH_REPLY                          1
@@ -4275,7 +4278,7 @@ add_fixed_field(proto_tree * tree, tvbuf
               }
 
 #ifdef MESH_OVERRIDES
-            case CAT_MESH_PEER_LINK:
+            case CAT_MESH_ACTION:
               /* Non-IE fixed fields here.  edit TAG_MESH_* for IE fields */
               switch (tvb_get_guint8(tvb, 1))
                 {
@@ -8000,26 +8003,28 @@ add_tagged_field(packet_info * pinfo, pr
 
 
 #ifdef MESH_OVERRIDES
-    case TAG_MESH_PEER_LINK_MGMT:
+    case TAG_MESH_PEER_LINK:
       {
+       guint8 len = tvb_get_guint8(tvb, offset + 1);
         offset += 2;
-        proto_tree_add_item (tree, hf_ieee80211_mesh_mgt_pl_subtype, tvb, 
offset, 1, TRUE);
-        offset += 1;
-        switch (tvb_get_guint8(tvb, 1))
-          {                                         /* IE subtype */
-          case MESH_PL_PEER_LINK_OPEN:
-            proto_tree_add_item (tree, hf_ieee80211_mesh_mgt_pl_local_link_id, 
tvb, offset, 2, TRUE);
+        switch (len)
+          {
+          case 6:
+           proto_tree_add_item (tree, 
hf_ieee80211_mesh_config_peering_protocol, tvb, offset, 4, TRUE);
+            proto_tree_add_item (tree, hf_ieee80211_mesh_mgt_pl_local_link_id, 
tvb, offset + 4, 2, TRUE);
             break;
 
-          case MESH_PL_PEER_LINK_CONFIRM:
-            proto_tree_add_item (tree, hf_ieee80211_mesh_mgt_pl_local_link_id, 
tvb, offset, 2, TRUE);
-            proto_tree_add_item (tree, hf_ieee80211_mesh_mgt_pl_peer_link_id, 
tvb, offset + 2, 2, TRUE);
+          case 8:
+           proto_tree_add_item (tree, 
hf_ieee80211_mesh_config_peering_protocol, tvb, offset, 4, TRUE);
+            proto_tree_add_item (tree, hf_ieee80211_mesh_mgt_pl_local_link_id, 
tvb, offset + 4, 2, TRUE);
+            proto_tree_add_item (tree, hf_ieee80211_mesh_mgt_pl_peer_link_id, 
tvb, offset + 6, 2, TRUE);
             break;
 
-          case MESH_PL_PEER_LINK_CLOSE:
-            proto_tree_add_item (tree, hf_ieee80211_mesh_mgt_pl_local_link_id, 
tvb, offset, 2, TRUE);
-            proto_tree_add_item (tree, hf_ieee80211_mesh_mgt_pl_peer_link_id, 
tvb, offset + 2, 2, TRUE);
-            proto_tree_add_item (tree, hf_ieee80211_mesh_mgt_pl_reason_code, 
tvb, offset + 4, 2, TRUE);
+          case 10:
+           proto_tree_add_item (tree, 
hf_ieee80211_mesh_config_peering_protocol, tvb, offset, 4, TRUE);
+            proto_tree_add_item (tree, hf_ieee80211_mesh_mgt_pl_local_link_id, 
tvb, offset + 4, 2, TRUE);
+            proto_tree_add_item (tree, hf_ieee80211_mesh_mgt_pl_peer_link_id, 
tvb, offset + 6, 2, TRUE);
+            proto_tree_add_item (tree, hf_ieee80211_mesh_mgt_pl_reason_code, 
tvb, offset + 8, 2, TRUE);
             break;
 
           /* undefined values */
@@ -8038,9 +8043,8 @@ add_tagged_field(packet_info * pinfo, pr
         proto_tree_add_item (tree, 
hf_ieee80211_mesh_config_congestion_control, tvb, offset + 2, 1, TRUE);
         proto_tree_add_item (tree, hf_ieee80211_mesh_config_sync_protocol, 
tvb, offset + 3, 1, TRUE);
         proto_tree_add_item (tree, hf_ieee80211_mesh_config_auth_protocol, 
tvb, offset + 4, 1, TRUE);
-        proto_tree_add_item (tree, hf_ieee80211_mesh_config_peering_protocol, 
tvb, offset + 5, 1, TRUE);
-        proto_tree_add_item (tree, hf_ieee80211_mesh_config_formation_info, 
tvb, offset + 6, 1, TRUE);
-        proto_tree_add_item (tree, hf_ieee80211_mesh_config_capability, tvb, 
offset + 7, 2, TRUE);
+        proto_tree_add_item (tree, hf_ieee80211_mesh_config_formation_info, 
tvb, offset + 5, 1, TRUE);
+        proto_tree_add_item (tree, hf_ieee80211_mesh_config_capability, tvb, 
offset + 6, 1, TRUE);
         break;
       }
 
@@ -11299,6 +11303,8 @@ proto_register_ieee80211 (void)
 #ifdef MESH_OVERRIDES
     {CAT_MESH_PEER_LINK, "Mesh Peer Link"},
     {0x80 | CAT_MESH_PEER_LINK, "Mesh Peer Link"},
+    {CAT_MESH_ACTION, "Mesh Action"},
+    {0x80 | CAT_MESH_ACTION, "Mesh Action"},
     {CAT_MESH_LINK_METRIC, "Mesh Link Metric"},
     {0x80 | CAT_MESH_LINK_METRIC, "Mesh Link Metric"},
     {CAT_MESH_PATH_SELECTION, "Mesh Path Selection"},
@@ -13187,7 +13193,7 @@ proto_register_ieee80211 (void)
 
     {&hf_ieee80211_mesh_config_peering_protocol,
      {"Peering Protocol", "wlan.mesh.config.peer_proto",
-      FT_UINT8, BASE_HEX, NULL, 0,
+      FT_UINT32, BASE_HEX, NULL, 0,
       "Mesh Configuration Peering Protocol", HFILL }},
 
     {&hf_ieee80211_mesh_config_formation_info,

_______________________________________________
Devel mailing list
Devel@lists.open80211s.org
http://open80211s.com/mailman/listinfo/devel

Reply via email to