Trying to avoid defining new SAMR acct creation flags when we already have them with...
authorGünther Deschner <gd@samba.org>
Fri, 25 Jan 2008 00:00:51 +0000 (01:00 +0100)
committerGünther Deschner <gd@samba.org>
Fri, 25 Jan 2008 00:04:30 +0000 (01:04 +0100)
names. Matt, Jeremy, please check.

Guenther
(This used to be commit d4a9e46edf7336f673c001c559af96eb0ecf9f6f)

source3/include/rpc_samr.h
source3/libnet/libnet_join.c
source3/rpcclient/cmd_samr.c
source3/utils/net_domain.c
source3/utils/net_rpc.c
source3/utils/net_rpc_join.c

index 5ddb877b9074519280906a1ab994d815145c5824..9f4645b69188b81418e62a51a796190d68646084 100644 (file)
@@ -145,31 +145,6 @@ SamrTestPrivateFunctionsUser
 #define SAMR_CHGPASSWD_USER3   0x3F
 #define SAMR_CONNECT5          0x40
 
-/* SAMR account creation flags/permissions */
-#define SAMR_USER_GETNAME               0x1
-#define SAMR_USER_GETLOCALE             0x2
-#define SAMR_USER_GETLOCCOM             0x4
-#define SAMR_USER_GETLOGONINFO          0x8
-#define SAMR_USER_GETATTR               0x10
-#define SAMR_USER_SETATTR               0x20
-#define SAMR_USER_CHPASS                0x40
-#define SAMR_USER_SETPASS               0x80
-#define SAMR_USER_GETGROUPS             0x100
-#define SAMR_USER_GETMEMBERSHIP         0x200
-#define SAMR_USER_CHMEMBERSHIP          0x400
-#define SAMR_STANDARD_DELETE            0x10000
-#define SAMR_STANDARD_READCTRL          0x20000
-#define SAMR_STANDARD_WRITEDAC          0x40000
-#define SAMR_STANDARD_WRITEOWNER        0x80000
-#define SAMR_STANDARD_SYNC              0x100000
-#define SAMR_GENERIC_ACCESSSACL         0x800000
-#define SAMR_GENERIC_MAXALLOWED         0x2000000
-#define SAMR_GENERIC_ALL                0x10000000
-#define SAMR_GENERIC_EXECUTE            0x20000000
-#define SAMR_GENERIC_WRITE              0x40000000
-#define SAMR_GENERIC_READ               0x80000000
-
-
 typedef struct logon_hours_info
 {
        uint32 max_len; /* normally 1260 bytes */
index 538cca7994c283f37f068da9dbe3a5078dc1ded5..f83e0fbb6007ff8890187bc27259acc47003475a 100644 (file)
@@ -684,10 +684,12 @@ static NTSTATUS libnet_join_joindomain_rpc(TALLOC_CTX *mem_ctx,
        const_acct_name = acct_name;
 
        if (r->in.join_flags & WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE) {
-               uint32 acct_flags = SAMR_GENERIC_READ | SAMR_GENERIC_WRITE |
-                       SAMR_GENERIC_EXECUTE | SAMR_STANDARD_WRITEDAC |
-                       SAMR_STANDARD_DELETE | SAMR_USER_SETPASS |
-                       SAMR_USER_GETATTR | SAMR_USER_SETATTR;
+               uint32_t acct_flags =
+                       SEC_GENERIC_READ | SEC_GENERIC_WRITE | SEC_GENERIC_EXECUTE |
+                       SEC_STD_WRITE_DAC | SEC_STD_DELETE |
+                       SAMR_USER_ACCESS_SET_PASSWORD |
+                       SAMR_USER_ACCESS_GET_ATTRIBUTES |
+                       SAMR_USER_ACCESS_SET_ATTRIBUTES;
 
                status = rpccli_samr_create_dom_user(pipe_hnd, mem_ctx,
                                                     &domain_pol,
index 5b42c6bc0e0dd4ccf26d7be3cf4479360163b5ed..1bb13f3fe089ac4ad34776839ae4fdaeaf942aba 100644 (file)
@@ -1483,10 +1483,11 @@ static NTSTATUS cmd_samr_create_dom_user(struct rpc_pipe_client *cli,
        /* Create domain user */
 
        acb_info = ACB_NORMAL;
-       acct_flags = SAMR_GENERIC_READ | SAMR_GENERIC_WRITE |
-                       SAMR_GENERIC_EXECUTE | SAMR_STANDARD_WRITEDAC |
-                       SAMR_STANDARD_DELETE | SAMR_USER_SETPASS |
-                       SAMR_USER_GETATTR | SAMR_USER_SETATTR;
+       acct_flags = SEC_GENERIC_READ | SEC_GENERIC_WRITE | SEC_GENERIC_EXECUTE |
+                    SEC_STD_WRITE_DAC | SEC_STD_DELETE |
+                    SAMR_USER_ACCESS_SET_PASSWORD |
+                    SAMR_USER_ACCESS_GET_ATTRIBUTES |
+                    SAMR_USER_ACCESS_SET_ATTRIBUTES;
 
        result = rpccli_samr_create_dom_user(cli, mem_ctx, &domain_pol,
                                          acct_name, acb_info, acct_flags,
index a98f090e624c437751d705923613b3405bb627d8..1c34a3b60ef812a568561c498c0f70d7dbbd9c26 100644 (file)
@@ -245,12 +245,14 @@ NTSTATUS netdom_join_domain( TALLOC_CTX *mem_ctx, struct cli_state *cli,
        const_acct_name = acct_name;
 
        /* Don't try to set any acb_info flags other than ACB_WSTRUST */
+       acct_flags = SEC_GENERIC_READ | SEC_GENERIC_WRITE | SEC_GENERIC_EXECUTE |
+                    SEC_STD_WRITE_DAC | SEC_STD_DELETE |
+                    SAMR_USER_ACCESS_SET_PASSWORD |
+                    SAMR_USER_ACCESS_GET_ATTRIBUTES |
+                    SAMR_USER_ACCESS_SET_ATTRIBUTES;
 
-        acct_flags = SAMR_GENERIC_READ | SAMR_GENERIC_WRITE |
-                SAMR_GENERIC_EXECUTE | SAMR_STANDARD_WRITEDAC |
-                SAMR_STANDARD_DELETE | SAMR_USER_SETPASS | SAMR_USER_GETATTR |
-                SAMR_USER_SETATTR;
        DEBUG(10, ("Creating account with flags: %d\n",acct_flags));
+
        status = rpccli_samr_create_dom_user(pipe_hnd, mem_ctx, &domain_pol,
                        acct_name, acb_info, acct_flags, &user_pol, &user_rid);
 
index b08a93627de4cb7b0f417df21d4406113ea7fd08..46fbcfb8cad291bf2c80cb300a4af35cf92e4e64 100644 (file)
@@ -618,10 +618,11 @@ static NTSTATUS rpc_user_add_internals(const DOM_SID *domain_sid,
        /* Create domain user */
 
        acb_info = ACB_NORMAL;
-       acct_flags = SAMR_GENERIC_READ | SAMR_GENERIC_WRITE |
-               SAMR_GENERIC_EXECUTE | SAMR_STANDARD_WRITEDAC |
-               SAMR_STANDARD_DELETE | SAMR_USER_SETPASS | SAMR_USER_GETATTR |
-               SAMR_USER_SETATTR;
+       acct_flags = SEC_GENERIC_READ | SEC_GENERIC_WRITE | SEC_GENERIC_EXECUTE |
+                    SEC_STD_WRITE_DAC | SEC_STD_DELETE |
+                    SAMR_USER_ACCESS_SET_PASSWORD |
+                    SAMR_USER_ACCESS_GET_ATTRIBUTES |
+                    SAMR_USER_ACCESS_SET_ATTRIBUTES;
 
        result = rpccli_samr_create_dom_user(pipe_hnd, mem_ctx, &domain_pol,
                                          acct_name, acb_info, acct_flags,
@@ -5378,11 +5379,12 @@ static NTSTATUS rpc_trustdom_add_internals(const DOM_SID *domain_sid,
        }
 
        /* Create trusting domain's account */
-       acb_info = ACB_NORMAL; 
-        acct_flags = SAMR_GENERIC_READ | SAMR_GENERIC_WRITE |
-                SAMR_GENERIC_EXECUTE | SAMR_STANDARD_WRITEDAC |
-                SAMR_STANDARD_DELETE | SAMR_USER_SETPASS | SAMR_USER_GETATTR |
-                SAMR_USER_SETATTR;
+       acb_info = ACB_NORMAL;
+       acct_flags = SEC_GENERIC_READ | SEC_GENERIC_WRITE | SEC_GENERIC_EXECUTE |
+                    SEC_STD_WRITE_DAC | SEC_STD_DELETE |
+                    SAMR_USER_ACCESS_SET_PASSWORD |
+                    SAMR_USER_ACCESS_GET_ATTRIBUTES |
+                    SAMR_USER_ACCESS_SET_ATTRIBUTES;
 
        result = rpccli_samr_create_dom_user(pipe_hnd, mem_ctx, &domain_pol,
                                          acct_name, acb_info, acct_flags,
index 5c3fb2b2ff6a257be55fd7ca37d1792f6c3ddb24..271219938eaeb8945e66968658d9cdde2edf8431 100644 (file)
@@ -250,11 +250,14 @@ int net_rpc_join_newstyle(int argc, const char **argv)
        strlower_m(acct_name);
        const_acct_name = acct_name;
 
-        acct_flags = SAMR_GENERIC_READ | SAMR_GENERIC_WRITE |
-                SAMR_GENERIC_EXECUTE | SAMR_STANDARD_WRITEDAC |
-                SAMR_STANDARD_DELETE | SAMR_USER_SETPASS | SAMR_USER_GETATTR |
-                SAMR_USER_SETATTR;
+       acct_flags = SEC_GENERIC_READ | SEC_GENERIC_WRITE | SEC_GENERIC_EXECUTE |
+                    SEC_STD_WRITE_DAC | SEC_STD_DELETE |
+                    SAMR_USER_ACCESS_SET_PASSWORD |
+                    SAMR_USER_ACCESS_GET_ATTRIBUTES |
+                    SAMR_USER_ACCESS_SET_ATTRIBUTES;
+
        DEBUG(10, ("Creating account with flags: %d\n",acct_flags));
+
        result = rpccli_samr_create_dom_user(pipe_hnd, mem_ctx, &domain_pol,
                                          acct_name, acb_info,
                                          acct_flags, &user_pol,