90 lines
		
	
	
		
			3.5 KiB
		
	
	
	
		
			C
		
	
	
	
		
		
			
		
	
	
			90 lines
		
	
	
		
			3.5 KiB
		
	
	
	
		
			C
		
	
	
	
|  | //////////////////////////////////////////////////////////////////////////////
 | ||
|  | //
 | ||
|  | //  Detours Test Program (syelog.h of syelog.lib)
 | ||
|  | //
 | ||
|  | //  Microsoft Research Detours Package
 | ||
|  | //
 | ||
|  | //  Copyright (c) Microsoft Corporation.  All rights reserved.
 | ||
|  | //
 | ||
|  | #pragma once
 | ||
|  | #ifndef _SYELOGD_H_
 | ||
|  | #define _SYELOGD_H_
 | ||
|  | #include <stdarg.h>
 | ||
|  | 
 | ||
|  | #pragma pack(push, 1)
 | ||
|  | #pragma warning(push)
 | ||
|  | #pragma warning(disable: 4200)
 | ||
|  | 
 | ||
|  | //////////////////////////////////////////////////////////////////////////////
 | ||
|  | //
 | ||
|  | //
 | ||
|  | #define SYELOG_PIPE_NAMEA       "\\\\.\\pipe\\syelog"
 | ||
|  | #define SYELOG_PIPE_NAMEW       L"\\\\.\\pipe\\syelog"
 | ||
|  | #ifdef UNICODE
 | ||
|  | #define SYELOG_PIPE_NAME        SYELOG_PIPE_NAMEW
 | ||
|  | #else
 | ||
|  | #define SYELOG_PIPE_NAME        SYELOG_PIPE_NAMEA
 | ||
|  | #endif
 | ||
|  | 
 | ||
|  | //////////////////////////////////////////////////////////////////////////////
 | ||
|  | //
 | ||
|  | #define SYELOG_MAXIMUM_MESSAGE  4086    // 4096 - sizeof(header stuff)
 | ||
|  | 
 | ||
|  | typedef struct _SYELOG_MESSAGE | ||
|  | { | ||
|  |     USHORT      nBytes; | ||
|  |     BYTE        nFacility; | ||
|  |     BYTE        nSeverity; | ||
|  |     DWORD       nProcessId; | ||
|  |     FILETIME    ftOccurance; | ||
|  |     BOOL        fTerminate; | ||
|  |     CHAR        szMessage[SYELOG_MAXIMUM_MESSAGE]; | ||
|  | } SYELOG_MESSAGE, *PSYELOG_MESSAGE; | ||
|  | 
 | ||
|  | 
 | ||
|  | // Facility Codes.
 | ||
|  | //
 | ||
|  | #define SYELOG_FACILITY_KERNEL          0x10            // OS Kernel
 | ||
|  | #define SYELOG_FACILITY_SECURITY        0x20            // OS Security
 | ||
|  | #define SYELOG_FACILITY_LOGGING         0x30            // OS Logging-internal
 | ||
|  | #define SYELOG_FACILITY_SERVICE         0x40            // User-mode system daemon
 | ||
|  | #define SYELOG_FACILITY_APPLICATION     0x50            // User-mode application
 | ||
|  | #define SYELOG_FACILITY_USER            0x60            // User self-generated.
 | ||
|  | #define SYELOG_FACILITY_LOCAL0          0x70            // Locally defined.
 | ||
|  | #define SYELOG_FACILITY_LOCAL1          0x71            // Locally defined.
 | ||
|  | #define SYELOG_FACILITY_LOCAL2          0x72            // Locally defined.
 | ||
|  | #define SYELOG_FACILITY_LOCAL3          0x73            // Locally defined.
 | ||
|  | #define SYELOG_FACILITY_LOCAL4          0x74            // Locally defined.
 | ||
|  | #define SYELOG_FACILITY_LOCAL5          0x75            // Locally defined.
 | ||
|  | #define SYELOG_FACILITY_LOCAL6          0x76            // Locally defined.
 | ||
|  | #define SYELOG_FACILITY_LOCAL7          0x77            // Locally defined.
 | ||
|  | #define SYELOG_FACILITY_LOCAL8          0x78            // Locally defined.
 | ||
|  | #define SYELOG_FACILITY_LOCAL9          0x79            // Locally defined.
 | ||
|  | 
 | ||
|  | // Severity Codes.
 | ||
|  | //
 | ||
|  | #define SYELOG_SEVERITY_FATAL           0x00            // System is dead.
 | ||
|  | #define SYELOG_SEVERITY_ALERT           0x10            // Take action immediately.
 | ||
|  | #define SYELOG_SEVERITY_CRITICAL        0x20            // Critical condition.
 | ||
|  | #define SYELOG_SEVERITY_ERROR           0x30            // Error
 | ||
|  | #define SYELOG_SEVERITY_WARNING         0x40            // Warning
 | ||
|  | #define SYELOG_SEVERITY_NOTICE          0x50            // Significant condition.
 | ||
|  | #define SYELOG_SEVERITY_INFORMATION     0x60            // Informational
 | ||
|  | #define SYELOG_SEVERITY_AUDIT_FAIL      0x66            // Audit Failed
 | ||
|  | #define SYELOG_SEVERITY_AUDIT_PASS      0x67            // Audit Succeeeded
 | ||
|  | #define SYELOG_SEVERITY_DEBUG           0x70            // Debugging
 | ||
|  | 
 | ||
|  | // Logging Functions.
 | ||
|  | //
 | ||
|  | VOID SyelogOpen(PCSTR pszIdentifier, BYTE nFacility); | ||
|  | VOID Syelog(BYTE nSeverity, PCSTR pszMsgf, ...); | ||
|  | VOID SyelogV(BYTE nSeverity, PCSTR pszMsgf, va_list args); | ||
|  | VOID SyelogClose(BOOL fTerminate); | ||
|  | 
 | ||
|  | #pragma warning(pop)
 | ||
|  | #pragma pack(pop)
 | ||
|  | 
 | ||
|  | #endif //  _SYELOGD_H_
 | ||
|  | //
 | ||
|  | ///////////////////////////////////////////////////////////////// End of File.
 |