From ec1ce068edb4cc0b222008b295b22c565e5339df Mon Sep 17 00:00:00 2001 From: Markus Teich Date: Sun, 12 Jun 2016 00:55:09 +0200 Subject: update util: logging and assertions --- util.h | 43 +++++++++++++++++++++++-------------------- 1 file changed, 23 insertions(+), 20 deletions(-) (limited to 'util.h') diff --git a/util.h b/util.h index f40dd36..7e4df86 100644 --- a/util.h +++ b/util.h @@ -1,25 +1,28 @@ -/* This file is part of libgotr. - * (C) 2014-2015 Markus Teich, Jannik Theiß - * - * libgotr is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published - * by the Free Software Foundation; either version 3, or (at your - * option) any later version. - * - * libgotr 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 - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with libgotr; see the file LICENSE. If not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - #ifndef _BRANDT_UTIL_H #define _BRANDT_UTIL_H -void brandt_eprintf(const char *format, ...); +void eprintf(const char *fmt, ...); +void weprintf(const char *fmt, ...); + +# undef brandt_assert +# undef brandt_assert_perror +# undef brandt_assert_gpgerr + +#ifdef NDEBUG + +# define brandt_assert(expr) ((void)(0)) +# define brandt_assert_perror(errnum) ((void)(0)) +# define brandt_assert_gpgerr(errnum) ((void)(0)) + +#else + +# define brandt_assert(expr) ((expr) ? (void)(0) : \ +eprintf("Assertion failed in file %s line %d function %s: %s", __FILE__, __LINE__, __PRETTY_FUNCTION__, (#expr))) +# define brandt_assert_perror(errnum) (!(errnum) ? (void)(0) : \ +eprintf("Assertion failed in file %s line %d function %s:", __FILE__, __LINE__, __PRETTY_FUNCTION__)) +# define brandt_assert_gpgerr(errnum) (!(errnum) ? (void)(0) : \ +eprintf("Assertion failed in file %s line %d function %s: %s", __FILE__, __LINE__, __PRETTY_FUNCTION__, gcry_strerror((errnum)))) + +#endif #endif -- cgit v1.2.3