tlsgate

TLS proxy
git clone git://git.akobets.xyz/tlsgate
Log | Files | Refs | README | LICENSE

util.c (908B)


      1 #include <errno.h>
      2 #include <stdarg.h>
      3 #include <stdio.h>
      4 #include <stdlib.h>
      5 #include <string.h>
      6 
      7 #include "util.h"
      8 
      9 extern char *argv0;
     10 
     11 void
     12 err(const char *fmt, ...)
     13 {
     14   va_list ap;
     15 
     16   fprintf(stderr, "%s: ", argv0);
     17 
     18   va_start(ap, fmt);
     19   vfprintf(stderr, fmt, ap);
     20   va_end(ap);
     21 
     22   fprintf(stderr, ": %s\n", strerror(errno));
     23 
     24   exit(1);
     25 }
     26 
     27 void
     28 errx(const char *fmt, ...)
     29 {
     30   va_list ap;
     31 
     32   fprintf(stderr, "%s: ", argv0);
     33 
     34   va_start(ap, fmt);
     35   vfprintf(stderr, fmt, ap);
     36   va_end(ap);
     37 
     38   fputc('\n', stderr);
     39 
     40   exit(1);
     41 }
     42 
     43 void
     44 warn(const char *fmt, ...)
     45 {
     46   va_list ap;
     47 
     48   fprintf(stderr, "%s: ", argv0);
     49 
     50   va_start(ap, fmt);
     51   vfprintf(stderr, fmt, ap);
     52   va_end(ap);
     53 
     54   fprintf(stderr, ": %s\n", strerror(errno));
     55 }
     56 
     57 void
     58 warnx(const char *fmt, ...)
     59 {
     60   va_list ap;
     61 
     62   fprintf(stderr, "%s: ", argv0);
     63 
     64   va_start(ap, fmt);
     65   vfprintf(stderr, fmt, ap);
     66   va_end(ap);
     67 
     68   fputc('\n', stderr);
     69 }