#define WIN32_NO_STATUS
#include <windows.h>
+#include <netevent.h>
#include <lpctypes.h>
#include <lpcfuncs.h>
#include <rtlfuncs.h>
#define ELF_LOGFILE_ARCHIVE_SET 8
/* FIXME: MSDN reads that the following two structs are in winnt.h. Are they? */
-typedef struct _EVENTLOGHEADER {
+typedef struct _EVENTLOGHEADER
+{
ULONG HeaderSize;
ULONG Signature;
ULONG MajorVersion;
ULONG EndHeaderSize;
} EVENTLOGHEADER, *PEVENTLOGHEADER;
-typedef struct _EVENTLOGEOF {
+typedef struct _EVENTLOGEOF
+{
ULONG RecordSizeBeginning;
ULONG Ones;
ULONG Twos;
ULONG RecordSizeEnd;
} EVENTLOGEOF, *PEVENTLOGEOF;
-typedef struct
+typedef struct _EVENT_OFFSET_INFO
{
ULONG EventNumber;
ULONG EventOffset;
} EVENT_OFFSET_INFO, *PEVENT_OFFSET_INFO;
-typedef struct
+typedef struct _LOGFILE
{
HANDLE hFile;
EVENTLOGHEADER Header;
{
LIST_ENTRY EventSourceListEntry;
PLOGFILE LogFile;
- ULONG CurrentRecord;
WCHAR szName[1];
} EVENTSOURCE, *PEVENTSOURCE;
+typedef struct _LOGHANDLE
+{
+ LIST_ENTRY LogHandleListEntry;
+ PEVENTSOURCE EventSource;
+ PLOGFILE LogFile;
+ ULONG CurrentRecord;
+ WCHAR szName[1];
+} LOGHANDLE, *PLOGHANDLE;
+
/* file.c */
VOID LogfListInitialize(VOID);
DWORD dwDataSize,
LPVOID lpRawData);
+VOID
+LogfReportEvent(WORD wType,
+ WORD wCategory,
+ DWORD dwEventId);
+
/* eventlog.c */
extern HANDLE MyHeap;
VOID SystemTimeToEventTime(SYSTEMTIME * pSystemTime,
DWORD * pEventTime);
+/* eventsource.c */
+VOID InitEventSourceList(VOID);
+
+BOOL
+LoadEventSources(HKEY hKey,
+ PLOGFILE pLogFile);
+
+PEVENTSOURCE
+GetEventSourceByName(LPCWSTR Name);
+
+
/* logport.c */
NTSTATUS WINAPI PortThreadRoutine(PVOID Param);