2 * PROJECT: ReactOS kernel
3 * LICENSE: GPL - See COPYING in the top level directory
4 * FILE: services/eventlog/rpc.c
5 * PURPOSE: Event logging service
6 * COPYRIGHT: Copyright 2005 Saveliy Tretiakov
12 DWORD STDCALL
RpcThreadRoutine(LPVOID lpParameter
)
16 Status
= RpcServerUseProtseqEpW(L
"ncacn_np",
20 if(Status
!= RPC_S_OK
)
22 DPRINT("RpcServerUseProtseqEpW() failed (Status %lx)\n", Status
);
26 Status
= RpcServerRegisterIf(eventlog_ServerIfHandle
, NULL
, NULL
);
28 if(Status
!= RPC_S_OK
)
30 DPRINT("RpcServerRegisterIf() failed (Status %lx)\n", Status
);
34 Status
= RpcServerListen(1, RPC_C_LISTEN_MAX_CALLS_DEFAULT
, FALSE
);
36 if(Status
!= RPC_S_OK
)
38 DPRINT("RpcServerListen() failed (Status %lx)\n", Status
);
45 NTSTATUS
ElfrClearELFW(
46 /* [in] */ LOGHANDLE Handle
,
47 /* [in] */ PUNICODE_STRING BackupName
)
49 DPRINT("UNIMPLEMENTED");
50 return STATUS_NOT_IMPLEMENTED
;
54 NTSTATUS
ElfrBackupELFW(
55 /* [in] */ LOGHANDLE Handle
,
56 /* [in] */ PUNICODE_STRING BackupName
)
58 DPRINT("UNIMPLEMENTED");
59 return STATUS_NOT_IMPLEMENTED
;
65 /* [out][in] */ PLOGHANDLE Handle
)
67 DPRINT("UNIMPLEMENTED");
68 return STATUS_NOT_IMPLEMENTED
;
73 NTSTATUS
ElfrDeregisterEventSource(
74 /* [out][in] */ PLOGHANDLE Handle
)
76 DPRINT("UNIMPLEMENTED");
77 return STATUS_NOT_IMPLEMENTED
;
82 NTSTATUS
ElfrNumberOfRecords(
83 /* [in] */ LOGHANDLE Handle
,
84 /* [out] */ long __RPC_FAR
*NumberOfRecords
)
86 DPRINT("UNIMPLEMENTED");
87 return STATUS_NOT_IMPLEMENTED
;
92 NTSTATUS
ElfrOldestRecord(
93 /* [in] */ LOGHANDLE LogHandle
,
94 /* [out] */ long __RPC_FAR
*OldestRecNumber
)
96 DPRINT("EventLogGetOldestRec UNIMPLEMENTED\n");
97 return STATUS_NOT_IMPLEMENTED
;
102 NTSTATUS
ElfrChangeNotify( void)
104 DPRINT("EventLogChangeNotify UNIMPLEMENTED\n");
105 return STATUS_NOT_IMPLEMENTED
;
110 NTSTATUS
ElfrOpenELW(
111 /* [unique][in] */ LPWSTR ServerName
,
112 /* [in] */ PUNICODE_STRING FileName
,
113 /* [in] */ PUNICODE_STRING NullStr
,
114 /* [in] */ long MajorVer
,
115 /* [in] */ long MinorVer
,
116 /* [out] */ PLOGHANDLE Handle
)
118 DPRINT("EventLogOpenW UNIMPLEMENTED\n");
119 return STATUS_NOT_IMPLEMENTED
;
124 NTSTATUS
ElfrRegisterEventSourceA(
125 /* [unique][in] */ LPSTR ServerName
,
126 /* [in] */ PANSI_STRING LogName
,
127 /* [in] */ PANSI_STRING NullStr
,
128 /* [in] */ long MajorVer
,
129 /* [in] */ long MinorVer
,
130 /* [out] */ PLOGHANDLE Handle
)
132 DPRINT("EventLogRegSrcW UNIMPLEMENTED\n");
133 return STATUS_NOT_IMPLEMENTED
;
138 NTSTATUS
ElfrOpenBELW(
139 /* [unique][in] */ LPWSTR ServerName
,
140 /* [in] */ PUNICODE_STRING BackupName
,
141 /* [in] */ long MajorVer
,
142 /* [in] */ long MinorVer
,
143 /* [out] */ PLOGHANDLE Handle
)
145 DPRINT("EventLogOpenBackupW UNIMPLEMENTED\n");
146 return STATUS_NOT_IMPLEMENTED
;
151 NTSTATUS
ElfrReadELW(
152 /* [in] */ LOGHANDLE Handle
,
153 /* [in] */ long Flags
,
154 /* [in] */ long Offset
,
155 /* [in] */ long BufSize
,
156 /* [size_is][out] */ unsigned char __RPC_FAR
*Buffer
,
157 /* [out] */ long __RPC_FAR
*BytesRead
,
158 /* [out] */ long __RPC_FAR
*BytesNeeded
)
160 DPRINT("EventLogReadW UNIMPLEMENTED\n");
161 return STATUS_NOT_IMPLEMENTED
;
166 NTSTATUS
ElfrReportEventW(
167 /* [in] */ LOGHANDLE Handle
,
168 /* [in] */ long Time
,
169 /* [in] */ short Type
,
170 /* [in] */ short Category
,
172 /* [in] */ short NumStrings
,
173 /* [in] */ long DataSize
,
174 /* [in] */ PUNICODE_STRING ComputerName
,
175 /* [unique][in] */ unsigned char __RPC_FAR
*SID
,
176 /* [unique][size_is][in] */ PUNICODE_STRING __RPC_FAR Strings
[ ],
177 /* [unique][size_is][in] */ unsigned char __RPC_FAR
*Data
,
178 /* [in] */ short Flags
,
179 /* [unique][out][in] */ long __RPC_FAR
*unknown1
,
180 /* [unique][out][in] */ long __RPC_FAR
*unknown2
)
182 DPRINT("EventLogReportEventW UNIMPLEMENTED\n");
183 return STATUS_NOT_IMPLEMENTED
;
188 NTSTATUS
ElfrClearELFA(
189 /* [in] */ LOGHANDLE Handle
,
190 /* [unique][in] */ PANSI_STRING BackupName
)
192 DPRINT("EventLogClearA UNIMPLEMENTED\n");
193 return STATUS_NOT_IMPLEMENTED
;
198 NTSTATUS
ElfrBackupELFA(
199 /* [in] */ LOGHANDLE Handle
,
200 /* [in] */ PANSI_STRING BackupName
)
202 DPRINT("EventLogBackupA UNIMPLEMENTED\n");
203 return STATUS_NOT_IMPLEMENTED
;
208 NTSTATUS
ElfrOpenELA(
209 /* [unique][in] */ LPSTR ServerName
,
210 /* [in] */ PANSI_STRING LogName
,
211 /* [in] */ PANSI_STRING NullStr
,
212 /* [in] */ long MajorVer
,
213 /* [in] */ long MinorVer
,
214 /* [out] */ PLOGHANDLE Handle
)
216 UNICODE_STRING logname
= {0}, servername
={0}, StrNull
= {0};
219 if(LogName
&& !RtlCreateUnicodeStringFromAsciiz(&logname
, LogName
))
221 return STATUS_NO_MEMORY
;
225 !RtlCreateUnicodeStringFromAsciiz(&servername
, ServerName
))
227 RtlFreeUnicodeString(&servername
);
228 return STATUS_NO_MEMORY
;
231 status
= EventLogOpenW(
239 RtlFreeUnicodeString(&servername
);
240 RtlFreeUnicodeString(&logname
);
247 NTSTATUS
ElfrRegisterEventSourceA(
248 /* [unique][in] */ LPSTR ServerName
,
249 /* [in] */ PANSI_STRING LogName
,
250 /* [in] */ PANSI_STRING NullStr
,
251 /* [in] */ long MajorVer
,
252 /* [in] */ long MinorVer
,
253 /* [out] */ PLOGHANDLE Handle
)
255 DPRINT("EventLogRegSrcA UNIMPLEMENTED\n");
256 return STATUS_NOT_IMPLEMENTED
;
261 NTSTATUS
ElfrOpenBELA(
262 /* [unique][in] */ LPSTR ServerName
,
263 /* [in] */ PANSI_STRING BakckupName
,
264 /* [in] */ long MajorVer
,
265 /* [in] */ long MinorVer
,
266 /* [out] */ PLOGHANDLE Handle
)
268 DPRINT("EventLogOpenBackupA UNIMPLEMENTED\n");
269 return STATUS_NOT_IMPLEMENTED
;
274 NTSTATUS
ElfrReadELA(
275 /* [in] */ LOGHANDLE Handle
,
276 /* [in] */ long Flags
,
277 /* [in] */ long Offset
,
278 /* [in] */ long BufSize
,
279 /* [size_is][out] */ unsigned char __RPC_FAR
*Buffer
,
280 /* [out] */ long __RPC_FAR
*BytesRead
,
281 /* [out] */ long __RPC_FAR
*BytesNeeded
)
283 DPRINT("EventLogReadA UNIMPLEMENTED\n");
284 return STATUS_NOT_IMPLEMENTED
;
289 NTSTATUS
ElfrReportEventA(
290 /* [in] */ LOGHANDLE Handle
,
291 /* [in] */ long Time
,
292 /* [in] */ short Type
,
293 /* [in] */ short Category
,
295 /* [in] */ short NumStrings
,
296 /* [in] */ long DataSize
,
297 /* [in] */ PANSI_STRING ComputerName
,
298 /* [unique][in] */ unsigned char __RPC_FAR
*SID
,
299 /* [unique][size_is][in] */ PANSI_STRING __RPC_FAR Strings
[ ],
300 /* [unique][size_is][in] */ unsigned char __RPC_FAR
*Data
,
301 /* [in] */ short Flags
,
302 /* [unique][out][in] */ long __RPC_FAR
*unknown1
,
303 /* [unique][out][in] */ long __RPC_FAR
*unknown2
)
305 DPRINT("EventLogReportEventA UNIMPLEMENTED\n");
306 return STATUS_NOT_IMPLEMENTED
;
311 NTSTATUS
ElfrRegisterClusterSvc( void)
313 DPRINT("EventLogRegisterClusterSvc UNIMPLEMENTED\n");
314 return STATUS_NOT_IMPLEMENTED
;
319 NTSTATUS
ElfrDeregisterClusterSvc( void)
321 DPRINT("EventLogDeregisterClusterSvc UNIMPLEMENTED\n");
322 return STATUS_NOT_IMPLEMENTED
;
327 NTSTATUS
ElfrWriteClusterEvents( void)
329 DPRINT("EventLogWriteClusterEvents UNIMPLEMENTED\n");
330 return STATUS_NOT_IMPLEMENTED
;
335 NTSTATUS
ElfrGetLogInformation(
336 /* [in] */ LOGHANDLE Handle
,
337 /* [in] */ long InfoLevel
,
338 /* [size_is][out] */ unsigned char __RPC_FAR
*Buffer
,
339 /* [in] */ long BufSize
,
340 /* [out] */ long __RPC_FAR
*BytesNeeded
)
342 DPRINT("EventLogGetInfo UNIMPLEMENTED\n");
343 return STATUS_NOT_IMPLEMENTED
;
348 NTSTATUS
ElfrFlushEL(
349 /* [in] */ LOGHANDLE Handle
)
351 DbgPrint("EventLogFlush UNIMPLEMENTED\n");
352 return STATUS_NOT_IMPLEMENTED
;
356 void func(handle_t h
){}
357 #endif // RPC_ENABLED
359 void __RPC_FAR
* __RPC_USER
midl_user_allocate(size_t len
)
361 return HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY
, len
);
365 void __RPC_USER
midl_user_free(void __RPC_FAR
* ptr
)
367 HeapFree(GetProcessHeap(), 0, ptr
);