Exemple #1
0
VOID LogfCloseAll(VOID)
{
    while (!IsListEmpty(&LogFileListHead))
    {
        LogfClose(LogfListHead(), TRUE);
    }

    DeleteCriticalSection(&LogFileListCs);
}
Exemple #2
0
VOID LogfCloseAll(VOID)
{
    EnterCriticalSection(&LogFileListCs);

    while (!IsListEmpty(&LogFileListHead))
    {
        LogfClose(CONTAINING_RECORD(LogFileListHead.Flink, LOGFILE, ListEntry), TRUE);
    }

    LeaveCriticalSection(&LogFileListCs);

    DeleteCriticalSection(&LogFileListCs);
}
Exemple #3
0
static NTSTATUS
ElfDeleteEventLogHandle(PIELF_HANDLE LogHandle)
{
    PLOGHANDLE lpLogHandle;

    lpLogHandle = ElfGetLogHandleEntryByHandle(*LogHandle);
    if (!lpLogHandle)
        return STATUS_INVALID_HANDLE;

    RemoveEntryList(&lpLogHandle->LogHandleListEntry);
    LogfClose(lpLogHandle->LogFile, FALSE);

    HeapFree(GetProcessHeap(), 0, lpLogHandle);

    *LogHandle = NULL;

    return STATUS_SUCCESS;
}
Exemple #4
0
static NTSTATUS
ElfDeleteEventLogHandle(PIELF_HANDLE LogHandle)
{
    PLOGHANDLE pLogHandle;

    pLogHandle = ElfGetLogHandleEntryByHandle(*LogHandle);
    if (!pLogHandle)
        return STATUS_INVALID_HANDLE;

    EnterCriticalSection(&LogHandleListCs);
    RemoveEntryList(&pLogHandle->LogHandleListEntry);
    LeaveCriticalSection(&LogHandleListCs);

    LogfClose(pLogHandle->LogFile, FALSE);

    HeapFree(GetProcessHeap(), 0, pLogHandle);

    *LogHandle = NULL;

    return STATUS_SUCCESS;
}