[Ocfs2-tools-devel] [PATCH 1/1] wireshark-ocfs2: add dlm_master_requery support in dissector

Jeff Liu jeff.liu at oracle.com
Thu Jul 2 07:16:03 PDT 2009


dlm_master_requery missing handled in the dissector, this patch add the support for it.

it dissects the packet as:

ocfs2
    Magic: Request (0xfa55)
    Len: 72
    Type: Master Requery (514)
    Pad: 0x0000
    Sys Status: DLM_NORMAL (0)
    Status: 0
    Key: 0x74e320eb
    Num: 0
    Payload1: 0000060900000000245245434F5645525900000000000000
    Payload2: 000000000000000000000000000000000000000000000000
    Payload3: 000000000000000000000000000000000000000000000000
    Node Index: 6
    Namelen: 9
    Name: $RECOVERY

Signed-off-by: Jeff Liu <jeff.liu at oracle.com>
---
 epan/dissectors/packet-ocfs2.c |   33 ++++++++++++++++++++++-----------
 1 files changed, 22 insertions(+), 11 deletions(-)

diff --git a/epan/dissectors/packet-ocfs2.c b/epan/dissectors/packet-ocfs2.c
index bd2d2b7..3843dfc 100644
--- a/epan/dissectors/packet-ocfs2.c
+++ b/epan/dissectors/packet-ocfs2.c
@@ -749,6 +749,14 @@ struct dlm_begin_reco
 	guint16 pad1;	// unused
 	guint32 pad2;	// unused
 };
+struct dlm_master_requery {
+	guint8 pad1;
+	guint8 pad2;
+	guint8 node_idx;
+	guint8 namelen;
+	guint32 pad3;
+	guint8 name[O2NM_MAX_NAME_LEN];
+};
 struct dlm_query_join_request
 {
 	guint8 node_idx;
@@ -865,6 +873,20 @@ static struct dlm_msg_struct_def dlm_struct_defs[] = {
 	{ "dead_node",	&hf_dlm_dead_node,	FIELD_OFFSET_AND_SIZE(struct dlm_lock_request,dead_node),	dlm_node_idx_handler},
 	{ DLM_MSG_STRUCT_DEF_END } }
 },
+{ "dlm_master_requery", "DLM Master Requery",
+	DLM_MASTER_REQUERY_MSG, &ett_dlm_master_requery, {
+		{ "node_idx",	&hf_dlm_node_idx,
+		FIELD_OFFSET_AND_SIZE(struct dlm_master_requery, node_idx),
+		dlm_node_idx_handler},
+		{ "namelen",	&hf_dlm_namelen,
+		FIELD_OFFSET_AND_SIZE(struct dlm_master_requery, namelen),
+		dlm_namelen_handler},
+		{ "name",	&hf_dlm_name,
+		FIELD_OFFSET_AND_SIZE(struct dlm_master_requery, name),
+		dlm_name_handler},
+		{ DLM_MSG_STRUCT_DEF_END }
+	}
+},
 { "dlm_reco_data_done", "DLM Recovery Data Done (recovery)", DLM_RECO_DATA_DONE_MSG, &ett_dlm_recovery_data_done, {
 	{ "node_idx",	&hf_dlm_node_idx,	FIELD_OFFSET_AND_SIZE(struct dlm_reco_data_done,node_idx),	dlm_node_idx_handler},
 	{ "dead_node",	&hf_dlm_dead_node,	FIELD_OFFSET_AND_SIZE(struct dlm_reco_data_done,dead_node),	dlm_node_idx_handler},
@@ -927,16 +949,6 @@ struct dlm_migrate_request
 	{ DLM_MSG_STRUCT_DEF_END }
 },
 
-struct dlm_master_requery
-{
-	guint8 pad1;
-	guint8 pad2;
-	guint8 node_idx;
-	guint8 namelen;
-	guint32 pad3;
-	guint8 name[O2NM_MAX_NAME_LEN];
-};
-
 struct dlm_migratable_lock
 {
 	guint64 cookie;
@@ -1023,7 +1035,6 @@ struct dlm_migratable_lockres
 /* EEEEK still need to do these 3 */
 static gint ett_dlm_migrate_request = -1;
 static gint ett_dlm_migrate_lockres = -1;
-static gint ett_dlm_master_requery = -1;
 #endif
 
 
-- 
1.5.4.3




More information about the Ocfs2-tools-devel mailing list