1/* 2 * Copyright (c) 2002,2000 Apple Computer, Inc. All rights reserved. 3 * 4 * @APPLE_LICENSE_HEADER_START@ 5 * 6 * The contents of this file constitute Original Code as defined in and 7 * are subject to the Apple Public Source License Version 1.1 (the 8 * "License"). You may not use this file except in compliance with the 9 * License. Please obtain a copy of the License at 10 * http://www.apple.com/publicsource and read it before using this file. 11 * 12 * This Original Code and all software distributed under the License are 13 * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER 14 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, 15 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, 16 * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the 17 * License for the specific language governing rights and limitations 18 * under the License. 19 * 20 * @APPLE_LICENSE_HEADER_END@ 21 */ 22/* 23 * @OSF_COPYRIGHT@ 24 */ 25/* 26 * Mach Operating System 27 * Copyright (c) 1991,1990,1989,1988 Carnegie Mellon University 28 * All Rights Reserved. 29 * 30 * Permission to use, copy, modify and distribute this software and its 31 * documentation is hereby granted, provided that both the copyright 32 * notice and this permission notice appear in all copies of the 33 * software, derivative works or modified versions, and any portions 34 * thereof, and that both notices appear in supporting documentation. 35 * 36 * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS" 37 * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR 38 * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE. 39 * 40 * Carnegie Mellon requests users of this software to return to 41 * 42 * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU 43 * School of Computer Science 44 * Carnegie Mellon University 45 * Pittsburgh PA 15213-3890 46 * 47 * any improvements or extensions that they make and grant Carnegie Mellon 48 * the rights to redistribute these changes. 49 */ 50/* 51 */ 52/* 53 * Mach kernel standard interface type declarations 54 */ 55 56#ifndef _MACH_STD_TYPES_DEFS_ 57#define _MACH_STD_TYPES_DEFS_ 58 59/* from ISO/IEC 988:1999 spec */ 60/* 7.18.1.1 Exact-width integer types */ 61 62type int8_t = MACH_MSG_TYPE_INTEGER_8; 63type uint8_t = MACH_MSG_TYPE_INTEGER_8; 64type int16_t = MACH_MSG_TYPE_INTEGER_16; 65type uint16_t = MACH_MSG_TYPE_INTEGER_16; 66type int32_t = MACH_MSG_TYPE_INTEGER_32; 67type uint32_t = MACH_MSG_TYPE_INTEGER_32; 68type int64_t = MACH_MSG_TYPE_INTEGER_64; 69type uint64_t = MACH_MSG_TYPE_INTEGER_64; 70 71/* 72 * Legacy fixed-length Mach types which should 73 * be replaced with the Standard types from above. 74 */ 75type int32 = int32_t; 76type unsigned32 = uint32_t; 77type int64 = int64_t; 78type unsigned64 = uint64_t; 79 80/* 81 * Other fixed length Mach types. 82 */ 83type char = MACH_MSG_TYPE_CHAR; 84type boolean_t = MACH_MSG_TYPE_BOOLEAN; 85 86#include <mach/machine/machine_types.defs> 87 88type kern_return_t = int; 89 90type pointer_t = ^array[] of MACH_MSG_TYPE_BYTE 91 ctype: vm_offset_t; 92 93 94type mach_port_t = MACH_MSG_TYPE_COPY_SEND; 95type mach_port_array_t = array[] of mach_port_t; 96 97type mach_port_name_t = MACH_MSG_TYPE_PORT_NAME; 98type mach_port_name_array_t = array[] of mach_port_name_t; 99 100type mach_port_right_t = natural_t; 101 102type mach_port_type_t = natural_t; 103type mach_port_type_array_t = array[] of mach_port_type_t; 104 105type mach_port_urefs_t = natural_t; 106type mach_port_delta_t = integer_t; 107type mach_port_seqno_t = natural_t; 108type mach_port_mscount_t = unsigned; 109type mach_port_msgcount_t = unsigned; 110type mach_port_rights_t = unsigned; 111type mach_msg_id_t = integer_t; 112type mach_msg_size_t = natural_t; 113type mach_msg_type_name_t = unsigned; 114type mach_msg_options_t = integer_t; 115 116type mach_port_move_receive_t = MACH_MSG_TYPE_MOVE_RECEIVE 117 ctype: mach_port_t; 118type mach_port_copy_send_t = MACH_MSG_TYPE_COPY_SEND 119 ctype: mach_port_t; 120type mach_port_make_send_t = MACH_MSG_TYPE_MAKE_SEND 121 ctype: mach_port_t; 122type mach_port_move_send_t = MACH_MSG_TYPE_MOVE_SEND 123 ctype: mach_port_t; 124type mach_port_make_send_once_t = MACH_MSG_TYPE_MAKE_SEND_ONCE 125 ctype: mach_port_t; 126type mach_port_move_send_once_t = MACH_MSG_TYPE_MOVE_SEND_ONCE 127 ctype: mach_port_t; 128 129type mach_port_receive_t = MACH_MSG_TYPE_PORT_RECEIVE 130 ctype: mach_port_t; 131type mach_port_send_t = MACH_MSG_TYPE_PORT_SEND 132 ctype: mach_port_t; 133type mach_port_send_once_t = MACH_MSG_TYPE_PORT_SEND_ONCE 134 ctype: mach_port_t; 135 136type mach_port_poly_t = polymorphic 137 ctype: mach_port_t; 138 139import <mach/std_types.h>; 140import <mach/mig.h>; 141 142#endif /* _MACH_STD_TYPES_DEFS_ */ 143

