void TraceCritical(const wchar_t* tag, const wchar_t* format, ...) { va_list varArgs; va_start(varArgs, format); TraceRegister(); _V_TRACE(WINEVENT_LEVEL_CRITICAL, LABEL_CRITICAL, tag, format, varArgs); va_end(varArgs); }
void TraceError(const wchar_t* tag, const wchar_t* format, ...) { va_list varArgs; va_start(varArgs, format); TraceRegister(); _V_TRACE(WINEVENT_LEVEL_ERROR, LABEL_ERROR, tag, format, varArgs); va_end(varArgs); }
void TraceVerbose(const wchar_t* tag, const wchar_t* format, ...) { va_list varArgs; va_start(varArgs, format); TraceRegister(); _V_TRACE(WINEVENT_LEVEL_VERBOSE, LABEL_VERBOSE, tag, format, varArgs); va_end(varArgs); }
void TraceWarning(const wchar_t* tag, const wchar_t* format, ...) { va_list varArgs; va_start(varArgs, format); TraceRegister(); _V_TRACE(WINEVENT_LEVEL_WARNING, LABEL_WARNING, tag, format, varArgs); va_end(varArgs); }
DWORD CE_Create ( PCONFIGURATION_ENTRY pce) { DWORD dwErr = NO_ERROR; /* initialize to default values */ ZeroMemory(pce, sizeof(CONFIGURATION_ENTRY)); pce->dwTraceID = INVALID_TRACEID; do { /* initialize the read-write lock */ CREATE_READ_WRITE_LOCK(&(pce->rwlLock)); if (!READ_WRITE_LOCK_CREATED(&(pce->rwlLock))) { dwErr = GetLastError(); TRACE1(CONFIGURATION, "Error %u creating read-write-lock", dwErr); break; } /* initialize the global heap */ pce->hGlobalHeap = HeapCreate(0, 0, 0); if (pce->hGlobalHeap == NULL) { dwErr = GetLastError(); TRACE1(CONFIGURATION, "Error %u creating global heap", dwErr); break; } /* * Initialize the count of threads that are active in subsystem. * Create the semaphore released by each thread when it is done; * required for clean stop to the protocol. */ pce->ulActivityCount = 0; pce->hActivitySemaphore = CreateSemaphore(NULL, 0, 0xfffffff, NULL); if (pce->hActivitySemaphore == NULL) { dwErr = GetLastError(); TRACE1(CONFIGURATION, "Error %u creating semaphore", dwErr); break; } /* Logging & Tracing Information */ pce->dwTraceID = TraceRegister(XORPRTM_TRACENAME); /* Event Queue */ INITIALIZE_LOCKED_QUEUE(&(pce->lqEventQueue)); if (!LOCKED_QUEUE_INITIALIZED(&(pce->lqEventQueue))) { dwErr = GetLastError(); TRACE1(CONFIGURATION, "Error %u initializing locked queue", dwErr); break; } /* Protocol State */ pce->iscStatus = XORPRTM_STATUS_STOPPED; } while (FALSE); if (dwErr != NO_ERROR) { /* something went wrong, so cleanup. */ TRACE0(CONFIGURATION, "Failed to create configuration entry"); CE_Destroy(pce); } return dwErr; }