clsync
Loading...
Searching...
No Matches
error.c File Reference
#include <stdlib.h>
#include <stdio.h>
#include <errno.h>
#include <string.h>
#include <stdarg.h>
#include <syslog.h>
#include <pthread.h>
#include <sys/types.h>
#include <unistd.h>
#include "macros.h"
#include "configuration.h"
#include "error.h"
#include "pthreadex.h"
Include dependency graph for error.c:

Go to the source code of this file.

Typedefs

typedef int(* outfunct_t) (const char *format,...)
 
typedef int(* voutfunct_t) (const char *format, va_list ap)
 
typedef void(* flushfunct_t) (int level)
 

Functions

static int printf_stderr (const char *fmt,...)
 
static int printf_stdout (const char *fmt,...)
 
static int vprintf_stderr (const char *fmt, va_list args)
 
static int vprintf_stdout (const char *fmt, va_list args)
 
static void flush_stderr (int level)
 
static void flush_stdout (int level)
 
static int vsyslog_buf (const char *fmt, va_list args)
 
static int syslog_buf (const char *fmt,...)
 
static void syslog_flush (int level)
 
void _critical (const char *const function_name, const char *fmt,...)
 
void _error (const char *const function_name, const char *fmt,...)
 
void _info (const char *const function_name, const char *fmt,...)
 
void _warning (const char *const function_name, const char *fmt,...)
 
void error_init (void *_outputmethod, int *_quiet, int *_verbose, int *_debug)
 
void error_init_ipc (ipc_type_t _ipc_type)
 
void error_deinit ()
 

Variables

static int zero = 0
 
static int three = 3
 
static int * outputmethod = &zero
 
static int * debug = &zero
 
static int * quiet = &zero
 
static int * verbose = &three
 
pthread_mutex_t * error_mutex_p = NULL
 
static char _syslog_buffer [(1<< 16)+1] = {0}
 
size_t _syslog_buffer_filled = 0
 
static outfunct_t outfunct []
 
static voutfunct_t voutfunct []
 
static flushfunct_t flushfunct []
 
ipc_type_t ipc_type
 

Typedef Documentation

◆ flushfunct_t

typedef void(* flushfunct_t) (int level)

Definition at line 164 of file error.c.

◆ outfunct_t

typedef int( * outfunct_t) (const char *format,...)

Definition at line 162 of file error.c.

◆ voutfunct_t

typedef int(* voutfunct_t) (const char *format, va_list ap)

Definition at line 163 of file error.c.

Function Documentation

◆ _critical()

void _critical ( const char *const function_name,
const char * fmt,
... )

Definition at line 184 of file error.c.

Here is the call graph for this function:

◆ _error()

void _error ( const char *const function_name,
const char * fmt,
... )

Definition at line 238 of file error.c.

Here is the call graph for this function:

◆ _info()

void _info ( const char *const function_name,
const char * fmt,
... )

Definition at line 270 of file error.c.

Here is the call graph for this function:

◆ _warning()

void _warning ( const char *const function_name,
const char * fmt,
... )

Definition at line 298 of file error.c.

Here is the call graph for this function:

◆ error_deinit()

void error_deinit ( )

Definition at line 389 of file error.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ error_init()

void error_init ( void * _outputmethod,
int * _quiet,
int * _verbose,
int * _debug )

Definition at line 356 of file error.c.

Here is the caller graph for this function:

◆ error_init_ipc()

void error_init_ipc ( ipc_type_t _ipc_type)

Definition at line 367 of file error.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ flush_stderr()

static void flush_stderr ( int level)
static

Definition at line 86 of file error.c.

◆ flush_stdout()

static void flush_stdout ( int level)
static

Definition at line 93 of file error.c.

◆ printf_stderr()

static int printf_stderr ( const char * fmt,
... )
static

Definition at line 55 of file error.c.

◆ printf_stdout()

static int printf_stdout ( const char * fmt,
... )
static

Definition at line 65 of file error.c.

◆ syslog_buf()

static int syslog_buf ( const char * fmt,
... )
static

Definition at line 146 of file error.c.

Here is the call graph for this function:

◆ syslog_flush()

static void syslog_flush ( int level)
static

Definition at line 156 of file error.c.

◆ vprintf_stderr()

static int vprintf_stderr ( const char * fmt,
va_list args )
static

Definition at line 75 of file error.c.

◆ vprintf_stdout()

static int vprintf_stdout ( const char * fmt,
va_list args )
static

Definition at line 80 of file error.c.

◆ vsyslog_buf()

static int vsyslog_buf ( const char * fmt,
va_list args )
static

Definition at line 104 of file error.c.

Here is the caller graph for this function:

Variable Documentation

◆ _syslog_buffer

char _syslog_buffer[(1<< 16)+1] = {0}
static

Definition at line 101 of file error.c.

◆ _syslog_buffer_filled

size_t _syslog_buffer_filled = 0

Definition at line 102 of file error.c.

◆ debug

int* debug = &zero
static

Definition at line 49 of file error.c.

◆ error_mutex_p

pthread_mutex_t* error_mutex_p = NULL

Definition at line 53 of file error.c.

◆ flushfunct

flushfunct_t flushfunct[]
static
Initial value:
= {
}
static void flush_stdout(int level)
Definition error.c:93
void(* flushfunct_t)(int level)
Definition error.c:164
static void syslog_flush(int level)
Definition error.c:156
static void flush_stderr(int level)
Definition error.c:86
@ OM_STDOUT
Definition error.h:71
@ OM_STDERR
Definition error.h:70
@ OM_SYSLOG
Definition error.h:72

Definition at line 178 of file error.c.

◆ ipc_type

Definition at line 366 of file error.c.

◆ outfunct

outfunct_t outfunct[]
static
Initial value:
= {
}
static int syslog_buf(const char *fmt,...)
Definition error.c:146
int(* outfunct_t)(const char *format,...)
Definition error.c:162
static int printf_stdout(const char *fmt,...)
Definition error.c:65
static int printf_stderr(const char *fmt,...)
Definition error.c:55

Definition at line 166 of file error.c.

◆ outputmethod

int* outputmethod = &zero
static

Definition at line 48 of file error.c.

◆ quiet

int* quiet = &zero
static

Definition at line 50 of file error.c.

◆ three

int three = 3
static

Definition at line 46 of file error.c.

◆ verbose

int* verbose = &three
static

Definition at line 51 of file error.c.

◆ voutfunct

voutfunct_t voutfunct[]
static
Initial value:
= {
}
static int vprintf_stdout(const char *fmt, va_list args)
Definition error.c:80
int(* voutfunct_t)(const char *format, va_list ap)
Definition error.c:163
static int vsyslog_buf(const char *fmt, va_list args)
Definition error.c:104
static int vprintf_stderr(const char *fmt, va_list args)
Definition error.c:75

Definition at line 172 of file error.c.

◆ zero

int zero = 0
static

Definition at line 45 of file error.c.