aboutsummaryrefslogtreecommitdiffstats
path: root/packet-dcerpc-samr.c
diff options
context:
space:
mode:
authorTim Potter <tpot@samba.org>2002-06-24 00:03:18 +0000
committerTim Potter <tpot@samba.org>2002-06-24 00:03:18 +0000
commit6d6dce305d497a5d7267456d9465a7b44a6f12e9 (patch)
treef263cc80f6ca77b7160544442eeff3d5e2dd5377 /packet-dcerpc-samr.c
parent2cf14082d633ccb8c2ffc58313e86ced29282632 (diff)
Change each DCERPC dissector to pass in a hf value on initialisation
for a value_string that corresponds to that dissectors opnums. Pass in -1 if no such table is available. svn path=/trunk/; revision=5749
Diffstat (limited to 'packet-dcerpc-samr.c')
-rw-r--r--packet-dcerpc-samr.c75
1 files changed, 73 insertions, 2 deletions
diff --git a/packet-dcerpc-samr.c b/packet-dcerpc-samr.c
index 153cd94f34..c846281064 100644
--- a/packet-dcerpc-samr.c
+++ b/packet-dcerpc-samr.c
@@ -3,7 +3,7 @@
* Copyright 2001, Tim Potter <tpot@samba.org>
* 2002 Added all command dissectors Ronnie Sahlberg
*
- * $Id: packet-dcerpc-samr.c,v 1.47 2002/05/31 00:31:13 tpot Exp $
+ * $Id: packet-dcerpc-samr.c,v 1.48 2002/06/24 00:03:17 tpot Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@@ -40,6 +40,7 @@
static int proto_dcerpc_samr = -1;
+static int hf_samr_opnum = -1;
static int hf_samr_hnd = -1;
static int hf_samr_group = -1;
static int hf_samr_rid = -1;
@@ -4290,10 +4291,80 @@ static dcerpc_sub_dissector dcerpc_samr_dissectors[] = {
{0, NULL, NULL, NULL }
};
+static const value_string samr_opnum_vals[] = {
+ { SAMR_CONNECT_ANON, "ConnectAnonymous" },
+ { SAMR_CLOSE_HND, "Close" },
+ { SAMR_SET_SEC_OBJECT, "SetSecObject" },
+ { SAMR_QUERY_SEC_OBJECT, "QuerySecObject" },
+ { SAMR_SHUTDOWN_SAM_SERVER, "ShutdownSamServer" },
+ { SAMR_LOOKUP_DOMAIN, "LookupDomain" },
+ { SAMR_ENUM_DOMAINS, "EnumDomains" },
+ { SAMR_OPEN_DOMAIN, "OpenDomain" },
+ { SAMR_QUERY_DOMAIN_INFO, "QueryDomainInfo" },
+ { SAMR_SET_DOMAIN_INFO, "SetDomainInfo" },
+ { SAMR_CREATE_DOM_GROUP, "CreateGroup" },
+ { SAMR_ENUM_DOM_GROUPS, "EnumDomainGroups" },
+ { SAMR_CREATE_USER_IN_DOMAIN, "CreateUser" },
+ { SAMR_ENUM_DOM_USERS, "EnumDomainUsers" },
+ { SAMR_CREATE_DOM_ALIAS, "CreateAlias" },
+ { SAMR_ENUM_DOM_ALIASES, "EnumAlises" },
+ { SAMR_GET_ALIAS_MEMBERSHIP, "GetAliasMem" },
+ { SAMR_LOOKUP_NAMES, "LookupNames" },
+ { SAMR_LOOKUP_RIDS, "LookupRIDs" },
+ { SAMR_OPEN_GROUP, "OpenGroup" },
+ { SAMR_QUERY_GROUPINFO, "QueryGroupInfo" },
+ { SAMR_SET_GROUPINFO, "SetGroupInfo" },
+ { SAMR_ADD_GROUPMEM, "AddGroupMem" },
+ { SAMR_DELETE_DOM_GROUP, "DeleteDomainGroup" },
+ { SAMR_DEL_GROUPMEM, "RemoveGroupMem" },
+ { SAMR_QUERY_GROUPMEM, "QueryGroupMem" },
+ { SAMR_SET_MEMBER_ATTRIBUTES_OF_GROUP, "SetMemberAttrGroup" },
+ { SAMR_OPEN_ALIAS, "OpenAlias" },
+ { SAMR_QUERY_ALIASINFO, "QueryAliasInfo" },
+ { SAMR_SET_ALIASINFO, "SetAliasInfo" },
+ { SAMR_DELETE_DOM_ALIAS, "DeleteAlias" },
+ { SAMR_ADD_ALIASMEM, "AddAliasMem" },
+ { SAMR_DEL_ALIASMEM, "RemoveAliasMem" },
+ { SAMR_GET_MEMBERS_IN_ALIAS, "GetAliasMem" },
+ { SAMR_OPEN_USER, "OpenUser" },
+ { SAMR_DELETE_DOM_USER, "DeleteUser" },
+ { SAMR_QUERY_USERINFO, "QueryUserInfo" },
+ { SAMR_SET_USERINFO2, "SetUserInfo2" },
+ { SAMR_CHANGE_PASSWORD_USER, "ChangePassword" },
+ { SAMR_GET_GROUPS_FOR_USER, "GetGroups" },
+ { SAMR_QUERY_DISPINFO, "QueryDispinfo" },
+ { SAMR_GET_DISPLAY_ENUMERATION_INDEX, "GetDispEnumNDX" },
+ { SAMR_TEST_PRIVATE_FUNCTIONS_DOMAIN, "TestPrivateFnsDomain" },
+ { SAMR_TEST_PRIVATE_FUNCTIONS_USER, "TestPrivateFnsUser" },
+ { SAMR_GET_USRDOM_PWINFO, "GetUserDomPwInfo" },
+ { SAMR_REMOVE_MEMBER_FROM_FOREIGN_DOMAIN, "RemoveMemberForeignDomain" },
+ { SAMR_QUERY_INFORMATION_DOMAIN2, "QueryDomInfo2" },
+ { SAMR_UNKNOWN_2f, "Unknown 0x2f" },
+ { SAMR_QUERY_DISPINFO2, "QueryDispinfo2" },
+ { SAMR_GET_DISPLAY_ENUMERATION_INDEX2, "GetDispEnumNDX2" },
+ { SAMR_CREATE_USER2_IN_DOMAIN, "CreateUser2" },
+ { SAMR_QUERY_DISPINFO3, "QueryDispinfo3" },
+ { SAMR_ADD_MULTIPLE_MEMBERS_TO_ALIAS, "AddAliasMemMultiple" },
+ { SAMR_REMOVE_MULTIPLE_MEMBERS_FROM_ALIAS, "RemoveAliasMemMultiple" },
+ { SAMR_OEM_CHANGE_PASSWORD_USER2, "OEMChangePassword2" },
+ { SAMR_UNICODE_CHANGE_PASSWORD_USER2, "UnicodeChangePassword2" },
+ { SAMR_GET_DOM_PWINFO, "GetDomainPasswordInfo" },
+ { SAMR_CONNECT2, "Connect2" },
+ { SAMR_SET_USERINFO, "SetUserInfo" },
+ { SAMR_UNKNOWN_3B, "Unknown 0x3b" },
+ { SAMR_UNKNOWN_3C, "Unknown 0x3c" },
+ { 0, NULL }
+};
+
void
proto_register_dcerpc_samr(void)
{
static hf_register_info hf[] = {
+
+ { &hf_samr_opnum,
+ { "Operation", "samr.opnum", FT_UINT16, BASE_DEC,
+ VALS(samr_opnum_vals), 0x0, "Operation", HFILL }},
+
{ &hf_samr_hnd,
{ "Context Handle", "samr.hnd", FT_BYTES, BASE_NONE, NULL, 0x0, "", HFILL }},
{ &hf_samr_group,
@@ -4669,5 +4740,5 @@ proto_reg_handoff_dcerpc_samr(void)
/* Register protocol as dcerpc */
dcerpc_init_uuid(proto_dcerpc_samr, ett_dcerpc_samr, &uuid_dcerpc_samr,
- ver_dcerpc_samr, dcerpc_samr_dissectors);
+ ver_dcerpc_samr, dcerpc_samr_dissectors, hf_samr_opnum);
}