home *** CD-ROM | disk | FTP | other *** search
- /***
- *error.h - disked definitions/declarations for errno/perror() like error
- * handling.
- *
- *Copyright (c) 1991-1995, Gregg Jennings. All wrongs reserved.
- * P O Box 200, Falmouth, MA 02541-0200
- *
- *Purpose:
- * Error messages.
- *
- *Notice:
- * This progam may be freely used and distributed. Any distrubution
- * with modifications must retain the above copyright statement and
- * modifications noted.
- * No pulp-publication, in whole or in part, permitted without
- * permission (magazines or books).
- *******************************************************************************/
-
- /* errno-like error information */
-
- struct error_t {
- const char *mod; /* module name */
- const char *func; /* function name */
- const char *msg; /* error message */
- const char *arg; /* error argument */
- const char *info; /* error or OS information */
- int num; /* error number */
- };
-
- /* global (or shared) error conditions */
-
- enum ERROR_MSG {
- REQ_DOS_3, /* files.c */
- NO_MEM,
- FAT_PHASE,
- INV_CLUS,
- INV_ST_CLUS,
- NUM_FILES,
- ALLOC_ZERO, /* alloc.c */
- FREE_NULL,
- HEAP_ERROR,
- ALLOC_FAIL,
- NUM_ERR_MSG
- };
-
- extern struct error_t error;
- extern const char *err_msg[NUM_ERR_MSG];
-
- extern void printerror(int ext);
- extern void set_error(const char *msg, const char *mod, int err, const char *func);
- extern void set_err_num(int error);
- extern void set_err_arg(const char *fmt, ...);
- extern void set_err_info(const char *fmt, ...);
-