Fix for bug 4982:
authorJaap Keuter <jaap.keuter@xs4all.nl>
Tue, 6 Jul 2010 17:22:12 +0000 (17:22 -0000)
committerJaap Keuter <jaap.keuter@xs4all.nl>
Tue, 6 Jul 2010 17:22:12 +0000 (17:22 -0000)
Handle concatenated Status and other message.

svn path=/trunk/; revision=33457

epan/dissectors/packet-omapi.c

index 683112fb56b6cff3f8a2aae5f11999ccabe25aba..ec150030a4a18aa802df129d2c9b5454a185c7cc 100644 (file)
@@ -132,6 +132,18 @@ dissect_omapi(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
 
     return;
   }
+  else if ( !(tvb_get_ntohl(tvb, 8) || tvb_get_ntohl(tvb, 12)) )
+  {
+    /* This is a startup message, and more */
+    ptvcursor_add(cursor, hf_omapi_version, 4, FALSE);
+    ptvcursor_add(cursor, hf_omapi_hlength, 4, FALSE);
+
+    if (check_col(pinfo->cinfo, COL_INFO))
+    {
+      col_append_str(pinfo->cinfo, COL_INFO, "Status message");
+    }
+    proto_item_append_text(ti, ", Status message"); 
+  }
 
   ptvcursor_add(cursor, hf_omapi_auth_id, 4, FALSE);
   authlength = tvb_get_ntohl(tvb, ptvcursor_current_offset(cursor));
@@ -139,7 +151,7 @@ dissect_omapi(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
 
   if (check_col(pinfo->cinfo, COL_INFO)) 
   {
-    col_add_str(pinfo->cinfo, COL_INFO, 
+    col_append_sep_str(pinfo->cinfo, COL_INFO, NULL,
       val_to_str(tvb_get_ntohl(tvb, ptvcursor_current_offset(cursor)), omapi_opcode_vals, "Unknown opcode (0x%04x)"));
   }
   proto_item_append_text(ti, ", Opcode: %s",