|
|
1.1.1.2 ! root 1: /* 1.1 root 2: * Mach Operating System 3: * Copyright (c) 1991,1990,1989 Carnegie Mellon University 4: * All Rights Reserved. 1.1.1.2 ! root 5: * 1.1 root 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. 1.1.1.2 ! root 11: * 1.1 root 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. 1.1.1.2 ! root 15: * 1.1 root 16: * Carnegie Mellon requests users of this software to return to 1.1.1.2 ! root 17: * 1.1 root 18: * Software Distribution Coordinator or [email protected] 19: * School of Computer Science 20: * Carnegie Mellon University 21: * Pittsburgh PA 15213-3890 1.1.1.2 ! root 22: * 1.1 root 23: * any improvements or extensions that they make and grant Carnegie Mellon 24: * the rights to redistribute these changes. 25: */ 26: /* 27: */ 28: /* 29: * File: ipc/ipc_right.h 30: * Author: Rich Draves 31: * Date: 1989 32: * 33: * Declarations of functions to manipulate IPC capabilities. 34: */ 35: 36: #ifndef _IPC_IPC_RIGHT_H_ 37: #define _IPC_IPC_RIGHT_H_ 38: 39: #include <mach_ipc_compat.h> 40: 41: #include <mach/boolean.h> 42: #include <mach/kern_return.h> 43: #include <ipc/ipc_port.h> 44: 45: #define ipc_right_lookup_read ipc_right_lookup_write 46: 47: extern kern_return_t 48: ipc_right_lookup_write(/* ipc_space_t, mach_port_t, ipc_entry_t * */); 49: 50: extern boolean_t 51: ipc_right_reverse(/* ipc_space_t, ipc_object_t, 52: mach_port_t *, ipc_entry_t * */); 53: 54: extern kern_return_t 55: ipc_right_dnrequest(/* ipc_space_t, mach_port_t, boolean_t, 56: ipc_port_t, ipc_port_t * */); 57: 58: extern ipc_port_t 59: ipc_right_dncancel(/* ipc_space_t, ipc_port_t, mach_port_t, ipc_entry_t */); 60: 61: #define ipc_right_dncancel_macro(space, port, name, entry) \ 62: (((entry)->ie_request == 0) ? IP_NULL : \ 63: ipc_right_dncancel((space), (port), (name), (entry))) 64: 65: extern boolean_t 66: ipc_right_inuse(/* ipc_space_t, mach_port_t, ipc_entry_t */); 67: 68: extern boolean_t 69: ipc_right_check(/* ipc_space_t, mach_port_t, ipc_entry_t, ipc_port_t */); 70: 71: extern void 72: ipc_right_clean(/* ipc_space_t, mach_port_t, ipc_entry_t */); 73: 74: extern kern_return_t 75: ipc_right_destroy(/* ipc_space_t, mach_port_t, ipc_entry_t */); 76: 77: extern kern_return_t 78: ipc_right_dealloc(/* ipc_space_t, mach_port_t, ipc_entry_t */); 79: 80: extern kern_return_t 81: ipc_right_delta(/* ipc_space_t, mach_port_t, ipc_entry_t, 82: mach_port_right_t, mach_port_delta_t */); 83: 84: extern kern_return_t 85: ipc_right_info(/* ipc_space_t, mach_port_t, ipc_entry_t, 86: mach_port_type_t *, mach_port_urefs_t * */); 87: 88: extern boolean_t 89: ipc_right_copyin_check(/* ipc_space_t, mach_port_t, ipc_entry_t, 90: mach_msg_type_name_t */); 91: 92: extern kern_return_t 93: ipc_right_copyin(/* ipc_space_t, mach_port_t, ipc_entry_t, 94: mach_msg_type_name_t, boolean_t, 95: ipc_object_t *, ipc_port_t * */); 96: 97: extern void 98: ipc_right_copyin_undo(/* ipc_space_t, mach_port_t, ipc_entry_t, 99: mach_msg_type_name_t, ipc_object_t, ipc_port_t */); 100: 101: extern kern_return_t 102: ipc_right_copyin_two(/* ipc_space_t, mach_port_t, ipc_entry_t, 103: ipc_object_t *, ipc_port_t * */); 104: 105: extern kern_return_t 106: ipc_right_copyout(/* ipc_space_t, mach_port_t, ipc_entry_t, 107: mach_msg_type_name_t, boolean_t, ipc_object_t */); 108: 109: extern kern_return_t 110: ipc_right_rename(/* ipc_space_t, mach_port_t, ipc_entry_t, 111: mach_port_t, ipc_entry_t */); 112: 113: #if MACH_IPC_COMPAT 114: 115: extern kern_return_t 116: ipc_right_copyin_compat(/* ipc_space_t, mach_port_t, ipc_entry_t, 117: mach_msg_type_name_t, boolean_t, ipc_object_t * */); 118: 119: extern kern_return_t 120: ipc_right_copyin_header(/* ipc_space_t, mach_port_t, ipc_entry_t, 121: ipc_object_t *, mach_msg_type_name_t * */); 122: 1.1.1.2 ! root 123: #endif /* MACH_IPC_COMPAT */ ! 124: #endif /* _IPC_IPC_RIGHT_H_ */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.