From a20352959e0474e10dc533f7ecb876cf7a4c8723 Mon Sep 17 00:00:00 2001 From: Tim Potter Date: Fri, 21 Nov 2003 03:07:02 +0000 Subject: More work on eventlog - still doesn't work. (-: (This used to be commit 9109cb832a3807b3eee9e52c8c533e2bf0c8007a) --- source4/librpc/idl/eventlog.idl | 24 +++++++++++++++++++----- source4/torture/rpc/eventlog.c | 24 +++++++++++++++++++----- 2 files changed, 38 insertions(+), 10 deletions(-) (limited to 'source4') diff --git a/source4/librpc/idl/eventlog.idl b/source4/librpc/idl/eventlog.idl index 574868ab94..a8eba4ae16 100644 --- a/source4/librpc/idl/eventlog.idl +++ b/source4/librpc/idl/eventlog.idl @@ -1,17 +1,31 @@ /* eventlog interface definition */ -[ uuid(82273fdc-e32a-17c3-3f78-827929dc23ea), - version(1.0), +[ uuid(82273fdc-e32a-18c3-3f78-827929dc23ea), + version(0.0), pointer_default(unique) ] interface eventlog { + typedef struct { + uint16 unknown0; + uint16 unknown1; + } eventlog_OpenUnknown0; + + typedef struct { + [value(2*strlen_m(r->name))] uint16 name_len; + [value(r->name_len)] uint16 name_size; + unistr_noterm *name; + } eventlog_String; + /******************/ /* Function: 0x00 */ NTSTATUS eventlog_OpenEventLog( - [in] unistr *servername, - [in] unistr *sourcename, - [out,ref] policy_handle *handle + [in] eventlog_OpenUnknown0 *unknown0, + [in] eventlog_String source, + [in] eventlog_String unknown1, + [in] uint32 unknown2, + [in] uint32 unknown3, + [out,ref] policy_handle *handle ); /******************/ diff --git a/source4/torture/rpc/eventlog.c b/source4/torture/rpc/eventlog.c index 8f357e7987..14b091a0c3 100644 --- a/source4/torture/rpc/eventlog.c +++ b/source4/torture/rpc/eventlog.c @@ -21,6 +21,13 @@ #include "includes.h" +static void init_eventlog_String(struct eventlog_String *name, const char *s) +{ + name->name = s; + name->name_len = 2*strlen_m(s); + name->name_size = name->name_len; +} + BOOL test_CloseEventLog(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct policy_handle *handle) { @@ -44,12 +51,19 @@ static BOOL test_OpenEventLog(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx) { NTSTATUS status; struct eventlog_OpenEventLog r; + struct eventlog_OpenUnknown0 unknown0; struct policy_handle handle; printf("\ntesting OpenEventLog\n"); - r.in.servername = dcerpc_server_name(p); - r.out.handle = &handle; + unknown0.unknown0 = 0x005c; + unknown0.unknown1 = 0x0001; + + r.in.unknown0 = &unknown0; + init_eventlog_String(&r.in.source, "system"); + init_eventlog_String(&r.in.unknown1, NULL); + r.in.unknown2 = 0x00000001; + r.in.unknown3 = 0x00000001; status = dcerpc_eventlog_OpenEventLog(p, mem_ctx, &r); @@ -74,9 +88,9 @@ BOOL torture_rpc_eventlog(int dummy) mem_ctx = talloc_init("torture_rpc_atsvc"); status = torture_rpc_connection(&p, - DCERPC_ATSVC_NAME, - DCERPC_ATSVC_UUID, - DCERPC_ATSVC_VERSION); + DCERPC_EVENTLOG_NAME, + DCERPC_EVENTLOG_UUID, + DCERPC_EVENTLOG_VERSION); if (!NT_STATUS_IS_OK(status)) { return False; } -- cgit