rpm  5.2.1
Macros | Functions | Variables
rpmlog.c File Reference
#include "system.h"
#include <stdarg.h>
#include <rpmlog.h>
#include "debug.h"
Include dependency graph for rpmlog.c:

Go to the source code of this file.

Macros

#define _RPMLOG_INTERNAL
 

Functions

static void * _free (const void *p)
 Wrapper to free(3), hides const compilation noise, permit NULL, return NULL. More...
 
int rpmlogGetNrecs (void)
 Return number of messages. More...
 
int rpmlogCode (void)
 Return error code from last rpmError() message. More...
 
const char * rpmlogMessage (void)
 Return text of last rpmError() message. More...
 
const char * rpmlogRecMessage (rpmlogRec rec)
 Retrieve log message string from rpmlog record. More...
 
rpmlogLvl rpmlogRecPriority (rpmlogRec rec)
 Retrieve log priority from rpmlog record. More...
 
void rpmlogPrint (FILE *f)
 Print all rpmError() messages. More...
 
void rpmlogClose (void)
 Close desriptor used to write to system logger. More...
 
void rpmlogOpen (const char *ident, int option, int facility)
 Open connection to system logger. More...
 
int rpmlogSetMask (int mask)
 Set the log mask level. More...
 
rpmlogCallback rpmlogSetCallback (rpmlogCallback cb, rpmlogCallbackData data)
 Set rpmlog callback function. More...
 
void rpmlogGetCallback (rpmlogCallback *cb, rpmlogCallbackData *data)
 Get rpmlog callback function and data. More...
 
static int rpmlogDefault (rpmlogRec rec)
 
FILE * rpmlogSetFile (FILE *fp)
 Set rpmlog file handle. More...
 
const char * rpmlogLevelPrefix (rpmlogLvl pri)
 Return translated prefix string (if any) given log level. More...
 
static int vsnprintf (char *buf, int nb, const char *fmt, va_list ap)
 
void vrpmlog (unsigned code, const char *fmt, va_list ap)
 Same as _rpmlog with stdarg argument list. More...
 
void _rpmlog (int code, const char *fmt,...)
 Generate a log message using FMT string and option arguments. More...
 

Variables

static int nrecs = 0
 
static rpmlogRec recs = NULL
 
static unsigned rpmlogMask = RPMLOG_UPTO( RPMLOG_NOTICE )
 
static rpmlogCallback _rpmlogCallback
 
static rpmlogCallbackData _rpmlogCallbackData
 
static FILE * _stdlog = NULL
 
static const char * rpmlogMsgPrefix []
 

Macro Definition Documentation

#define _RPMLOG_INTERNAL

Definition at line 7 of file rpmlog.c.

Function Documentation

static void* _free ( const void *  p)
inlinestatic

Wrapper to free(3), hides const compilation noise, permit NULL, return NULL.

Parameters
pmemory to free
Return values
NULLalways

Definition at line 24 of file rpmlog.c.

Referenced by rpmlogClose(), and vrpmlog().

void _rpmlog ( int  code,
const char *  fmt,
  ... 
)

Generate a log message using FMT string and option arguments.

Note: inline'd to avoid debugging insturmentation overhead.

Definition at line 294 of file rpmlog.c.

References vrpmlog().

void rpmlogClose ( void  )

Close desriptor used to write to system logger.

Todo:
Implement.

Definition at line 78 of file rpmlog.c.

References _free(), nrecs, and recs.

Referenced by rpmioClean().

int rpmlogCode ( void  )

Return error code from last rpmError() message.

Deprecated:
Perl-RPM needs, what's really needed is predictable, non-i18n encumbered, error text that can be retrieved through rpmlogMessage() and parsed IMHO.
Returns
code from last message

Definition at line 35 of file rpmlog.c.

References nrecs, and recs.

static int rpmlogDefault ( rpmlogRec  rec)
static
void rpmlogGetCallback ( rpmlogCallback cb,
rpmlogCallbackData data 
)

Get rpmlog callback function and data.

Parameters
cbpointer to rpmlog callback function
datapointer to callback private (user) data
Returns
none

Definition at line 133 of file rpmlog.c.

