aboutsummaryrefslogtreecommitdiffstats
path: root/packet-dcerpc-netlogon.c
diff options
context:
space:
mode:
authortpot <tpot@f5534014-38df-0310-8fa8-9805f1628bb7>2003-09-22 00:59:47 +0000
committertpot <tpot@f5534014-38df-0310-8fa8-9805f1628bb7>2003-09-22 00:59:47 +0000
commitb4f8ccb18ce9fd3afe98fb4e07d34a0be41c9d4f (patch)
treeadb55f6ea4881e96708bac80d25ef7834ee87b2b /packet-dcerpc-netlogon.c
parentb538ebf11eefb9fb59e916dbe46fbdef6bc586bf (diff)
A bunch of fixups for the NETLOGON sam database synchronisation
dissector: - some rids marked as user are actually groups - decorate some strings higher up in the tree - dissect the delta id as such and add value string text item git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@8510 f5534014-38df-0310-8fa8-9805f1628bb7
Diffstat (limited to 'packet-dcerpc-netlogon.c')
-rw-r--r--packet-dcerpc-netlogon.c20
1 files changed, 12 insertions, 8 deletions
diff --git a/packet-dcerpc-netlogon.c b/packet-dcerpc-netlogon.c
index 37ac13e84b..409beb889e 100644
--- a/packet-dcerpc-netlogon.c
+++ b/packet-dcerpc-netlogon.c
@@ -3,7 +3,7 @@
* Copyright 2001,2003 Tim Potter <tpot@samba.org>
* 2002 structure and command dissectors by Ronnie Sahlberg
*
- * $Id: packet-dcerpc-netlogon.c,v 1.91 2003/09/12 11:13:17 sahlberg Exp $
+ * $Id: packet-dcerpc-netlogon.c,v 1.92 2003/09/22 00:59:47 tpot Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@@ -839,7 +839,7 @@ netlogon_dissect_GROUP_MEMBERSHIP(tvbuff_t *tvb, int offset,
}
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep,
- hf_netlogon_user_rid, NULL);
+ hf_netlogon_group_rid, NULL);
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep,
hf_netlogon_attrs, NULL);
@@ -1731,7 +1731,7 @@ netlogon_dissect_DELTA_USER(tvbuff_t *tvb, int offset,
char *drep)
{
offset = dissect_ndr_counted_string(tvb, offset, pinfo, tree, drep,
- hf_netlogon_acct_name, 0);
+ hf_netlogon_acct_name, 3);
offset = dissect_ndr_counted_string(tvb, offset, pinfo, tree, drep,
hf_netlogon_full_name, 0);
@@ -1872,7 +1872,7 @@ netlogon_dissect_DELTA_DOMAIN(tvbuff_t *tvb, int offset,
char *drep)
{
offset = dissect_ndr_counted_string(tvb, offset, pinfo, tree, drep,
- hf_netlogon_domain_name, 1);
+ hf_netlogon_domain_name, 3);
offset = dissect_ndr_counted_string(tvb, offset, pinfo, tree, drep,
hf_netlogon_oem_info, 0);
@@ -1955,7 +1955,7 @@ netlogon_dissect_DELTA_GROUP(tvbuff_t *tvb, int offset,
char *drep)
{
offset = dissect_ndr_counted_string(tvb, offset, pinfo, tree, drep,
- hf_netlogon_group_name, 0);
+ hf_netlogon_group_name, 3);
offset = netlogon_dissect_GROUP_MEMBERSHIP(tvb, offset,
pinfo, tree, drep);
@@ -2972,13 +2972,13 @@ netlogon_dissect_DELTA_ID_UNION(tvbuff_t *tvb, int offset,
}
offset = dissect_ndr_uint16(tvb, offset, pinfo, tree, drep,
- hf_netlogon_level16, &level);
+ hf_netlogon_delta_type, &level);
ALIGN_TO_4_BYTES;
switch(level){
case 1:
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep,
- hf_netlogon_user_rid, NULL);
+ hf_netlogon_group_rid, NULL);
break;
case 2:
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep,
@@ -3083,6 +3083,7 @@ netlogon_dissect_DELTA_ENUM(tvbuff_t *tvb, int offset,
proto_item *item=NULL;
proto_tree *tree=NULL;
int old_offset=offset;
+ guint16 type;
if(parent_tree){
item = proto_tree_add_text(parent_tree, tvb, offset, 0,
@@ -3091,7 +3092,10 @@ netlogon_dissect_DELTA_ENUM(tvbuff_t *tvb, int offset,
}
offset = dissect_ndr_uint16(tvb, offset, pinfo, tree, drep,
- hf_netlogon_delta_type, NULL);
+ hf_netlogon_delta_type, &type);
+
+ proto_item_append_text(item, val_to_str(
+ type, delta_type_vals, "Unknown"));
offset = netlogon_dissect_DELTA_ID_UNION(tvb, offset,
pinfo, tree, drep);