void log_write(enum log_type type, const char *str, ...) { va_list args; va_start(args, str); log_vwrite(type, str, args); va_end(args); }
void log_write(log_context lc, int category, int level, const char *format, ...) { va_list args; va_start(args, format); log_vwrite(lc, category, level, format, args); va_end(args); }
int log_escribir(log_t *log, const char *program_name, e_message_type type, const char* format, ...) { va_list args_list; va_start(args_list, format); return log_vwrite(log, program_name, type, format, args_list); }
/* Log a debug message. */ void log_debug(const char *msg, ...) { va_list ap; va_start(ap, msg); log_vwrite(msg, ap); va_end(ap); }
/* * write into the logfile * Nothing fancy here... */ void log_write (const char *str, ...) { va_list param; va_start (param, str); log_vwrite (str, param); va_end (param); }
/* Write a log message. */ void log_write(int pri, const char *msg, ...) { va_list ap; va_start(ap, msg); log_vwrite(pri, msg, ap); va_end(ap); }
/* Log a critical error, with error string if necessary, and die. */ __dead void log_vfatal(const char *msg, va_list ap) { char *fmt; if (errno != 0) { if (asprintf(&fmt, "fatal: %s: %s", msg, strerror(errno)) == -1) exit(1); log_vwrite(LOG_CRIT, fmt, ap); } else { if (asprintf(&fmt, "fatal: %s", msg) == -1) exit(1); log_vwrite(LOG_CRIT, fmt, ap); } free(fmt); exit(1); }
/* Log a warning. */ void printflike1 log_warnx(const char *msg, ...) { va_list ap; va_start(ap, msg); log_vwrite(LOG_CRIT, msg, ap); va_end(ap); }
/* Log a debug message at level 3. */ void printflike1 log_debug3(const char *msg, ...) { va_list ap; if (log_level > 2) { va_start(ap, msg); log_vwrite(LOG_DEBUG, msg, ap); va_end(ap); } }
/* Log an informational message. */ void printflike1 log_info(const char *msg, ...) { va_list ap; if (log_level > -1) { va_start(ap, msg); log_vwrite(LOG_INFO, msg, ap); va_end(ap); } }
/* Log a critical error and die. */ __dead void log_fatalx(const char *msg, ...) { char *fmt; va_list ap; va_start(ap, msg); if (asprintf(&fmt, "fatal: %s", msg) == -1) exit(1); log_vwrite(fmt, ap); exit(1); }
/* Log a critical error with error string and die. */ __dead void printflike1 log_fatal(const char *msg, ...) { char *fmt; va_list ap; va_start(ap, msg); if (asprintf(&fmt, "fatal: %s: %s", msg, strerror(errno)) == -1) exit(1); log_vwrite(fmt, ap); exit(1); }
/* Log a warning with error string. */ void printflike1 log_warn(const char *msg, ...) { va_list ap; char *fmt; va_start(ap, msg); if (asprintf(&fmt, "%s: %s", msg, strerror(errno)) == -1) exit(1); log_vwrite(LOG_CRIT, fmt, ap); free(fmt); va_end(ap); }
/** Log a debug message using a va_list. * If the current #debuglevel is less than \a level, do not display. * @param level Debug level for message. * @param form Format string, passed to log_vwrite(). * @param vl Varargs argument list for format string. */ void vdebug(int level, const char *form, va_list vl) { static int loop = 0; int err = errno; if (!loop && (debuglevel >= 0) && (level <= debuglevel)) { loop = 1; log_vwrite(LS_DEBUG, L_DEBUG, 0, form, vl); loop = 0; } errno = err; }