References _rpmlogCallback, and _rpmlogCallbackData.

int rpmlogGetNrecs ( void  )

Return number of messages.

Returns
number of messages

Definition at line 30 of file rpmlog.c.

References nrecs.

Referenced by buildSpec().

const char* rpmlogLevelPrefix ( rpmlogLvl  pri)

Return translated prefix string (if any) given log level.

Parameters
prilog priority
Returns
message prefix (or "" for none)

Definition at line 197 of file rpmlog.c.

References rpmlogMsgPrefix.

Referenced by rpmlogDefault().

const char* rpmlogMessage ( void  )

Return text of last rpmError() message.

Returns
text of last message

Definition at line 42 of file rpmlog.c.

References _, nrecs, and recs.

void rpmlogOpen ( const char *  ident,
int  option,
int  facility 
)

Open connection to system logger.

Todo:
Implement.

Definition at line 93 of file rpmlog.c.

void rpmlogPrint ( FILE *  f)

Print all rpmError() messages.

Parameters
ffile handle (NULL uses stderr)

Definition at line 62 of file rpmlog.c.

References nrecs, and recs.

Referenced by buildSpec().

const char* rpmlogRecMessage ( rpmlogRec  rec)

Retrieve log message string from rpmlog record.

Parameters
recrpmlog record
Returns
log message

Definition at line 49 of file rpmlog.c.

rpmlogLvl rpmlogRecPriority ( rpmlogRec  rec)

Retrieve log priority from rpmlog record.

Parameters
recrpmlog record
Returns
log priority

Definition at line 55 of file rpmlog.c.

rpmlogCallback rpmlogSetCallback ( rpmlogCallback  cb,
rpmlogCallbackData  data 
)

Set rpmlog callback function.

Parameters
cbrpmlog callback function
datacallback private (user) data
Returns
previous rpmlog callback function

Definition at line 123 of file rpmlog.c.

References _rpmlogCallback, and _rpmlogCallbackData.

FILE* rpmlogSetFile ( FILE *  fp)

Set rpmlog file handle.

Parameters
fprpmlog file handle (NULL uses stdout/stderr)
Returns
previous rpmlog file handle

Definition at line 174 of file rpmlog.c.

References _stdlog.

Referenced by setLogFile().

int rpmlogSetMask ( int  mask)

Set the log mask level.

Parameters
masklog mask (0 is no operation)
Returns
previous log mask

Definition at line 107 of file rpmlog.c.

References rpmlogMask.

Referenced by doFoo(), and rpmlog().

void vrpmlog ( unsigned  code,
const char *  fmt,
va_list  ap 
)
static int vsnprintf ( char *  buf,
int  nb,
const char *  fmt,
va_list  ap 
)
inlinestatic

Definition at line 203 of file rpmlog.c.

Referenced by vrpmlog().

Variable Documentation

rpmlogCallback _rpmlogCallback
static

Definition at line 118 of file rpmlog.c.

Referenced by rpmlogGetCallback(), rpmlogSetCallback(), and vrpmlog().

rpmlogCallbackData _rpmlogCallbackData
static

Definition at line 121 of file rpmlog.c.

Referenced by rpmlogGetCallback(), rpmlogSetCallback(), and vrpmlog().

FILE* _stdlog = NULL
static

Definition at line 142 of file rpmlog.c.

Referenced by rpmlogDefault(), and rpmlogSetFile().

int nrecs = 0
static

Definition at line 14 of file rpmlog.c.

Referenced by rpmlogClose(), rpmlogCode(), rpmlogGetNrecs(), rpmlogMessage(), rpmlogPrint(), and vrpmlog().

rpmlogRec recs = NULL
static
unsigned rpmlogMask = RPMLOG_UPTO( RPMLOG_NOTICE )
static

Definition at line 100 of file rpmlog.c.

Referenced by rpmlogSetMask(), and vrpmlog().

const char* rpmlogMsgPrefix[]
static
Initial value:
= {
N_("fatal error: "),
N_("fatal error: "),
N_("fatal error: "),
N_("error: "),
N_("warning: "),
"",
"",
"D: ",
}

Definition at line 185 of file rpmlog.c.

Referenced by rpmlogLevelPrefix().