Author: hbelusca
Date: Fri Aug 12 17:22:15 2016
New Revision: 72211

URL: http://svn.reactos.org/svn/reactos?rev=72211&view=rev
Log:
[SDK:IDL]: Fix the event log RPC IDL file definitions:
- ElfrChangeNotify takes a IELF_HANDLE handle as its first parameter, not a 
pointer to it.
- Since we already use NT-like types (especially for USHORT variables), do the 
same for the other parameters (DWORD -> ULONG), and also use the Pxxx for 
pointers to xxx.
- Use Windows 2003 maximum size (0x3FFFF) for the event data to be written, 
instead of the Vista+ limit that is much smaller (0xF000). See also revisions 
r72207 and r72209.
CORE-11839 #resolve

Modified:
    trunk/reactos/sdk/include/reactos/idl/eventlogrpc.idl

Modified: trunk/reactos/sdk/include/reactos/idl/eventlogrpc.idl
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/sdk/include/reactos/idl/eventlogrpc.idl?rev=72211&r1=72210&r2=72211&view=diff
==============================================================================
--- trunk/reactos/sdk/include/reactos/idl/eventlogrpc.idl       [iso-8859-1] 
(original)
+++ trunk/reactos/sdk/include/reactos/idl/eventlogrpc.idl       [iso-8859-1] 
Fri Aug 12 17:22:15 2016
@@ -8,7 +8,9 @@
 typedef long NTSTATUS;
 cpp_quote("#endif")
 
