123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 |
- /*====================================================================*
- *
- * error.h - error function definitions and declarations;
- *
- * this file is an alterantive to GNU header file of the same
- * name; in addition to standard GNU error function declarations,
- * some additional functions are declared;
- *
- * Motley Tools by Charles Maier <cmaier@cmassoc.net>;
- * Copyright 2001-2006 by Charles Maier Associates;
- * Licensed under the Internet Software Consortium License;
- *
- *--------------------------------------------------------------------*/
- #ifndef ERROR_HEADER
- #define ERROR_HEADER
- /*====================================================================*
- * system header files;
- *--------------------------------------------------------------------*/
- #include <errno.h>
- /*====================================================================*
- * custom header files;
- *--------------------------------------------------------------------*/
- #include "../tools/types.h"
- /*====================================================================*
- *
- *--------------------------------------------------------------------*/
- #if defined (WIN32)
- #define __func__ __FUNCTION__
- #endif
- /*====================================================================*
- * define error codes for systems that do not support POSIX codes;
- *--------------------------------------------------------------------*/
- #ifndef ECANCELED
- #define ECANCELED 0
- #endif
- #ifndef ENOTSUP
- #define ENOTSUP EPERM
- #endif
- #ifndef EBADMSG
- #define EBADMSG 0
- #endif
- #ifndef EPROTONOSUPPORT
- #define EPROTONOSUPPORT 124
- #endif
- #ifndef ENODATA
- #define ENODATA 0
- #endif
- #ifndef EOVERFLOW
- #define EOVERFLOW 0
- #endif
- /*====================================================================*
- * define common error message strings;
- *--------------------------------------------------------------------*/
- #define ERROR_NOTROOT "This program needs root privileges"
- #define ERROR_TOOMANY "Too many command line arguments"
- #define EXTRA_OPERAND(option, operand) error (0, 0, "Option '%c' and operand \"%s\" will be ignored!", option, operand);
- /*====================================================================*
- * declare GNU error() and error_at_line() functions;
- *--------------------------------------------------------------------*/
- #ifdef __GNUC__
- __attribute__ ((format (printf, 3, 4)))
- #endif
- signed error (signed status, errno_t number, char const * format, ...);
- /*====================================================================*
- * declare GNU error() function alternatives;
- *--------------------------------------------------------------------*/
- #ifdef __GNUC__
- __attribute__ ((format (printf, 3, 4)))
- #endif
- signed debug (signed status, char const * string, char const * format, ...);
- signed extra (signed status, errno_t number, int argc, char const * argv []);
- /*====================================================================*
- * end definitions and declarations;
- *--------------------------------------------------------------------*/
- #endif
|