Ethereal-dev: [Ethereal-dev] [PATCH] winsrepl fixes
Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.
From: Stefan Metzmacher <metze@xxxxxxxxx>
Date: Tue, 1 Nov 2005 23:36:21 +0100
Hi *, I have a few little fixes for the wins replication dissector. Can someone please apply them? thanks! metze
=== epan/dissectors/packet-winsrepl.c
==================================================================
--- epan/dissectors/packet-winsrepl.c (revision 674)
+++ epan/dissectors/packet-winsrepl.c (local)
@@ -81,11 +81,11 @@
static int hf_winsrepl_name_flags = -1;
static int hf_winsrepl_name_flags_rectype = -1;
static int hf_winsrepl_name_flags_recstate = -1;
-static int hf_winsrepl_name_flags_remote = -1;
+static int hf_winsrepl_name_flags_local = -1;
static int hf_winsrepl_name_flags_hosttype = -1;
-static int hf_winsrepl_name_flags_dynamic = -1;
+static int hf_winsrepl_name_flags_static = -1;
static int hf_winsrepl_name_group_flag = -1;
-static int hf_winsrepl_name_id = -1;
+static int hf_winsrepl_name_version_id = -1;
static int hf_winsrepl_name_unknown = -1;
static int hf_winsrepl_reply_num_names = -1;
@@ -118,9 +118,9 @@
WREPL_REPL_SEND_REQUEST=2,
WREPL_REPL_SEND_REPLY=3,
WREPL_REPL_UPDATE=4,
- WREPL_REPL_5=5,
+ WREPL_REPL_UPDATE2=5,
WREPL_REPL_INFORM=8,
- WREPL_REPL_9=9
+ WREPL_REPL_INFORM2=9
};
enum wrepl_mess_type {
@@ -138,7 +138,9 @@
{WREPL_REPL_SEND_REQUEST, "WREPL_REPL_SEND_REQUEST"},
{WREPL_REPL_SEND_REPLY, "WREPL_REPL_SEND_REPLY"},
{WREPL_REPL_UPDATE, "WREPL_REPL_UPDATE"},
+ {WREPL_REPL_UPDATE2, "WREPL_REPL_UPDATE2"},
{WREPL_REPL_INFORM, "WREPL_REPL_INFORM"},
+ {WREPL_REPL_INFORM2, "WREPL_REPL_INFORM2"},
{0, NULL}
};
@@ -444,9 +446,9 @@
flags_tree = proto_item_add_subtree(flags_item, ett_winsrepl_flags);
proto_tree_add_uint(flags_tree, hf_winsrepl_name_flags_rectype, winsrepl_tvb, winsrepl_offset, 4, flags);
proto_tree_add_uint(flags_tree, hf_winsrepl_name_flags_recstate, winsrepl_tvb, winsrepl_offset, 4, flags);
- proto_tree_add_boolean(flags_tree, hf_winsrepl_name_flags_remote, winsrepl_tvb, winsrepl_offset, 4, flags);
+ proto_tree_add_boolean(flags_tree, hf_winsrepl_name_flags_local, winsrepl_tvb, winsrepl_offset, 4, flags);
proto_tree_add_uint(flags_tree, hf_winsrepl_name_flags_hosttype, winsrepl_tvb, winsrepl_offset, 4, flags);
- proto_tree_add_boolean(flags_tree, hf_winsrepl_name_flags_dynamic, winsrepl_tvb, winsrepl_offset, 4, flags);
+ proto_tree_add_boolean(flags_tree, hf_winsrepl_name_flags_static, winsrepl_tvb, winsrepl_offset, 4, flags);
winsrepl_offset += 4;
/* GROUP_FLAG */
@@ -454,8 +456,8 @@
proto_tree_add_item(name_tree, hf_winsrepl_name_group_flag, winsrepl_tvb, winsrepl_offset, 4, TRUE);
winsrepl_offset += 4;
- /* ID */
- proto_tree_add_item(name_tree, hf_winsrepl_name_id, winsrepl_tvb, winsrepl_offset, 8, FALSE);
+ /* Version ID */
+ proto_tree_add_item(name_tree, hf_winsrepl_name_version_id, winsrepl_tvb, winsrepl_offset, 8, FALSE);
winsrepl_offset += 8;
switch (flags & WREPL_NAME_TYPE_MASK) {
@@ -525,6 +527,15 @@
}
static int
+dissect_winsrepl_update2(tvbuff_t *winsrepl_tvb, packet_info *pinfo,
+ int winsrepl_offset, proto_tree *winsrepl_tree)
+{
+ winsrepl_offset = dissect_winsrepl_table_reply(winsrepl_tvb, pinfo,
+ winsrepl_offset, winsrepl_tree);
+ return winsrepl_offset;
+}
+
+static int
dissect_winsrepl_inform(tvbuff_t *winsrepl_tvb, packet_info *pinfo,
int winsrepl_offset, proto_tree *winsrepl_tree)
{
@@ -534,8 +545,8 @@
}
static int
-dissect_winsrepl_5_or_9(tvbuff_t *winsrepl_tvb, packet_info *pinfo,
- int winsrepl_offset, proto_tree *winsrepl_tree)
+dissect_winsrepl_inform2(tvbuff_t *winsrepl_tvb, packet_info *pinfo,
+ int winsrepl_offset, proto_tree *winsrepl_tree)
{
winsrepl_offset = dissect_winsrepl_table_reply(winsrepl_tvb, pinfo,
winsrepl_offset, winsrepl_tree);
@@ -606,14 +617,14 @@
winsrepl_offset = dissect_winsrepl_update(winsrepl_tvb, pinfo,
winsrepl_offset, repl_tree);
break;
- case WREPL_REPL_5:
+ case WREPL_REPL_UPDATE2:
if (check_col(pinfo->cinfo, COL_INFO)) {
- col_add_fstr(pinfo->cinfo, COL_INFO, "WREPL_REPL_5");
+ col_add_fstr(pinfo->cinfo, COL_INFO, "WREPL_REPL_UPDATE2");
}
- proto_item_append_text(winsrepl_item, ",WREPL_REPL_5");
- proto_item_append_text(repl_item, ",WREPL_REPL_5");
- winsrepl_offset = dissect_winsrepl_5_or_9(winsrepl_tvb, pinfo,
- winsrepl_offset, repl_tree);
+ proto_item_append_text(winsrepl_item, ",WREPL_REPL_UPDATE2");
+ proto_item_append_text(repl_item, ",WREPL_REPL_UPDATE2");
+ winsrepl_offset = dissect_winsrepl_update2(winsrepl_tvb, pinfo,
+ winsrepl_offset, repl_tree);
break;
case WREPL_REPL_INFORM:
if (check_col(pinfo->cinfo, COL_INFO)) {
@@ -624,14 +635,14 @@
winsrepl_offset = dissect_winsrepl_inform(winsrepl_tvb, pinfo,
winsrepl_offset, repl_tree);
break;
- case WREPL_REPL_9:
+ case WREPL_REPL_INFORM2:
if (check_col(pinfo->cinfo, COL_INFO)) {
- col_add_fstr(pinfo->cinfo, COL_INFO, "WREPL_REPL_9");
+ col_add_fstr(pinfo->cinfo, COL_INFO, "WREPL_REPL_INFORM2");
}
- proto_item_append_text(winsrepl_item, ", WREPL_REPL_9");
- proto_item_append_text(repl_item, ", WREPL_REPL_9");
- winsrepl_offset = dissect_winsrepl_5_or_9(winsrepl_tvb, pinfo,
- winsrepl_offset, repl_tree);
+ proto_item_append_text(winsrepl_item, ", WREPL_REPL_INFORM2");
+ proto_item_append_text(repl_item, ", WREPL_REPL_INFORM2");
+ winsrepl_offset = dissect_winsrepl_inform2(winsrepl_tvb, pinfo,
+ winsrepl_offset, repl_tree);
break;
}
@@ -833,30 +844,30 @@
FT_UINT32, BASE_HEX, VALS(recstate_vals), 0x0000000C,
"WINS Replication Name Flags Record State", HFILL }},
- { &hf_winsrepl_name_flags_remote, {
- "Remote", "winsrepl.name_flags.remote",
+ { &hf_winsrepl_name_flags_local, {
+ "Local", "winsrepl.name_flags.local",
FT_BOOLEAN, 32, NULL, 0x00000010,
- "WINS Replication Name Flags Remote Flag", HFILL }},
+ "WINS Replication Name Flags Local Flag", HFILL }},
{ &hf_winsrepl_name_flags_hosttype, {
"Host Type", "winsrepl.name_flags.hosttype",
FT_UINT32, BASE_HEX, VALS(hosttype_vals), 0x00000060,
"WINS Replication Name Flags Host Type", HFILL }},
- { &hf_winsrepl_name_flags_dynamic, {
- "Dynamic", "winsrepl.name_flags.dynamic",
+ { &hf_winsrepl_name_flags_static, {
+ "Static", "winsrepl.name_flags.static",
FT_BOOLEAN, 32, NULL, 0x00000080,
- "WINS Replication Name Flags Dynamic Flag", HFILL }},
+ "WINS Replication Name Flags Static Flag", HFILL }},
{ &hf_winsrepl_name_group_flag, {
"Name Group Flag", "winsrepl.name_group_flag",
FT_UINT32, BASE_HEX, NULL, 0x0,
"WINS Replication Name Group Flag", HFILL }},
- { &hf_winsrepl_name_id, {
- "Name Id", "winsrepl.name_id",
+ { &hf_winsrepl_name_version_id, {
+ "Name Version Id", "winsrepl.name_version_id",
FT_UINT64, BASE_DEC, NULL, 0x0,
- "WINS Replication Name Id", HFILL }},
+ "WINS Replication Name Version Id", HFILL }},
{ &hf_winsrepl_name_unknown, {
"Unknown IP", "winsrepl.unknown",
- Follow-Ups:
- [Ethereal-dev] Re: winsrepl fixes
- From: ronnie sahlberg
- [Ethereal-dev] Re: winsrepl fixes
- Prev by Date: [Ethereal-dev] Small patch for linkedid in inap and camel.
- Next by Date: Re: [Ethereal-dev] Netflow v9 templates
- Previous by thread: [Ethereal-dev] Re: [Ethereal-cvs] rev 16373: /trunk/epan/dissectors/: packet-image-gif.c packet-image-jfif.c packet-mmse.c packet-smpp.c packet-wbxml.c packet-wsp.c
- Next by thread: [Ethereal-dev] Re: winsrepl fixes
- Index(es):