xref: /netbsd-src/sys/arch/acorn32/stand/lib/riscoserrors.c (revision 46dbb0f225de881ae7fe4bd4ed653fc9b48a7343)
1 /*	$NetBSD: riscoserrors.c,v 1.1 2002/12/28 23:57:39 reinoud Exp $	*/
2 
3 /*-
4  * Copyright (c) 2001 Ben Harris
5  * All rights reserved.
6  *
7  * Redistribution and use in source and binary forms, with or without
8  * modification, are permitted provided that the following conditions
9  * are met:
10  * 1. Redistributions of source code must retain the above copyright
11  *    notice, this list of conditions and the following disclaimer.
12  * 2. Redistributions in binary form must reproduce the above copyright
13  *    notice, this list of conditions and the following disclaimer in the
14  *    documentation and/or other materials provided with the distribution.
15  * 3. The name of the author may not be used to endorse or promote products
16  *    derived from this software without specific prior written permission.
17  *
18  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
19  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
20  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
21  * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
22  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
23  * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
24  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
25  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
27  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28  */
29 
30 #include <lib/libsa/stand.h>
31 #include <riscoscalls.h>
32 
33 int
riscos_errno(os_error * error)34 riscos_errno(os_error *error)
35 {
36 
37 	printf("%s\n", error->errmess);
38 	switch (error->errnum) {
39 	case error_IS_ADIR:
40 		return EISDIR;
41 	case error_TOO_MANY_OPEN_FILES:
42 		return ENFILE;
43 	case error_FILE_NOT_FOUND:
44 		return ENOENT;
45 	default:
46 		return EIO;
47 	}
48 }
49