svn commit: samba r9156 - in branches/SAMBA_4_0/source: librpc/idl
torture/rpc
tpot at samba.org
tpot at samba.org
Sat Aug 6 00:58:06 GMT 2005
Author: tpot
Date: 2005-08-06 00:58:06 +0000 (Sat, 06 Aug 2005)
New Revision: 9156
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=9156
Log:
Add IDL and test for FlushEventLog() but it always seems to return
NT_STATUS_ACCESS_DENIED.
Modified:
branches/SAMBA_4_0/source/librpc/idl/eventlog.idl
branches/SAMBA_4_0/source/torture/rpc/eventlog.c
Changeset:
Modified: branches/SAMBA_4_0/source/librpc/idl/eventlog.idl
===================================================================
--- branches/SAMBA_4_0/source/librpc/idl/eventlog.idl 2005-08-06 00:47:17 UTC (rev 9155)
+++ branches/SAMBA_4_0/source/librpc/idl/eventlog.idl 2005-08-06 00:58:06 UTC (rev 9156)
@@ -172,5 +172,7 @@
/*****************/
/* Function 0x17 */
- NTSTATUS eventlog_FlushEventLog();
+ NTSTATUS eventlog_FlushEventLog(
+ [in,ref] policy_handle *handle
+ );
}
Modified: branches/SAMBA_4_0/source/torture/rpc/eventlog.c
===================================================================
--- branches/SAMBA_4_0/source/torture/rpc/eventlog.c 2005-08-06 00:47:17 UTC (rev 9155)
+++ branches/SAMBA_4_0/source/torture/rpc/eventlog.c 2005-08-06 00:58:06 UTC (rev 9156)
@@ -31,7 +31,8 @@
name->size = name->length;
}
-static BOOL test_GetNumRecords(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct policy_handle *handle)
+static BOOL test_GetNumRecords(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx,
+ struct policy_handle *handle)
{
NTSTATUS status;
struct eventlog_GetNumRecords r;
@@ -52,7 +53,8 @@
return True;
}
-static BOOL test_ReadEventLog(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct policy_handle *handle, uint32_t offset)
+static BOOL test_ReadEventLog(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx,
+ struct policy_handle *handle, uint32_t offset)
{
NTSTATUS status;
struct eventlog_ReadEventLogW r;
@@ -91,7 +93,7 @@
}
static BOOL test_CloseEventLog(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx,
- struct policy_handle *handle)
+ struct policy_handle *handle)
{
NTSTATUS status;
struct eventlog_CloseEventLog r;
@@ -101,6 +103,7 @@
printf("Testing CloseEventLog\n");
status = dcerpc_eventlog_CloseEventLog(p, mem_ctx, &r);
+
if (!NT_STATUS_IS_OK(status)) {
printf("CloseEventLog failed - %s\n", nt_errstr(status));
return False;
@@ -109,6 +112,28 @@
return True;
}
+static BOOL test_FlushEventLog(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx,
+ struct policy_handle *handle)
+{
+ NTSTATUS status;
+ struct eventlog_FlushEventLog r;
+
+ r.in.handle = handle;
+
+ printf("Testing FlushEventLog\n");
+
+ status = dcerpc_eventlog_FlushEventLog(p, mem_ctx, &r);
+
+ /* Huh? Does this RPC always return access denied? */
+
+ if (!NT_STATUS_EQUAL(status, NT_STATUS_ACCESS_DENIED)) {
+ printf("FlushEventLog failed - %s\n", nt_errstr(status));
+ return False;
+ }
+
+ return True;
+}
+
static BOOL test_ClearEventLog(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx,
struct policy_handle *handle)
{
@@ -121,6 +146,7 @@
printf("Testing ClearEventLog\n");
status = dcerpc_eventlog_ClearEventLogW(p, mem_ctx, &r);
+
if (!NT_STATUS_IS_OK(status)) {
printf("ClearEventLog failed - %s\n", nt_errstr(status));
return False;
@@ -129,7 +155,8 @@
return True;
}
-static BOOL test_OpenEventLog(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct policy_handle *handle)
+static BOOL test_OpenEventLog(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx,
+ struct policy_handle *handle)
{
NTSTATUS status;
struct eventlog_OpenEventLogW r;
@@ -164,8 +191,8 @@
BOOL torture_rpc_eventlog(void)
{
- NTSTATUS status;
- struct dcerpc_pipe *p;
+ NTSTATUS status;
+ struct dcerpc_pipe *p;
struct policy_handle handle;
TALLOC_CTX *mem_ctx;
BOOL ret = True;
@@ -177,6 +204,7 @@
DCERPC_EVENTLOG_NAME,
DCERPC_EVENTLOG_UUID,
DCERPC_EVENTLOG_VERSION);
+
if (!NT_STATUS_IS_OK(status)) {
talloc_free(mem_ctx);
return False;
@@ -188,15 +216,17 @@
}
#if 0
- test_ClearEventLog(p, mem_ctx, &handle); /* Destructive test */
+ ret &= test_ClearEventLog(p, mem_ctx, &handle); /* Destructive test */
#endif
- test_GetNumRecords(p, mem_ctx, &handle);
+ ret &= test_GetNumRecords(p, mem_ctx, &handle);
- test_ReadEventLog(p, mem_ctx, &handle, 0);
+ ret &= test_ReadEventLog(p, mem_ctx, &handle, 0);
- test_CloseEventLog(p, mem_ctx, &handle);
+ ret &= test_FlushEventLog(p, mem_ctx, &handle);
+ ret &= test_CloseEventLog(p, mem_ctx, &handle);
+
talloc_free(mem_ctx);
return ret;
More information about the samba-cvs
mailing list