
1: /* 2: * Mach Operating System 3: * Copyright (c) 1991,1990,1989 Carnegie Mellon University 4: * All Rights Reserved. 5: * 6: * Permission to use, copy, modify and distribute this software and its 7: * documentation is hereby granted, provided that both the copyright 8: * notice and this permission notice appear in all copies of the 9: * software, derivative works or modified versions, and any portions 10: * thereof, and that both notices appear in supporting documentation. 11: * 12: * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS" 13: * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR 14: * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE. 15: * 16: * Carnegie Mellon requests users of this software to return to 17: * 18: * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU 19: * School of Computer Science 20: * Carnegie Mellon University 21: * Pittsburgh PA 15213-3890 22: * 23: * any improvements or extensions that they make and grant Carnegie Mellon 24: * the rights to redistribute these changes. 25: */ 26: 27: /* This file was broken out from: 28: 29: Revision 2.3 92/04/01 19:38:18 rpd 30: 31: The static do_compat function is renamed to be globally accessible. 32: */ 33: 34: #include <mach/error.h> 35: #include <mach_error.h> 36: #include <errorlib.h> 37: 38: 39: void 40: __mach_error_map_compat(mach_error_t *org_err) 41: { 42: mach_error_t err = *org_err; 43: 44: /* 45: * map old error numbers to 46: * to new error sys & subsystem 47: */ 48: 49: if ((-200 < err) && (err <= -100)) 50: err = -(err + 100) | IPC_SEND_MOD; 51: else if ((-300 < err) && (err <= -200)) 52: err = -(err + 200) | IPC_RCV_MOD; 53: else if ((-400 < err) && (err <= -300)) 54: err = -(err + 300) | MACH_IPC_MIG_MOD; 55: else if ((1000 <= err) && (err < 1100)) 56: err = (err - 1000) | SERV_NETNAME_MOD; 57: else if ((1600 <= err) && (err < 1700)) 58: err = (err - 1600) | SERV_ENV_MOD; 59: else if ((27600 <= err) && (err < 27700)) 60: err = (err - 27600) | SERV_EXECD_MOD; 61: else if ((2500 <= err) && (err < 2600)) 62: err = (err - 2500) | KERN_DEVICE_MOD; 63: else if ((5000 <= err) && (err < 5100)) 64: err = (err - 5000) | BOOTSTRAP_FS_MOD; 65: 66: *org_err = err; 67: }