home *** CD-ROM | disk | FTP | other *** search
- RCS_ID_C="$Id: printuserfault.c,v 3.1 1994/03/29 12:56:35 ppessi Exp $";
- /*
- * printuserfault.c --- Print a usergroup error message (DOS)
- *
- * Author: ppessi <Pekka.Pessi@hut.fi>
- *
- * Copyright © 1993 AmiTCP/IP Group, <amitcp-group@hut.fi>
- * Helsinki University of Technology, Finland.
- * All rights reserved.
- *
- * Created : Sat Mar 20 02:10:14 1993 ppessi
- * Last modified: Mon Mar 28 02:26:31 1994 ppessi
- */
-
- /****** net.lib/PrintUserFault ************************************************
-
- NAME
- PrintUserFault - socket error messages
-
- SYNOPSIS
- PrintUserFault(code, banner)
- void PrintUserFault(LONG, const UBYTE *)
-
- FUNCTION
- The PrintUserFault() function finds the error message corresponding to
- the code and writes it, followed by a newline, to the standard error
- or Output() filehandle. If the argument string is non-NULL it is
- preappended to the message string and separated from it by a colon and
- space (`: '). If string is NULL only the error message string is
- printed.
-
- NOTES
- The PrintUserFault() function used the DOS io functions. It is
- recommended to use PrintUserFault() when the standard C IO functions
- are not otherwise in use.
-
- SEE ALSO
- strerror(), perror(), <netinclude:sys/errno.h>
-
- ******************************************************************************
- */
-
- #include <errno.h>
-
- #include <exec/execbase.h>
- extern struct ExecBase *SysBase;
-
- #include <dos/dos.h>
- #include <dos/dosextens.h>
-
- #if __SASC
- #include <proto/dos.h>
- #include <proto/usergroup.h>
- #elif __GNUC__
- #include <inline/dos.h>
- #endif
-
- void PrintUserFault(LONG code, const UBYTE *banner)
- {
- struct Process *p = (struct Process *)SysBase->ThisTask;
- BPTR Stderr = p->pr_CES ? p->pr_CES : p->pr_COS;
-
- if (banner != NULL) {
- FPuts(Stderr, banner);
- FPuts(Stderr, ": ");
- }
- FPuts(Stderr, ug_StrError(code));
- FPuts(Stderr, "\n");
- Flush(Stderr);
- }
-
-