mirror of
https://github.com/reactos/reactos.git
synced 2025-02-24 17:34:57 +00:00
[EVENTLOG]
Partially revert r54678. svn path=/trunk/; revision=54751
This commit is contained in:
parent
eec24f8325
commit
846be7ac13
5 changed files with 34 additions and 30 deletions
|
@ -465,6 +465,20 @@ VOID EventTimeToSystemTime(DWORD EventTime, SYSTEMTIME * pSystemTime)
|
|||
FileTimeToSystemTime(&ftLocal, pSystemTime);
|
||||
}
|
||||
|
||||
VOID SystemTimeToEventTime(SYSTEMTIME * pSystemTime, DWORD * pEventTime)
|
||||
{
|
||||
SYSTEMTIME st1970 = { 1970, 1, 0, 1, 0, 0, 0, 0 };
|
||||
union
|
||||
{
|
||||
FILETIME ft;
|
||||
ULONGLONG ll;
|
||||
} Time, u1970;
|
||||
|
||||
SystemTimeToFileTime(pSystemTime, &Time.ft);
|
||||
SystemTimeToFileTime(&st1970, &u1970.ft);
|
||||
*pEventTime = (DWORD)((Time.ll - u1970.ll) / 10000000ull);
|
||||
}
|
||||
|
||||
VOID PRINT_HEADER(PEVENTLOGHEADER header)
|
||||
{
|
||||
DPRINT("HeaderSize = %d\n", header->HeaderSize);
|
||||
|
|
|
@ -16,7 +16,6 @@
|
|||
#include <windows.h>
|
||||
#include <netevent.h>
|
||||
#include <lpctypes.h>
|
||||
#include <kefuncs.h>
|
||||
#include <lpcfuncs.h>
|
||||
#include <rtlfuncs.h>
|
||||
#include <obfuncs.h>
|
||||
|
@ -169,7 +168,6 @@ BOOL LogfDeleteOffsetInformation(PLOGFILE LogFile,
|
|||
|
||||
PBYTE LogfAllocAndBuildNewRecord(LPDWORD lpRecSize,
|
||||
DWORD dwRecordNumber,
|
||||
DWORD dwTime,
|
||||
WORD wType,
|
||||
WORD wCategory,
|
||||
DWORD dwEventId,
|
||||
|
@ -201,6 +199,9 @@ VOID PRINT_RECORD(PEVENTLOGRECORD pRec);
|
|||
VOID EventTimeToSystemTime(DWORD EventTime,
|
||||
SYSTEMTIME * SystemTime);
|
||||
|
||||
VOID SystemTimeToEventTime(SYSTEMTIME * pSystemTime,
|
||||
DWORD * pEventTime);
|
||||
|
||||
/* eventsource.c */
|
||||
VOID InitEventSourceList(VOID);
|
||||
|
||||
|
|
|
@ -870,18 +870,18 @@ BOOL LogfWriteData(PLOGFILE LogFile, DWORD BufSize, PBYTE Buffer)
|
|||
{
|
||||
DWORD dwWritten;
|
||||
DWORD dwRead;
|
||||
SYSTEMTIME st;
|
||||
EVENTLOGEOF EofRec;
|
||||
PEVENTLOGRECORD RecBuf;
|
||||
LARGE_INTEGER logFileSize;
|
||||
LARGE_INTEGER SystemTime;
|
||||
ULONG RecOffSet;
|
||||
ULONG WriteOffSet;
|
||||
|
||||
if (!Buffer)
|
||||
return FALSE;
|
||||
|
||||
NtQuerySystemTime(&SystemTime);
|
||||
RtlTimeToSecondsSince1970(&SystemTime, &((PEVENTLOGRECORD) Buffer)->TimeWritten);
|
||||
GetSystemTime(&st);
|
||||
SystemTimeToEventTime(&st, &((PEVENTLOGRECORD) Buffer)->TimeWritten);
|
||||
|
||||
EnterCriticalSection(&LogFile->cs);
|
||||
|
||||
|
@ -1125,7 +1125,6 @@ BOOL LogfAddOffsetInformation(PLOGFILE LogFile, ULONG ulNumber, ULONG ulOffset)
|
|||
|
||||
PBYTE LogfAllocAndBuildNewRecord(LPDWORD lpRecSize,
|
||||
DWORD dwRecordNumber,
|
||||
DWORD dwTime,
|
||||
WORD wType,
|
||||
WORD wCategory,
|
||||
DWORD dwEventId,
|
||||
|
@ -1140,6 +1139,7 @@ PBYTE LogfAllocAndBuildNewRecord(LPDWORD lpRecSize,
|
|||
{
|
||||
DWORD dwRecSize;
|
||||
PEVENTLOGRECORD pRec;
|
||||
SYSTEMTIME SysTime;
|
||||
WCHAR *str;
|
||||
UINT i, pos;
|
||||
PBYTE Buffer;
|
||||
|
@ -1148,8 +1148,8 @@ PBYTE LogfAllocAndBuildNewRecord(LPDWORD lpRecSize,
|
|||
sizeof(EVENTLOGRECORD) + (lstrlenW(ComputerName) +
|
||||
lstrlenW(SourceName) + 2) * sizeof(WCHAR);
|
||||
|
||||
if (dwRecSize % sizeof(DWORD) != 0)
|
||||
dwRecSize += sizeof(DWORD) - (dwRecSize % sizeof(DWORD));
|
||||
if (dwRecSize % 4 != 0)
|
||||
dwRecSize += 4 - (dwRecSize % 4);
|
||||
|
||||
dwRecSize += dwSidLength;
|
||||
|
||||
|
@ -1160,10 +1160,10 @@ PBYTE LogfAllocAndBuildNewRecord(LPDWORD lpRecSize,
|
|||
}
|
||||
|
||||
dwRecSize += dwDataSize;
|
||||
if (dwRecSize % sizeof(DWORD) != 0)
|
||||
dwRecSize += sizeof(DWORD) - (dwRecSize % sizeof(DWORD));
|
||||
if (dwRecSize % 4 != 0)
|
||||
dwRecSize += 4 - (dwRecSize % 4);
|
||||
|
||||
dwRecSize += sizeof(DWORD);
|
||||
dwRecSize += 4;
|
||||
|
||||
Buffer = HeapAlloc(MyHeap, HEAP_ZERO_MEMORY, dwRecSize);
|
||||
|
||||
|
@ -1178,8 +1178,9 @@ PBYTE LogfAllocAndBuildNewRecord(LPDWORD lpRecSize,
|
|||
pRec->Reserved = LOGFILE_SIGNATURE;
|
||||
pRec->RecordNumber = dwRecordNumber;
|
||||
|
||||
pRec->TimeGenerated = dwTime;
|
||||
pRec->TimeWritten = dwTime;
|
||||
GetSystemTime(&SysTime);
|
||||
SystemTimeToEventTime(&SysTime, &pRec->TimeGenerated);
|
||||
SystemTimeToEventTime(&SysTime, &pRec->TimeWritten);
|
||||
|
||||
pRec->EventID = dwEventId;
|
||||
pRec->EventType = wType;
|
||||
|
@ -1194,8 +1195,8 @@ PBYTE LogfAllocAndBuildNewRecord(LPDWORD lpRecSize,
|
|||
|
||||
pRec->UserSidOffset = pos;
|
||||
|
||||
if (pos % sizeof(DWORD) != 0)
|
||||
pos += sizeof(DWORD) - (pos % sizeof(DWORD));
|
||||
if (pos % 4 != 0)
|
||||
pos += 4 - (pos % 4);
|
||||
|
||||
if (dwSidLength)
|
||||
{
|
||||
|
@ -1222,8 +1223,8 @@ PBYTE LogfAllocAndBuildNewRecord(LPDWORD lpRecSize,
|
|||
pos += dwDataSize;
|
||||
}
|
||||
|
||||
if (pos % sizeof(DWORD) != 0)
|
||||
pos += sizeof(DWORD) - (pos % sizeof(DWORD));
|
||||
if (pos % 4 != 0)
|
||||
pos += 4 - (pos % 4);
|
||||
|
||||
*((PDWORD) (Buffer + pos)) = dwRecSize;
|
||||
|
||||
|
@ -1248,8 +1249,6 @@ LogfReportEvent(WORD wType,
|
|||
DWORD lastRec;
|
||||
DWORD recSize;
|
||||
DWORD dwError;
|
||||
DWORD dwTime;
|
||||
LARGE_INTEGER SystemTime;
|
||||
|
||||
if (!GetComputerNameW(szComputerName, &dwComputerNameLength))
|
||||
{
|
||||
|
@ -1262,13 +1261,9 @@ LogfReportEvent(WORD wType,
|
|||
return;
|
||||
}
|
||||
|
||||
NtQuerySystemTime(&SystemTime);
|
||||
RtlTimeToSecondsSince1970(&SystemTime, &dwTime);
|
||||
|
||||
lastRec = LogfGetCurrentRecord(pEventSource->LogFile);
|
||||
|
||||
logBuffer = LogfAllocAndBuildNewRecord(&recSize,
|
||||
dwTime,
|
||||
lastRec,
|
||||
wType,
|
||||
wCategory,
|
||||
|
|
|
@ -109,8 +109,6 @@ NTSTATUS ProcessPortMessage(VOID)
|
|||
DWORD dwRecSize;
|
||||
NTSTATUS Status;
|
||||
PLOGFILE SystemLog = NULL;
|
||||
LARGE_INTEGER SystemTime;
|
||||
ULONG Seconds;
|
||||
|
||||
DPRINT("ProcessPortMessage() called\n");
|
||||
|
||||
|
@ -147,10 +145,7 @@ NTSTATUS ProcessPortMessage(VOID)
|
|||
Message = (PIO_ERROR_LOG_MESSAGE) & Request.Message;
|
||||
ulRecNum = SystemLog ? SystemLog->Header.CurrentRecordNumber : 0;
|
||||
|
||||
NtQuerySystemTime(&SystemTime);
|
||||
RtlTimeToSecondsSince1970(&SystemTime, &Seconds);
|
||||
|
||||
pRec = (PEVENTLOGRECORD) LogfAllocAndBuildNewRecord(&dwRecSize, Seconds,
|
||||
pRec = (PEVENTLOGRECORD) LogfAllocAndBuildNewRecord(&dwRecSize,
|
||||
ulRecNum, Message->Type, Message->EntryData.EventCategory,
|
||||
Message->EntryData.ErrorCode,
|
||||
(WCHAR *) (((PBYTE) Message) + Message->DriverNameOffset),
|
||||
|
|
|
@ -496,7 +496,6 @@ NTSTATUS ElfrReportEventW(
|
|||
if (UserSID)
|
||||
dwUserSidLength = FIELD_OFFSET(SID, SubAuthority[UserSID->SubAuthorityCount]);
|
||||
LogBuffer = LogfAllocAndBuildNewRecord(&recSize,
|
||||
Time,
|
||||
lastRec,
|
||||
EventType,
|
||||
EventCategory,
|
||||
|
|
Loading…
Reference in a new issue