-#define MAX_BATCH_BUFF 0x0007FFFF
+#define MAX_STRINGS      0x00000100
+#define MAX_SINGLE_EVENT 0x0003FFFF // On Vista+ this is reduced to 0x0000F000
+#define MAX_BATCH_BUFF   0x0007FFFF
 
 typedef [range(0, MAX_BATCH_BUFF)] unsigned long RULONG;
 typedef struct _RPC_STRING {
@@ -23,8 +25,8 @@
 typedef [handle, unique] LPSTR EVENTLOG_HANDLE_A;
 
 typedef struct _RPC_CLIENT_ID {
-    DWORD UniqueProcess;
-    DWORD UniqueThread;
+    ULONG UniqueProcess;
+    ULONG UniqueThread;
 } RPC_CLIENT_ID, *PRPC_CLIENT_ID;
 
 [
@@ -51,80 +53,80 @@
 
     /* Function 2 */
     NTSTATUS ElfrCloseEL(
-        [in, out] IELF_HANDLE *LogHandle);
+        [in, out] PIELF_HANDLE LogHandle);
 
     /* Function 3 */
     NTSTATUS ElfrDeregisterEventSource(
-        [in, out] IELF_HANDLE *LogHandle);
+        [in, out] PIELF_HANDLE LogHandle);
 
     /* Function 4 */
     NTSTATUS ElfrNumberOfRecords(
         [in] IELF_HANDLE LogHandle,
-        [out] DWORD *NumberOfRecords);
+        [out] PULONG NumberOfRecords);
 
     /* Function 5 */
     NTSTATUS ElfrOldestRecord(
         [in] IELF_HANDLE LogHandle,
-        [out] DWORD *OldestRecordNumber);
+        [out] PULONG OldestRecordNumber);
 
     /* Function 6 */
     NTSTATUS ElfrChangeNotify(
-        [in] IELF_HANDLE *LogHandle,
+        [in] IELF_HANDLE LogHandle,
         [in] RPC_CLIENT_ID ClientId,
-        [in] DWORD Event);
+        [in] ULONG Event);
 
     /* Function 7 */
     NTSTATUS ElfrOpenELW(
         [in, unique] EVENTLOG_HANDLE_W UNCServerName, /* FIXME */
         [in] PRPC_UNICODE_STRING ModuleName,
         [in] PRPC_UNICODE_STRING RegModuleName,
-        [in] DWORD MajorVersion,
-        [in] DWORD MinorVersion,
-        [out] IELF_HANDLE* LogHandle);
+        [in] ULONG MajorVersion,
+        [in] ULONG MinorVersion,
+        [out] PIELF_HANDLE LogHandle);
 
     /* Function 8 */
     NTSTATUS ElfrRegisterEventSourceW(
         [in, unique] EVENTLOG_HANDLE_W UNCServerName, /* FIXME */
         [in] PRPC_UNICODE_STRING ModuleName,
         [in] PRPC_UNICODE_STRING RegModuleName,
-        [in] DWORD MajorVersion,
-        [in] DWORD MinorVersion,
-        [out] IELF_HANDLE* LogHandle);
+        [in] ULONG MajorVersion,
+        [in] ULONG MinorVersion,
+        [out] PIELF_HANDLE LogHandle);
 
     /* Function 9 */
     NTSTATUS ElfrOpenBELW(
         [in, unique] EVENTLOG_HANDLE_W UNCServerName, /* FIXME */
         [in] PRPC_UNICODE_STRING BackupFileName,
-        [in] DWORD MajorVersion,
-        [in] DWORD MinorVersion,
-        [out] IELF_HANDLE* LogHandle);
+        [in] ULONG MajorVersion,
+        [in] ULONG MinorVersion,
+        [out] PIELF_HANDLE LogHandle);
 
     /* Function 10 */
     NTSTATUS ElfrReadELW(
         [in] IELF_HANDLE LogHandle,
-        [in] DWORD ReadFlags,
-        [in] DWORD RecordOffset,
+        [in] ULONG ReadFlags,
+        [in] ULONG RecordOffset,
         [in] RULONG NumberOfBytesToRead,
-        [out, size_is(NumberOfBytesToRead)] BYTE *Buffer,
-        [out] DWORD *NumberOfBytesRead,
-        [out] DWORD *MinNumberOfBytesNeeded);
+        [out, size_is(NumberOfBytesToRead)] PBYTE Buffer,
+        [out] PULONG NumberOfBytesRead,
+        [out] PULONG MinNumberOfBytesNeeded);
 
     /* Function 11 */
     NTSTATUS ElfrReportEventW(
         [in] IELF_HANDLE LogHandle,
-        [in] DWORD Time,
+        [in] ULONG Time,
         [in] USHORT EventType,
         [in] USHORT EventCategory,
-        [in] DWORD EventID,
-        [in/*, max_is(256)*/] USHORT NumStrings,
-        [in, range(0, 61440)] DWORD DataSize,
+        [in] ULONG EventID,
+        [in, range(0, MAX_STRINGS)] USHORT NumStrings,
+        [in, range(0, MAX_SINGLE_EVENT)] ULONG DataSize,
         [in] PRPC_UNICODE_STRING ComputerName,
         [in, unique] PRPC_SID UserSID,
         [in, size_is(NumStrings), unique] PRPC_UNICODE_STRING Strings[*],
-        [in, size_is(DataSize), unique] BYTE *Data,
+        [in, size_is(DataSize), unique] PBYTE Data,
         [in] USHORT Flags,
-        [in, out, unique] DWORD *RecordNumber,
-        [in, out, unique] DWORD *TimeWritten);
+        [in, out, unique] PULONG RecordNumber,
+        [in, out, unique] PULONG TimeWritten);
 
     /* Function 12 */
     NTSTATUS ElfrClearELFA(
@@ -141,53 +143,53 @@
         [in, unique] EVENTLOG_HANDLE_A UNCServerName, /* FIXME */
         [in] PRPC_STRING ModuleName,
         [in] PRPC_STRING RegModuleName,
-        [in] DWORD MajorVersion,
-        [in] DWORD MinorVersion,
-        [out] IELF_HANDLE* LogHandle);
+        [in] ULONG MajorVersion,
+        [in] ULONG MinorVersion,
+        [out] PIELF_HANDLE LogHandle);
 
     /* Function 15 */
     NTSTATUS ElfrRegisterEventSourceA(
         [in, unique] EVENTLOG_HANDLE_A UNCServerName, /* FIXME */
         [in] PRPC_STRING ModuleName,
         [in] PRPC_STRING RegModuleName,
-        [in] DWORD MajorVersion,
-        [in] DWORD MinorVersion,
-        [out] IELF_HANDLE* LogHandle);
+        [in] ULONG MajorVersion,
+        [in] ULONG MinorVersion,
+        [out] PIELF_HANDLE LogHandle);
 
     /* Function 16 */
     NTSTATUS ElfrOpenBELA(
         [in, unique] EVENTLOG_HANDLE_A UNCServerName, /* FIXME */
         [in] PRPC_STRING BackupFileName,
-        [in] DWORD MajorVersion,
-        [in] DWORD MinorVersion,
-        [out] IELF_HANDLE* LogHandle);
+        [in] ULONG MajorVersion,
+        [in] ULONG MinorVersion,
+        [out] PIELF_HANDLE LogHandle);
 
     /* Function 17 */
     NTSTATUS ElfrReadELA(
         [in] IELF_HANDLE LogHandle,
-        [in] DWORD ReadFlags,
-        [in] DWORD RecordOffset,
+        [in] ULONG ReadFlags,
+        [in] ULONG RecordOffset,
         [in] RULONG NumberOfBytesToRead,
-        [out, size_is(NumberOfBytesToRead)] BYTE *Buffer,
-        [out] DWORD *NumberOfBytesRead,
-        [out] DWORD *MinNumberOfBytesNeeded);
+        [out, size_is(NumberOfBytesToRead)] PBYTE Buffer,
+        [out] PULONG NumberOfBytesRead,
+        [out] PULONG MinNumberOfBytesNeeded);
 
     /* Function 18 */
     NTSTATUS ElfrReportEventA(
         [in] IELF_HANDLE LogHandle,
-        [in] DWORD Time,
+        [in] ULONG Time,
         [in] USHORT EventType,
         [in] USHORT EventCategory,
-        [in] DWORD EventID,
-        [in/*, max_is(256)*/] USHORT NumStrings,
-        [in, range(0, 61440)] DWORD DataSize,
+        [in] ULONG EventID,
+        [in, range(0, MAX_STRINGS)] USHORT NumStrings,
+        [in, range(0, MAX_SINGLE_EVENT)] ULONG DataSize,
         [in] PRPC_STRING ComputerName,
         [in, unique] PRPC_SID UserSID,
         [in, size_is(NumStrings), unique] PRPC_STRING Strings[*],
-        [in, size_is(DataSize), unique] BYTE *Data,
+        [in, size_is(DataSize), unique] PBYTE Data,
         [in] USHORT Flags,
-        [in, out, unique] DWORD *RecordNumber,
-        [in, out, unique] DWORD *TimeWritten);
+        [in, out, unique] PULONG RecordNumber,
+        [in, out, unique] PULONG TimeWritten);
 
     /* Function 19 */
     NTSTATUS ElfrRegisterClusterSvc(
@@ -204,10 +206,10 @@
     /* Function 22 */
     NTSTATUS ElfrGetLogInformation(
         [in] IELF_HANDLE LogHandle,
-        [in] DWORD InfoLevel,
-        [out, size_is(cbBufSize)] BYTE *Buffer,
-        [in, range(0, 1024)] DWORD cbBufSize,
-        [out] DWORD *pcbBytesNeeded);
+        [in] ULONG InfoLevel,
+        [out, size_is(cbBufSize)] PBYTE Buffer,
+        [in, range(0, 1024)] ULONG cbBufSize,
+        [out] PULONG pcbBytesNeeded);
 
     /* Function 23 */
     NTSTATUS ElfrFlushEL(
@@ -216,18 +218,18 @@
     /* Function 24 */
     NTSTATUS ElfrReportEventAndSourceW(
         [in] IELF_HANDLE LogHandle,
-        [in] DWORD Time,
+        [in] ULONG Time,
         [in] USHORT EventType,
         [in] USHORT EventCategory,
         [in] ULONG EventID,
         [in] PRPC_UNICODE_STRING SourceName,
-        [in/*, max_is(256)*/] USHORT NumStrings,
-        [in, range(0, 61440)] DWORD DataSize,
+        [in, range(0, MAX_STRINGS)] USHORT NumStrings,
+        [in, range(0, MAX_SINGLE_EVENT)] ULONG DataSize,
         [in] PRPC_UNICODE_STRING ComputerName,
         [in, unique] PRPC_SID UserSID,
         [in, size_is(NumStrings), unique] PRPC_UNICODE_STRING Strings[*],
-        [in, size_is(DataSize), unique] BYTE *Data,
+        [in, size_is(DataSize), unique] PBYTE Data,
         [in] USHORT Flags,
-        [in, out, unique] DWORD *RecordNumber,
-        [in, out, unique] DWORD *TimeWritten);
+        [in, out, unique] PULONG RecordNumber,
+        [in, out, unique] PULONG TimeWritten);
 }


Reply via email to