aboutsummaryrefslogtreecommitdiffstats
path: root/packet-dcerpc-samr.h
blob: fbb4e9b66f1d5985cdbb9f8cab8fecaf4f92286a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
/* packet-dcerpc-samr.h
 * Routines for SMB \PIPE\samr packet disassembly
 * Copyright 2001, Tim Potter <tpot@samba.org>
 *
 * $Id: packet-dcerpc-samr.h,v 1.9 2003/02/21 02:04:31 tpot Exp $
 *
 * Ethereal - Network traffic analyzer
 * By Gerald Combs <gerald@ethereal.com>
 * Copyright 1998 Gerald Combs
 *
 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU General Public License
 * as published by the Free Software Foundation; either version 2
 * of the License, or (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 */

#ifndef __PACKET_DCERPC_SAMR_H
#define __PACKET_DCERPC_SAMR_H

/* Functions available on the SAMR pipe.  From Samba, include/rpc_samr.h */

#define SAMR_CONNECT                0x00
#define SAMR_CLOSE_HND              0x01
#define SAMR_SET_SEC_OBJECT         0x02
#define SAMR_QUERY_SEC_OBJECT       0x03
#define SAMR_SHUTDOWN_SAM_SERVER    0x04
#define SAMR_LOOKUP_DOMAIN          0x05
#define SAMR_ENUM_DOMAINS           0x06
#define SAMR_OPEN_DOMAIN            0x07
#define SAMR_QUERY_DOMAIN_INFO      0x08
#define SAMR_SET_DOMAIN_INFO        0x09
#define SAMR_CREATE_DOM_GROUP       0x0a
#define SAMR_ENUM_DOM_GROUPS   0x0b
#define SAMR_CREATE_USER_IN_DOMAIN 0x0c
#define SAMR_ENUM_DOM_USERS    0x0d
#define SAMR_CREATE_DOM_ALIAS  0x0e
#define SAMR_ENUM_DOM_ALIASES  0x0f
#define SAMR_GET_ALIAS_MEMBERSHIP 0x10
#define SAMR_LOOKUP_NAMES      0x11
#define SAMR_LOOKUP_RIDS       0x12
#define SAMR_OPEN_GROUP        0x13
#define SAMR_QUERY_GROUPINFO   0x14
#define SAMR_SET_GROUPINFO     0x15
#define SAMR_ADD_GROUPMEM      0x16
#define SAMR_DELETE_DOM_GROUP  0x17
#define SAMR_DEL_GROUPMEM      0x18
#define SAMR_QUERY_GROUPMEM    0x19
#define SAMR_SET_MEMBER_ATTRIBUTES_OF_GROUP        0x1a
#define SAMR_OPEN_ALIAS        0x1b
#define SAMR_QUERY_ALIASINFO   0x1c
#define SAMR_SET_ALIASINFO     0x1d
#define SAMR_DELETE_DOM_ALIAS  0x1e
#define SAMR_ADD_ALIASMEM      0x1f
#define SAMR_DEL_ALIASMEM      0x20
#define SAMR_GET_MEMBERS_IN_ALIAS   0x21
#define SAMR_OPEN_USER         0x22
#define SAMR_DELETE_DOM_USER   0x23
#define SAMR_QUERY_USERINFO    0x24
#define SAMR_SET_USERINFO2     0x25
#define SAMR_CHANGE_PASSWORD_USER  0x26
#define SAMR_GET_GROUPS_FOR_USER  0x27
#define SAMR_QUERY_DISPINFO    0x28
#define SAMR_GET_DISPLAY_ENUMERATION_INDEX        0x29
#define SAMR_TEST_PRIVATE_FUNCTIONS_DOMAIN        0x2a
#define SAMR_TEST_PRIVATE_FUNCTIONS_USER        0x2b
#define SAMR_GET_USRDOM_PWINFO 0x2c
#define SAMR_REMOVE_MEMBER_FROM_FOREIGN_DOMAIN     0x2d
#define SAMR_QUERY_INFORMATION_DOMAIN2    0x2e
#define SAMR_UNKNOWN_2f        0x2f
#define SAMR_QUERY_DISPINFO2   0x30
#define SAMR_GET_DISPLAY_ENUMERATION_INDEX2        0x31
#define SAMR_CREATE_USER2_IN_DOMAIN       0x32
#define SAMR_QUERY_DISPINFO3   0x33
#define SAMR_ADD_MULTIPLE_MEMBERS_TO_ALIAS 0x34
#define SAMR_REMOVE_MULTIPLE_MEMBERS_FROM_ALIAS     0x35
#define SAMR_OEM_CHANGE_PASSWORD_USER2        0x36
#define SAMR_UNICODE_CHANGE_PASSWORD_USER2    0x37
#define SAMR_GET_DOM_PWINFO    0x38
#define SAMR_CONNECT2          0x39
#define SAMR_SET_USERINFO      0x3A
#define SAMR_UNKNOWN_3B	       0x3B
#define SAMR_UNKNOWN_3C	       0x3C
#define SAMR_CONNECT3          0x3D
#define SAMR_CONNECT4          0x3E

