diff options
author | Igor Pashev <pashev.igor@gmail.com> | 2016-10-29 16:59:47 +0300 |
---|---|---|
committer | Igor Pashev <pashev.igor@gmail.com> | 2016-10-30 00:27:20 +0300 |
commit | bf5e1802f467b957f616da1ae939c8a10d8b86ce (patch) | |
tree | c5056e57dd6f2d7a89e146cf8eb5df138aa33088 /utils.c | |
download | tcp-bf5e1802f467b957f616da1ae939c8a10d8b86ce.tar.gz |
Initial commit
Diffstat (limited to 'utils.c')
-rw-r--r-- | utils.c | 77 |
1 files changed, 77 insertions, 0 deletions
@@ -0,0 +1,77 @@ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include <errno.h> +#include <fcntl.h> +#include <stdarg.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <sys/types.h> +#include <unistd.h> + +#include "utils.h" + +static void +info_va (const char *msg, va_list va) +{ + fprintf (stderr, "%s: ", progname); + vfprintf (stderr, msg, va); + fputs ("", stderr); +} + +void +info (const char *msg, ...) +{ + va_list ap; + + va_start (ap, msg); + info_va (msg, ap); + va_end (ap); +} + +static void +warning_va (const char *msg, va_list va) +{ + fprintf (stderr, "%s: WARNING: ", progname); + vfprintf (stderr, msg, va); + if (errno) + { + fprintf (stderr, ": %s", strerror (errno)); + } + fputs ("", stderr); +} + +void +warning (const char *msg, ...) +{ + va_list ap; + + va_start (ap, msg); + warning_va (msg, ap); + va_end (ap); +} + +static void +fatal_va (const char *msg, va_list va) +{ + fprintf (stderr, "%s: FATAL: ", progname); + vfprintf (stderr, msg, va); + if (errno) + { + fprintf (stderr, ": %s", strerror (errno)); + } + fputs ("", stderr); +} + +void +fatal (const char *msg, ...) +{ + va_list ap; + + va_start (ap, msg); + fatal_va (msg, ap); + va_end (ap); + exit (EXIT_FAILURE); +} |