    /*====================================================================*
     *
     *   signed extra (signed status, errno_t number, int argc, char const * arg []);
     *
     *   error.h
     *
     *   print error message plus excess argments on stdout;
     *
     *   Motley Tools by Charles Maier <cmaier@cmassoc.net>;
     *   Copyright (c) 2001-2006 by Charles Maier Associates;
     *   Licensed under the Internet Software Consortium License;
     *
     *--------------------------------------------------------------------*/

    #ifndef EXTRA_SOURCE
    #define EXTRA_SOURCE

    #include <stdio.h>
    #include <stdlib.h>
    #include <stdarg.h>
    #include <string.h>

    #include "../tools/types.h"
    #include "../tools/error.h"

    signed extra (signed status, errno_t number, int argc, char const * argv [])

    {
    	extern char const *program_name;
    	if ((program_name) && (*program_name))
    	{
    		fprintf (stderr, "%s: ", program_name);
    	}
    	if (number)
    	{
    		fprintf (stderr, "%s: ", strerror (number));
    	}
    	fprintf (stderr, "Excess data: ");
    	while ((argc) && (* argv))
    	{
    		fprintf (stderr, "%s ", * argv);
    		argv++;
    		argc--;
    	}
    	fprintf (stderr, "\n");
    	fflush (stderr);
    	if (status)
    	{
    		exit (status);
    	}
    	return (-1);
    }

    #endif

[PREV] [HOME] [NEXT]