Chameleon

Chameleon Svn Source Tree

Root/tags/2.0/i386/include/mach/exc.h

Source at commit 1808 created 12 years 4 months ago.
By blackosx, Revise layout of package installer 'Welcome' file so it looks cleaner. Change the copyright notice to begin from 2009 as seen in the Chameleon 2.0 r431 installer. Should this date be set earlier?
1#ifndef_exc_user_
2#define_exc_user_
3
4/* Module exc */
5
6#include <string.h>
7#include <mach/ndr.h>
8#include <mach/boolean.h>
9#include <mach/kern_return.h>
10#include <mach/notify.h>
11#include <mach/mach_types.h>
12#include <mach/message.h>
13#include <mach/mig_errors.h>
14#include <mach/port.h>
15
16#ifdef AUTOTEST
17#ifndef FUNCTION_PTR_T
18#define FUNCTION_PTR_T
19typedef void (*function_ptr_t)(mach_port_t, char *, mach_msg_type_number_t);
20typedef struct {
21 char *name;
22 function_ptr_t function;
23} function_table_entry;
24typedef function_table_entry *function_table_t;
25#endif /* FUNCTION_PTR_T */
26#endif /* AUTOTEST */
27
28#ifndefexc_MSG_COUNT
29#defineexc_MSG_COUNT3
30#endif/* exc_MSG_COUNT */
31
32#include <mach/std_types.h>
33#include <mach/mig.h>
34#include <mach/mach_types.h>
35
36#ifdef __BeforeMigUserHeader
37__BeforeMigUserHeader
38#endif /* __BeforeMigUserHeader */
39
40#include <sys/cdefs.h>
41__BEGIN_DECLS
42
43
44/* Routine exception_raise */
45#ifdefmig_external
46mig_external
47#else
48extern
49#endif/* mig_external */
50kern_return_t exception_raise
51(
52mach_port_t exception_port,
53mach_port_t thread,
54mach_port_t task,
55exception_type_t exception,
56exception_data_t code,
57mach_msg_type_number_t codeCnt
58);
59
60/* Routine exception_raise_state */
61#ifdefmig_external
62mig_external
63#else
64extern
65#endif/* mig_external */
66kern_return_t exception_raise_state
67(
68mach_port_t exception_port,
69exception_type_t exception,
70const exception_data_t code,
71mach_msg_type_number_t codeCnt,
72int *flavor,
73const thread_state_t old_state,
74mach_msg_type_number_t old_stateCnt,
75thread_state_t new_state,
76mach_msg_type_number_t *new_stateCnt
77);
78
79/* Routine exception_raise_state_identity */
80#ifdefmig_external
81mig_external
82#else
83extern
84#endif/* mig_external */
85kern_return_t exception_raise_state_identity
86(
87mach_port_t exception_port,
88mach_port_t thread,
89mach_port_t task,
90exception_type_t exception,
91exception_data_t code,
92mach_msg_type_number_t codeCnt,
93int *flavor,
94thread_state_t old_state,
95mach_msg_type_number_t old_stateCnt,
96thread_state_t new_state,
97mach_msg_type_number_t *new_stateCnt
98);
99
100__END_DECLS
101
102/********************** Caution **************************/
103/* The following data types should be used to calculate */
104/* maximum message sizes only. The actual message may be */
105/* smaller, and the position of the arguments within the */
106/* message layout may vary from what is presented here. */
107/* For example, if any of the arguments are variable- */
108/* sized, and less than the maximum is sent, the data */
109/* will be packed tight in the actual message to reduce */
110/* the presence of holes. */
111/********************** Caution **************************/
112
113/* typedefs for all requests */
114
115#ifndef __Request__exc_subsystem__defined
116#define __Request__exc_subsystem__defined
117
118#ifdef __MigPackStructs
119#pragma pack(4)
120#endif
121typedef struct {
122mach_msg_header_t Head;
123/* start of the kernel processed data */
124mach_msg_body_t msgh_body;
125mach_msg_port_descriptor_t thread;
126mach_msg_port_descriptor_t task;
127/* end of the kernel processed data */
128NDR_record_t NDR;
129exception_type_t exception;
130mach_msg_type_number_t codeCnt;
131integer_t code[2];
132} __Request__exception_raise_t;
133#ifdef __MigPackStructs
134#pragma pack()
135#endif
136
137#ifdef __MigPackStructs
138#pragma pack(4)
139#endif
140typedef struct {
141mach_msg_header_t Head;
142NDR_record_t NDR;
143exception_type_t exception;
144mach_msg_type_number_t codeCnt;
145integer_t code[2];
146int flavor;
147mach_msg_type_number_t old_stateCnt;
148natural_t old_state[144];
149} __Request__exception_raise_state_t;
150#ifdef __MigPackStructs
151#pragma pack()
152#endif
153
154#ifdef __MigPackStructs
155#pragma pack(4)
156#endif
157typedef struct {
158mach_msg_header_t Head;
159/* start of the kernel processed data */
160mach_msg_body_t msgh_body;
161mach_msg_port_descriptor_t thread;
162mach_msg_port_descriptor_t task;
163/* end of the kernel processed data */
164NDR_record_t NDR;
165exception_type_t exception;
166mach_msg_type_number_t codeCnt;
167integer_t code[2];
168int flavor;
169mach_msg_type_number_t old_stateCnt;
170natural_t old_state[144];
171} __Request__exception_raise_state_identity_t;
172#ifdef __MigPackStructs
173#pragma pack()
174#endif
175#endif /* !__Request__exc_subsystem__defined */
176
177/* union of all requests */
178
179#ifndef __RequestUnion__exc_subsystem__defined
180#define __RequestUnion__exc_subsystem__defined
181union __RequestUnion__exc_subsystem {
182__Request__exception_raise_t Request_exception_raise;
183__Request__exception_raise_state_t Request_exception_raise_state;
184__Request__exception_raise_state_identity_t Request_exception_raise_state_identity;
185};
186#endif /* !__RequestUnion__exc_subsystem__defined */
187/* typedefs for all replies */
188
189#ifndef __Reply__exc_subsystem__defined
190#define __Reply__exc_subsystem__defined
191
192#ifdef __MigPackStructs
193#pragma pack(4)
194#endif
195typedef struct {
196mach_msg_header_t Head;
197NDR_record_t NDR;
198kern_return_t RetCode;
199} __Reply__exception_raise_t;
200#ifdef __MigPackStructs
201#pragma pack()
202#endif
203
204#ifdef __MigPackStructs
205#pragma pack(4)
206#endif
207typedef struct {
208mach_msg_header_t Head;
209NDR_record_t NDR;
210kern_return_t RetCode;
211int flavor;
212mach_msg_type_number_t new_stateCnt;
213natural_t new_state[144];
214} __Reply__exception_raise_state_t;
215#ifdef __MigPackStructs
216#pragma pack()
217#endif
218
219#ifdef __MigPackStructs
220#pragma pack(4)
221#endif
222typedef struct {
223mach_msg_header_t Head;
224NDR_record_t NDR;
225kern_return_t RetCode;
226int flavor;
227mach_msg_type_number_t new_stateCnt;
228natural_t new_state[144];
229} __Reply__exception_raise_state_identity_t;
230#ifdef __MigPackStructs
231#pragma pack()
232#endif
233#endif /* !__Reply__exc_subsystem__defined */
234
235/* union of all replies */
236
237#ifndef __ReplyUnion__exc_subsystem__defined
238#define __ReplyUnion__exc_subsystem__defined
239union __ReplyUnion__exc_subsystem {
240__Reply__exception_raise_t Reply_exception_raise;
241__Reply__exception_raise_state_t Reply_exception_raise_state;
242__Reply__exception_raise_state_identity_t Reply_exception_raise_state_identity;
243};
244#endif /* !__RequestUnion__exc_subsystem__defined */
245
246#ifndef subsystem_to_name_map_exc
247#define subsystem_to_name_map_exc \
248 { "exception_raise", 2401 },\
249 { "exception_raise_state", 2402 },\
250 { "exception_raise_state_identity", 2403 }
251#endif
252
253#ifdef __AfterMigUserHeader
254__AfterMigUserHeader
255#endif /* __AfterMigUserHeader */
256
257#endif /* _exc_user_ */
258

Archive Download this file

Revision: 1808