/* Specific access rights */

#define SAMR_ACCESS_UNKNOWN_1        0x00000001
#define SAMR_ACCESS_SHUTDOWN_SERVER  0x00000002
#define SAMR_ACCESS_UNKNOWN_4        0x00000004
#define SAMR_ACCESS_UNKNOWN_8        0x00000008
#define SAMR_ACCESS_ENUM_DOMAINS     0x00000010
#define SAMR_ACCESS_OPEN_DOMAIN      0x00000020

#define DOMAIN_ACCESS_LOOKUP_INFO_1  0x00000001
#define DOMAIN_ACCESS_SET_INFO_1     0x00000002
#define DOMAIN_ACCESS_LOOKUP_INFO_2  0x00000004
#define DOMAIN_ACCESS_SET_INFO_2     0x00000008
#define DOMAIN_ACCESS_CREATE_USER    0x00000010
#define DOMAIN_ACCESS_CREATE_GROUP   0x00000020
#define DOMAIN_ACCESS_CREATE_ALIAS   0x00000040
#define DOMAIN_ACCESS_LOOKUP_ALIAS   0x00000080
#define DOMAIN_ACCESS_ENUM_ACCOUNTS  0x00000100
#define DOMAIN_ACCESS_OPEN_ACCOUNT   0x00000200
#define DOMAIN_ACCESS_SET_INFO_3     0x00000400

#define USER_ACCESS_GET_NAME_ETC     0x00000001
#define USER_ACCESS_GET_LOCALE       0x00000002
#define USER_ACCESS_SET_LOC_COM      0x00000004
#define USER_ACCESS_GET_LOGONINFO    0x00000008
#define USER_ACCESS_UNKNOWN_10       0x00000010
#define USER_ACCESS_SET_ATTRIBUTES   0x00000020
#define USER_ACCESS_CHANGE_PASSWORD  0x00000040
#define USER_ACCESS_SET_PASSWORD     0x00000080
#define USER_ACCESS_GET_GROUPS       0x00000100
#define USER_ACCESS_UNKNOWN_200      0x00000200
#define USER_ACCESS_UNKNOWN_400      0x00000400

#define ALIAS_ACCESS_ADD_MEMBER      0x00000001
#define ALIAS_ACCESS_REMOVE_MEMBER   0x00000002
#define ALIAS_ACCESS_GET_MEMBERS     0x00000004
#define ALIAS_ACCESS_LOOKUP_INFO     0x00000008
#define ALIAS_ACCESS_SET_INFO        0x00000010

#define GROUP_ACCESS_LOOKUP_INFO     0x00000001
#define GROUP_ACCESS_SET_INFO        0x00000002
#define GROUP_ACCESS_ADD_MEMBER      0x00000004
#define GROUP_ACCESS_REMOVE_MEMBER   0x00000008
#define GROUP_ACCESS_GET_MEMBERS     0x00000010

#endif /* packet-dcerpc-samr.h */