*** /dev/null Sat Nov 23 01:02:23 2024
--- - Sat Nov 23 01:02:30 2024
***************
*** 0 ****
--- 1,61 ----
+ /* OSSP rc - Run-command processor
+ ** Copyright (c) 2002 Ralf S. Engelschall
+ ** Copyright (c) 2002 Cable & Wireless Deutschland GmbH
+ ** Copyright (c) 2002 The OSSP Project <http://www.ossp.org/>
+ **
+ ** This file is part of OSSP rc, a portable Run-command processor
+ ** which can be found at http://www.ossp.org/pkg/lib/rc/
+ **
+ ** Permission to use, copy, modify, and distribute this software for
+ ** any purpose with or without fee is hereby granted, provided that
+ ** the above copyright notice and this permission notice appear in all
+ ** copies.
+ **
+ ** THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
+ ** WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ ** MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ ** IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
+ ** CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ ** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ ** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+ ** USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ ** ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ ** OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ ** OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ ** SUCH DAMAGE.
+ **
+ ** rc_error.c: Run-command processor ISO C source file
+ */
+
+ #include <stdlib.h> /* Just for calling 'exit(3)' once */
+ #include "rc.h" /* Public interfaces */
+
+
+ /************************************************
+ * rcError(ex_t) *
+ * Main rc error handler *
+ ************************************************/
+ void rcError(ex_t Localerr)
+ {
+ if (FAILED((rc_return_t)Localerr.ex_value)) { /* Error condition */
+ if ((rc_return_t)Localerr.ex_value == RC_ERR_TRM)
+ exit(0);
+ else if ((rc_return_t)Localerr.ex_value == RC_ERR_FNC)
+ fprintf(stderr, " Error condition, function file could not be opened.\n");
+ else if ((rc_return_t)Localerr.ex_value == RC_ERR_DIR)
+ fprintf(stderr, " Error condition, location dir could not be opened.\n");
+ else if ((rc_return_t)Localerr.ex_value == RC_ERR_RCF)
+ fprintf(stderr, " Error condition, rc file could not be opened.\n");
+ else
+ fprintf(stderr, " Error condition of class '%s',\n exception %d in %s:%s():%d.\n", (char *)Localerr.ex_class, (int)Localerr.ex_value, Localerr.ex_file, Localerr.ex_func, Localerr.ex_line);
+ exit(1); /* Return failure */
+ }
+ #ifdef DEBUG
+ else /* Warning condition */
+ fprintf(stderr, " Warning condition of class '%s',\n exception %d in %s:%s():%d.\n", (char *)Localerr.ex_class, (int)Localerr.ex_value, Localerr.ex_file, Localerr.ex_func, Localerr.ex_line);
+ #else
+ else /* Warning condition */
+ RC_NOP; /* No operation on warnings */
+ #endif
+ }
+
|