windows-nt/Source/XPSP1/NT/inetsrv/iis/iisrearc/iisplus/logging/colog.hxx
2020-09-26 16:20:57 +08:00

121 lines
2.7 KiB
C++

/*++
Copyright (c) 1997 Microsoft Corporation
Module Name :
colog.hxx
Abstract:
Custom logging stuff
Author:
Anil Ruia (AnilR) 1-Jul-2000
--*/
#ifndef _COLOG_HXX_
#define _COLOG_HXX_
extern CHAR g_pszComputerName[MAX_COMPUTERNAME_LENGTH + 1];
class CInetLogInformation : public IInetLogInformation
{
public:
CInetLogInformation()
: m_pLogContext (NULL)
{}
HRESULT STDMETHODCALLTYPE
QueryInterface(REFIID riid,
VOID **ppObject)
{
*ppObject = NULL;
return E_NOINTERFACE;
}
ULONG STDMETHODCALLTYPE AddRef(){return 1;}
ULONG STDMETHODCALLTYPE Release(){return 1;}
LPSTR STDMETHODCALLTYPE
GetSiteName(IN PCHAR pszSiteName,
IN PDWORD pcbSize);
LPSTR STDMETHODCALLTYPE
GetComputerName(IN PCHAR pszComputerName,
IN PDWORD pcbSize);
LPSTR STDMETHODCALLTYPE
GetClientHostName(IN PCHAR pszClientHostName,
IN PDWORD pcbSize);
LPSTR STDMETHODCALLTYPE
GetClientUserName(IN PCHAR pszClientUserName,
IN PDWORD pcbSize);
LPSTR STDMETHODCALLTYPE
GetServerAddress(IN PCHAR pszServerAddress,
IN PDWORD pcbSize);
LPSTR STDMETHODCALLTYPE
GetOperation(IN PCHAR pszOperation,
IN PDWORD pcbSize);
LPSTR STDMETHODCALLTYPE
GetTarget(IN PCHAR pszTarget,
IN PDWORD pcbSize);
LPSTR STDMETHODCALLTYPE
GetParameters(IN PCHAR pszParameters,
IN PDWORD pcbSize);
LPSTR STDMETHODCALLTYPE
GetVersionString(IN PCHAR pszVersionString,
IN PDWORD pcbSize);
LPSTR STDMETHODCALLTYPE
GetExtraHTTPHeaders(IN PCHAR pszHTTPHeaders,
IN PDWORD pcbSize);
DWORD STDMETHODCALLTYPE
GetTimeForProcessing()
{ return m_pLogContext->m_msProcessingTime; }
DWORD STDMETHODCALLTYPE
GetBytesSent()
{ return m_pLogContext->m_dwBytesSent; }
DWORD STDMETHODCALLTYPE
GetBytesRecvd()
{ return m_pLogContext->m_dwBytesRecvd; }
DWORD STDMETHODCALLTYPE
GetWin32Status()
{ return m_pLogContext->QueryUlLogData()->Win32Status; }
DWORD STDMETHODCALLTYPE
GetProtocolStatus()
{ return m_pLogContext->QueryUlLogData()->ProtocolStatus; }
DWORD STDMETHODCALLTYPE
GetPortNumber()
{ return m_pLogContext->QueryUlLogData()->ServerPort; }
VOID STDMETHODCALLTYPE
CanonicalizeLogRecord(IN LOG_CONTEXT *pInetLogRecord);
private:
STRA m_strUserName;
STRA m_strTarget;
LOG_CONTEXT *m_pLogContext;
};
#endif // _COLOG_HXX