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