]> git.saurik.com Git - apple/libdispatch.git/blob - src/protocol.defs
libdispatch-84.5.tar.gz
[apple/libdispatch.git] / src / protocol.defs
1 /*
2 * Copyright (c) 2009 Apple Inc. All rights reserved.
3 *
4 * @APPLE_APACHE_LICENSE_HEADER_START@
5 *
6 * Licensed under the Apache License, Version 2.0 (the "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
9 *
10 * http://www.apache.org/licenses/LICENSE-2.0
11 *
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
17 *
18 * @APPLE_APACHE_LICENSE_HEADER_END@
19 */
20 /*
21 * Copyright (c) 2008-2009 Apple Inc. All rights reserved.
22 */
23
24 #include <mach/std_types.defs>
25 #include <mach/mach_types.defs>
26
27 // '64' is used to align with Mach notifications and so that we don't fight with the notify symbols in Libsystem
28 subsystem libdispatch_internal_protocol 64;
29
30 serverprefix _dispatch_;
31 userprefix _dispatch_send_;
32
33 skip; /* was MACH_NOTIFY_FIRST: 64 */
34
35 /* MACH_NOTIFY_PORT_DELETED: 65 */
36 simpleroutine
37 mach_notify_port_deleted(
38 _notify : mach_port_move_send_once_t;
39 _name : mach_port_name_t
40 );
41
42 skip; /* was MACH_NOTIFY_MSG_ACCEPTED: 66 */
43
44 skip; /* was NOTIFY_OWNERSHIP_RIGHTS: 67 */
45
46 skip; /* was NOTIFY_RECEIVE_RIGHTS: 68 */
47
48 /* MACH_NOTIFY_PORT_DESTROYED: 69 */
49 simpleroutine
50 mach_notify_port_destroyed(
51 _notify : mach_port_move_send_once_t;
52 _rights : mach_port_move_receive_t
53 );
54
55 /* MACH_NOTIFY_NO_SENDERS: 70 */
56 simpleroutine
57 mach_notify_no_senders(
58 _notify : mach_port_move_send_once_t;
59 _mscnt : mach_port_mscount_t
60 );
61
62 /* MACH_NOTIFY_SEND_ONCE: 71 */
63 simpleroutine
64 mach_notify_send_once(
65 _notify : mach_port_move_send_once_t
66 );
67
68 /* MACH_NOTIFY_DEAD_NAME: 72 */
69 simpleroutine
70 mach_notify_dead_name(
71 _notify : mach_port_move_send_once_t;
72 _name : mach_port_name_t
73 );
74
75 /* highly unlikely additional Mach notifications */
76 skip;
77 skip;
78 skip;
79 skip;
80 skip;
81
82 simpleroutine
83 wakeup_main_thread(
84 _port : mach_port_t;
85 WaitTime _waitTimeout : natural_t
86 );
87
88 simpleroutine
89 consume_send_once_right(
90 _port : mach_port_move_send_once_t
91 );