diff options
| -rw-r--r-- | Makefile | 2 | ||||
| -rw-r--r-- | hktool.c | 4 | ||||
| -rw-r--r-- | log.c | 99 | ||||
| -rw-r--r-- | log.h | 42 | ||||
| -rw-r--r-- | util.c | 3 | 
5 files changed, 3 insertions, 147 deletions
@@ -15,7 +15,7 @@ CFLAGS = -std=c11 -O2 -flto $(WARNINGS) -MMD -MP $(shell $(PKG_CONFIG) --cflags  LDFLAGS = -Wl,--as-needed -O2 -flto  LDLIBS = $(shell $(PKG_CONFIG) --libs $(LIBS)) -OBJ := hktool.o halfkay.o log.o params.o util.o eprintf.o +OBJ := hktool.o halfkay.o params.o util.o eprintf.o  PREFIX ?= /usr/local @@ -24,7 +24,6 @@  #include <unistd.h>  #include "halfkay.h" -#include "log.h"  #include "eprintf.h"  #include "params.h" @@ -67,8 +66,7 @@ int main(int argc, char **argv)  	int opt;  	struct flashparams fp; -	argv0 = argv[0] != NULL ? argv[0] : "hktool"; -	setprogname(argv0); +	setprogname(argv[0] != NULL ? argv[0] : "hktool");  	while (opt = getopt(argc, argv, "f:h-lvr"), opt != -1) {  		switch (opt) { @@ -1,99 +0,0 @@ -/*  log.c  --  Error and warning messages. - * - * Copyright (C) 2016 Tomasz Kramkowski <tk@the-tk.com> - * - *  This program is free software; you can redistribute it and/or modify - *  it under the terms of the GNU General Public License as published by - *  the Free Software Foundation; either version 2 of the License, or - *  (at your option) any later version. - * - *  This program is distributed in the hope that it will be useful, - *  but WITHOUT ANY WARRANTY; without even the implied warranty of - *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the - *  GNU General Public License for more details. - * - *  You should have received a copy of the GNU General Public License along - *  with this program; if not, write to the Free Software Foundation, Inc., - *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - */ -#include <assert.h> -#include <stdarg.h> -#include <stdio.h> -#include <stdlib.h> -#include <string.h> - -#include "log.h" - -const char *argv0; - -void error(int errnum, const char *fmt, ...) -{ -	assert(fmt); - -	va_list va; - -	fprintf(stderr, "%s: error: ", argv0); - -	va_start(va, fmt); -	vfprintf(stderr, fmt, va); -	va_end(va); - -	if (errnum) -		fprintf(stderr, ": %s", strerror(errnum)); - -	fputc('\n', stderr); - -	exit(EXIT_FAILURE); -} - -void errorat(int errnum, const char *file, long line, const char *fmt, ...) -{ -	assert(file && fmt); - -	va_list va; - -	fprintf(stderr, "%s:%s:%ld: error: ", argv0, file, line); - -	va_start(va, fmt); -	vfprintf(stderr, fmt, va); -	va_end(va); - -	if (errnum) -		fprintf(stderr, ": %s", strerror(errnum)); - -	fputc('\n', stderr); - -	exit(EXIT_FAILURE); -} - -void warning(int errnum, const char *fmt, ...) -{ -	va_list ap; - -	fprintf(stderr, "%s: warning: ", argv0); - -	va_start(ap, fmt); -	vfprintf(stderr, fmt, ap); -	va_end(ap); - -	if (errnum) -		fprintf(stderr, ": %s", strerror(errnum)); - -	fputc('\n', stderr); -} - -void warningat(int errnum, const char *file, long line, const char *fmt, ...) -{ -	va_list ap; - -	fprintf(stderr, "%s:%s:%ld: warning: ", argv0, file, line); - -	va_start(ap, fmt); -	vfprintf(stderr, fmt, ap); -	va_end(ap); - -	if (errnum) -		fprintf(stderr, ": %s", strerror(errnum)); - -	fputc('\n', stderr); -} @@ -1,42 +0,0 @@ -/* log.h  --  Error and warning messages. - * - *  Copyright (C) 2016 Tomasz Kramkowski <tk@the-tk.com> - * - *  This program is free software; you can redistribute it and/or modify - *  it under the terms of the GNU General Public License as published by - *  the Free Software Foundation; either version 2 of the License, or - *  (at your option) any later version. - * - *  This program is distributed in the hope that it will be useful, - *  but WITHOUT ANY WARRANTY; without even the implied warranty of - *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the - *  GNU General Public License for more details. - * - *  You should have received a copy of the GNU General Public License along - *  with this program; if not, write to the Free Software Foundation, Inc., - *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - */ -#ifndef LOG_H -#define LOG_H - -#include <stdnoreturn.h> - -#define EMSG_ALLOC "Could not allocate memory" -#define EMSG_OPEN "Could not open '%s'" -#define EMSG_READ "Could not read '%s'" -#define EMSG_SZOP "Arithmetic operation on size_t would wrap" -#define EMSG_GNOMEM "A call to glob ran out of memory" - -extern const char *argv0; - -noreturn void error(int errnum, const char *fmt, ...) -	__attribute__ ((format(printf, 2, 3))); -noreturn void errorat(int errnum, const char *file, long line, const char *fmt, ...) -	__attribute__ ((format(printf, 4, 5))); - -void warning(int errnum, const char *fmt, ...) -	__attribute__ ((format(printf, 2, 3))); -void warningat(int errnum, const char *file, long line, const char *fmt, ...) -	__attribute__ ((format(printf, 4, 5))); - -#endif /* LOG_H */ @@ -24,7 +24,6 @@  #include <string.h>  #include <ctype.h> -#include "log.h"  #include "eprintf.h"  #include "util.h" @@ -34,7 +33,7 @@ void *xstrmalloc(size_t size)  	size_t nsize;  	if (size == SIZE_MAX) -		error(0, EMSG_ALLOC); +		eprintf("xstrmalloc(%zu) failed: %zu == SIZE_MAX", size, size);  	return emalloc(nsize);  }  | 
