|
|
1.1 ! root 1: /* ! 2: * Copyright (c) 2013 Free Software Foundation. ! 3: * ! 4: * This program is free software; you can redistribute it and/or modify ! 5: * it under the terms of the GNU General Public License as published by ! 6: * the Free Software Foundation; either version 2 of the License, or ! 7: * (at your option) any later version. ! 8: * ! 9: * This program is distributed in the hope that it will be useful, ! 10: * but WITHOUT ANY WARRANTY; without even the implied warranty of ! 11: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! 12: * GNU General Public License for more details. ! 13: * ! 14: * You should have received a copy of the GNU General Public License along ! 15: * with this program; if not, write to the Free Software Foundation, Inc., ! 16: * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ! 17: */ ! 18: ! 19: #ifndef _KERN_EXCEPTION_H_ ! 20: #define _KERN_EXCEPTION_H_ ! 21: ! 22: #include <ipc/ipc_types.h> ! 23: #include <ipc/ipc_kmsg.h> ! 24: ! 25: extern void ! 26: exception( ! 27: integer_t _exception, ! 28: integer_t code, ! 29: integer_t subcode) __attribute__ ((noreturn)); ! 30: ! 31: extern void ! 32: exception_try_task( ! 33: integer_t _exception, ! 34: integer_t code, ! 35: integer_t subcode) __attribute__ ((noreturn)); ! 36: ! 37: extern void ! 38: exception_no_server(void) __attribute__ ((noreturn)); ! 39: ! 40: extern void ! 41: exception_raise( ! 42: ipc_port_t dest_port, ! 43: ipc_port_t thread_port, ! 44: ipc_port_t task_port, ! 45: integer_t _exception, ! 46: integer_t code, ! 47: integer_t subcode) __attribute__ ((noreturn)); ! 48: ! 49: extern kern_return_t ! 50: exception_parse_reply(ipc_kmsg_t kmsg); ! 51: ! 52: extern void ! 53: exception_raise_continue(void) __attribute__ ((noreturn)); ! 54: ! 55: extern void ! 56: exception_raise_continue_slow( ! 57: mach_msg_return_t mr, ! 58: ipc_kmsg_t kmsg, ! 59: mach_port_seqno_t seqno) __attribute__ ((noreturn)); ! 60: ! 61: extern void ! 62: exception_raise_continue_fast( ! 63: ipc_port_t reply_port, ! 64: ipc_kmsg_t kmsg) __attribute__ ((noreturn)); ! 65: ! 66: #endif /* _KERN_EXCEPTION_H_ */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.