1
0
mirror of https://github.com/samba-team/samba.git synced 2025-03-02 08:58:33 +03:00

added IDL and test for lsa_OpenSecret()

(This used to be commit dd95cd141dc63f16e14f4c9392529653084b5a2a)
This commit is contained in:
Andrew Tridgell 2004-04-03 17:21:26 +00:00
parent 84d009d52e
commit c582f5cf1d
2 changed files with 31 additions and 2 deletions

View File

@ -401,8 +401,15 @@
NTSTATUS QUERYTRUSTDOM ();
/* Function: 0x1b */
NTSTATUS SETINFOTRUSTDOM ();
/* Function: 0x1c */
NTSTATUS OPENSECRET ();
NTSTATUS lsa_OpenSecret(
[in,ref] policy_handle *handle,
[in] lsa_Name name,
[in] uint32 desired_access,
[out,ref] policy_handle *sec_handle
);
/* Function: 0x1d */
NTSTATUS SETSECRET ();
/* Function: 0x1e */

View File

@ -386,7 +386,9 @@ static BOOL test_CreateSecret(struct dcerpc_pipe *p,
{
NTSTATUS status;
struct lsa_CreateSecret r;
struct policy_handle sec_handle;
struct lsa_OpenSecret r2;
struct policy_handle sec_handle, sec_handle2;
struct lsa_Delete d;
printf("Testing CreateSecret\n");
@ -402,10 +404,30 @@ static BOOL test_CreateSecret(struct dcerpc_pipe *p,
return False;
}
r2.in.handle = handle;
r2.in.desired_access = SEC_RIGHTS_MAXIMUM_ALLOWED;
init_lsa_Name(&r2.in.name, "torturesecret");
r2.out.sec_handle = &sec_handle2;
printf("Testing OpenSecret\n");
status = dcerpc_lsa_OpenSecret(p, mem_ctx, &r2);
if (!NT_STATUS_IS_OK(status)) {
printf("OpenSecret failed - %s\n", nt_errstr(status));
return False;
}
if (!test_Delete(p, mem_ctx, &sec_handle)) {
return False;
}
d.in.handle = &sec_handle2;
status = dcerpc_lsa_Delete(p, mem_ctx, &d);
if (!NT_STATUS_EQUAL(status, NT_STATUS_INVALID_HANDLE)) {
printf("Second delete expected INVALID_HANDLE - %s\n", nt_errstr(status));
return False;
}
return True;
}