/*
 *	ERRNO.H		system error codes
 */

#ifndef ERRNO_H
#define	ERRNO_H

extern	int		errno;		/* system error number */
extern	int		sys_nerr;	/* largest (negative) error number */
extern	char		**sys_errlist;	/* system error message text */
extern	char		*strerror();	/* error string retrieval function */

#define	E_OK		0		/* no error */
#ifndef ERROR
#define	ERROR		(-1)		/* general error */
#endif

/* All clib errors are positive */

#define FOPEN_MODE	1	/* Unrecognised fopen mode */
#define UNGET_TWICE	2	/* Attempt to unget twice on a stream */
#define UNKNOWN_FILE	3	/* file pointer was not in _iob[] */
#define EDOM		4	/* domain error */
#define ERANGE		5	/* range error */
#define WRITE_FAILED	6	/* Failed to write some info */
#define SEEK_FAILED	7	/* Seek failed */

#define FATAL_ERROR	1000

#define FILE_OFLOW	1001	/* Attempt to open too many files */
#define MALLOC_ZERO	1002	/* allocation function returned zero */
#define NOT_YET_DONE	1003	/* bit of c.lib not yet implemented */
#define ASSERT_WRONG	1004	/* An assert was wrong */
#define FP_ERROR	1005	/* floating point error */

#endif ERRNO_H
