From 8a6a10b02d2fb93e7466ca3c5d6076f793342d08 Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Fri, 25 Feb 2022 01:42:34 +0100 Subject: [PATCH] dcerpc-netlogon: make use of common dissect_ndr_nt_SE_GROUP_ATTRIBUTES() Signed-off-by: Stefan Metzmacher --- epan/dissectors/packet-dcerpc-netlogon.c | 57 +----------------------- 1 file changed, 1 insertion(+), 56 deletions(-) diff --git a/epan/dissectors/packet-dcerpc-netlogon.c b/epan/dissectors/packet-dcerpc-netlogon.c index 0b08c7f4a8..06683d3148 100644 --- a/epan/dissectors/packet-dcerpc-netlogon.c +++ b/epan/dissectors/packet-dcerpc-netlogon.c @@ -109,9 +109,6 @@ static int hf_client_credential; static int hf_server_credential; static int hf_netlogon_logon_dnslogondomainname; static int hf_netlogon_logon_upn; -static int hf_netlogon_group_attrs_mandatory; -static int hf_netlogon_group_attrs_enabled_by_default; -static int hf_netlogon_group_attrs_enabled; static int hf_netlogon_opnum; static int hf_netlogon_data_length; static int hf_netlogon_extraflags; @@ -1465,42 +1462,6 @@ netlogon_dissect_AUTHENTICATOR(tvbuff_t *tvb, int offset, } -static const true_false_string group_attrs_mandatory = { - "The MANDATORY bit is SET", - "The mandatory bit is NOT set", -}; -static const true_false_string group_attrs_enabled_by_default = { - "The ENABLED_BY_DEFAULT bit is SET", - "The enabled_by_default bit is NOT set", -}; -static const true_false_string group_attrs_enabled = { - "The enabled bit is SET", - "The enabled bit is NOT set", -}; -static int -netlogon_dissect_GROUP_MEMBERSHIP_ATTRIBUTES(tvbuff_t *tvb, int offset, - packet_info *pinfo, proto_tree *parent_tree, dcerpc_info *di, guint8 *drep) -{ - guint32 mask; - static int * const attr[] = { - &hf_netlogon_group_attrs_enabled, - &hf_netlogon_group_attrs_enabled_by_default, - &hf_netlogon_group_attrs_mandatory, - NULL - }; - - if(di->conformant_run){ - /*just a run to handle conformant arrays, nothing to dissect */ - return offset; - } - - offset=dissect_ndr_uint32(tvb, offset, pinfo, NULL, di, drep, - -1, &mask); - - proto_tree_add_bitmask_value_with_flags(parent_tree, tvb, offset-4, hf_netlogon_attrs, ett_group_attrs, attr, mask, BMT_NO_APPEND); - return offset; -} - /* * IDL typedef struct { * IDL long user_id; @@ -1523,8 +1484,7 @@ netlogon_dissect_GROUP_MEMBERSHIP(tvbuff_t *tvb, int offset, offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_netlogon_group_rid, NULL); - offset = netlogon_dissect_GROUP_MEMBERSHIP_ATTRIBUTES(tvb, offset, - pinfo, tree, di, drep); + offset = dissect_ndr_nt_SE_GROUP_ATTRIBUTES(tvb, offset, pinfo, tree, di, drep); return offset; } @@ -9494,21 +9454,6 @@ proto_register_dcerpc_netlogon(void) { "Nonce", "netlogon.secchan.nonce", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL }}, - { &hf_netlogon_group_attrs_mandatory, - { "Mandatory", "netlogon.groups.attrs.mandatory", - FT_BOOLEAN, 32, TFS(&group_attrs_mandatory), 0x00000001, - "The group attributes MANDATORY flag", HFILL }}, - - { &hf_netlogon_group_attrs_enabled_by_default, - { "Enabled By Default", "netlogon.groups.attrs.enabled_by_default", - FT_BOOLEAN, 32, TFS(&group_attrs_enabled_by_default), 0x00000002, - "The group attributes ENABLED_BY_DEFAULT flag", HFILL }}, - - { &hf_netlogon_group_attrs_enabled, - { "Enabled", "netlogon.groups.attrs.enabled", - FT_BOOLEAN, 32, TFS(&group_attrs_enabled), 0x00000004, - "The group attributes ENABLED flag", HFILL }}, - { &hf_netlogon_user_flags_extra_sids, { "Extra SIDs", "netlogon.user.flags.extra_sids", FT_BOOLEAN, 32, TFS(&user_flags_extra_sids), 0x00000020,