[SCM] Samba Shared Repository - branch master updated -
release-4-0-0alpha7-1678-g4724fef
Günther Deschner
gd at samba.org
Mon May 18 20:59:33 GMT 2009
The branch, master has been updated
via 4724fef8979c3f0e66cb8e41936af270901093b4 (commit)
from 0a9049be872a0eaf56c1449f8b362b6d91dd781b (commit)
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit 4724fef8979c3f0e66cb8e41936af270901093b4
Author: Günther Deschner <gd at samba.org>
Date: Mon May 18 21:00:29 2009 +0200
s3-lsa: start a very basic implementation of _lsa_DeleteObject().
Certainly not the full story but this gets us closer to pass the
RPC-SAMR-USERS-PRIVILEGES test.
Guenther
-----------------------------------------------------------------------
Summary of changes:
source3/rpc_server/srv_lsa_nt.c | 24 +++++++++++++++++++++++-
1 files changed, 23 insertions(+), 1 deletions(-)
Changeset truncated at 500 lines:
diff --git a/source3/rpc_server/srv_lsa_nt.c b/source3/rpc_server/srv_lsa_nt.c
index fb5117c..7cddb5c 100644
--- a/source3/rpc_server/srv_lsa_nt.c
+++ b/source3/rpc_server/srv_lsa_nt.c
@@ -1290,7 +1290,29 @@ NTSTATUS _lsa_SetSecret(pipes_struct *p, struct lsa_SetSecret *r)
NTSTATUS _lsa_DeleteObject(pipes_struct *p,
struct lsa_DeleteObject *r)
{
- return NT_STATUS_ACCESS_DENIED;
+ NTSTATUS status;
+ struct lsa_info *info = NULL;
+
+ if (!find_policy_by_hnd(p, r->in.handle, (void **)(void *)&info)) {
+ return NT_STATUS_INVALID_HANDLE;
+ }
+
+ /* check to see if the pipe_user is root or a Domain Admin since
+ account_pol.tdb was already opened as root, this is all we have */
+
+ if (p->server_info->utok.uid != sec_initial_uid() &&
+ !nt_token_check_domain_rid(p->server_info->ptok,
+ DOMAIN_GROUP_RID_ADMINS)) {
+ return NT_STATUS_ACCESS_DENIED;
+ }
+
+ status = privilege_delete_account(&info->sid);
+ if (!NT_STATUS_IS_OK(status)) {
+ DEBUG(10,("_lsa_DeleteObject: privilege_delete_account gave: %s\n",
+ nt_errstr(status)));
+ }
+
+ return status;
}
/***************************************************************************
--
Samba Shared Repository
More information about the samba-cvs
mailing list