|
Packit |
8681c6 |
/*
|
|
Packit |
8681c6 |
* COPYRIGHT (c) International Business Machines Corp. 2001-2017
|
|
Packit |
8681c6 |
*
|
|
Packit |
8681c6 |
* This program is provided under the terms of the Common Public License,
|
|
Packit |
8681c6 |
* version 1.0 (CPL-1.0). Any use, reproduction or distribution for this
|
|
Packit |
8681c6 |
* software constitutes recipient's acceptance of CPL-1.0 terms which can be
|
|
Packit |
8681c6 |
* found in the file LICENSE file or at
|
|
Packit |
8681c6 |
* https://opensource.org/licenses/cpl1.0.php
|
|
Packit |
8681c6 |
*/
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
#ifndef _LOG_H
|
|
Packit |
8681c6 |
#define _LOG_H 1
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
#ifndef FALSE
|
|
Packit |
8681c6 |
#define FALSE 0
|
|
Packit |
8681c6 |
#endif /* FALSE */
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
#ifndef TRUE
|
|
Packit |
8681c6 |
#define TRUE (!(FALSE))
|
|
Packit |
8681c6 |
#endif /* TRUE */
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
#ifndef MAX_LOGGING_FACILITIES
|
|
Packit |
8681c6 |
#define MAX_LOGGING_FACILITIES 16
|
|
Packit |
8681c6 |
#endif /* MAX_LOGGING_FACILITIES */
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
#ifndef TRUNCATE_LOGS_ON_START
|
|
Packit |
8681c6 |
#define TRUNCATE_LOGS_ON_START 0
|
|
Packit |
8681c6 |
#endif /* TRUNCATE_LOGS_ON_START */
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
/* Use an enum here? */
|
|
Packit |
8681c6 |
#define DEBUG_NONE (0)
|
|
Packit |
8681c6 |
#define DEBUG_LEVEL0 (100) /* Less detail */
|
|
Packit |
8681c6 |
#define DEBUG_LEVEL1 (DEBUG_LEVEL0 + 100) /* . */
|
|
Packit |
8681c6 |
#define DEBUG_LEVEL2 (DEBUG_LEVEL1 + 100) /* v */
|
|
Packit |
8681c6 |
#define DEBUG_LEVEL3 (DEBUG_LEVEL2 + 100) /* More detail */
|
|
Packit |
8681c6 |
#define DEBUG_LEVEL4 (DEBUG_LEVEL3 + 100)
|
|
Packit |
8681c6 |
#define DEBUG_LEVEL5 (DEBUG_LEVEL4 + 100)
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
#define DNONE (DEBUG_NONE)
|
|
Packit |
8681c6 |
#define DL0 (DEBUG_LEVEL0)
|
|
Packit |
8681c6 |
#define DL1 (DEBUG_LEVEL1)
|
|
Packit |
8681c6 |
#define DL2 (DEBUG_LEVEL2)
|
|
Packit |
8681c6 |
#define DL3 (DEBUG_LEVEL3)
|
|
Packit |
8681c6 |
#define DL4 (DEBUG_LEVEL4)
|
|
Packit |
8681c6 |
#define DL5 (DEBUG_LEVEL5)
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
#ifndef DbgPrint
|
|
Packit |
8681c6 |
#define DbgPrint DbgLog
|
|
Packit |
8681c6 |
#endif /* DbgPrint */
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
/**************
|
|
Packit |
8681c6 |
* Structures *
|
|
Packit |
8681c6 |
**************/
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
/************************************************************************
|
|
Packit |
8681c6 |
* Yes, the structures are somewhat redundant; this is an evolutionary
|
|
Packit |
8681c6 |
* side-effect. They should probably be combined into a single struct
|
|
Packit |
8681c6 |
* - SCM
|
|
Packit |
8681c6 |
************************************************************************/
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
typedef unsigned int u_int32;
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
typedef u_int32 LogHandle, *pLogHandle;
|
|
Packit |
8681c6 |
typedef u_int32 BOOL, bool, BOOLEAN, boolean;
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
typedef struct _logging_facility_info {
|
|
Packit |
8681c6 |
BOOL Initialized;
|
|
Packit |
8681c6 |
char Descrip[255];
|
|
Packit |
8681c6 |
u_int32 LogOption;
|
|
Packit |
8681c6 |
char *Filename;
|
|
Packit |
8681c6 |
BOOL UseSyslog;
|
|
Packit |
8681c6 |
u_int32 LogLevel;
|
|
Packit |
8681c6 |
pid_t pid;
|
|
Packit |
8681c6 |
} LoggingFacilityInfo, *pLoggingFacilityInfo;
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
typedef struct _LoggingFacility {
|
|
Packit |
8681c6 |
char *Label;
|
|
Packit |
8681c6 |
pLogHandle phLog;
|
|
Packit |
8681c6 |
char *Filename;
|
|
Packit |
8681c6 |
BOOL UseSyslog;
|
|
Packit |
8681c6 |
u_int32 LogLevel;
|
|
Packit |
8681c6 |
} LoggingFacility, *pLoggingFacility;
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
/********************************
|
|
Packit |
8681c6 |
* Exported Function Prototypes *
|
|
Packit |
8681c6 |
********************************/
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
void DbgLog(u_int32 DebugLevel, char *Format, ...);
|
|
Packit |
8681c6 |
void ErrLog(char *Format, ...);
|
|
Packit |
8681c6 |
void LogLog(char *Format, ...);
|
|
Packit |
8681c6 |
void WarnLog(char *Format, ...);
|
|
Packit |
8681c6 |
void TraceLog(char *Format, ...);
|
|
Packit |
8681c6 |
void InfoLog(char *Format, ...);
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
BOOL PKCS_Log(LogHandle *phLog, char *Format, va_list ap);
|
|
Packit |
8681c6 |
BOOL NewLoggingFacility(char *ID, pLoggingFacility pStuff);
|
|
Packit |
8681c6 |
BOOL CloseLoggingFacility(LogHandle hLog);
|
|
Packit |
8681c6 |
BOOL GetCurrentTimeString(char *Buffer);
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
u_int32 SetDebugLevel(u_int32 Val);
|
|
Packit |
8681c6 |
u_int32 GetDebugLevel(void);
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
#endif /* _LOG_H */
|