1/* 2 * Copyright (c) 2008-2013 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#include <mach/std_types.defs> 22#include <mach/mach_types.defs> 23 24// '64' is used to align with Mach notifications and so that we don't fight 25// with the notify symbols in Libsystem 26subsystem libdispatch_internal_protocol 64; 27 28serverprefix _dispatch_; 29userprefix _dispatch_send_; 30 31skip; /* was MACH_NOTIFY_FIRST: 64 */ 32 33/* MACH_NOTIFY_PORT_DELETED: 65 */ 34simpleroutine 35mach_notify_port_deleted( 36 _notify : mach_port_move_send_once_t; 37 _name : mach_port_name_t 38); 39 40/* MACH_NOTIFY_SEND_POSSIBLE: 66 */ 41simpleroutine 42mach_notify_send_possible( 43 _notify : mach_port_move_send_once_t; 44 _name : mach_port_name_t 45); 46 47skip; /* was NOTIFY_OWNERSHIP_RIGHTS: 67 */ 48 49skip; /* was NOTIFY_RECEIVE_RIGHTS: 68 */ 50 51/* MACH_NOTIFY_PORT_DESTROYED: 69 */ 52simpleroutine 53mach_notify_port_destroyed( 54 _notify : mach_port_move_send_once_t; 55 _rights : mach_port_move_receive_t 56); 57 58/* MACH_NOTIFY_NO_SENDERS: 70 */ 59simpleroutine 60mach_notify_no_senders( 61 _notify : mach_port_move_send_once_t; 62 _mscnt : mach_port_mscount_t 63); 64 65/* MACH_NOTIFY_SEND_ONCE: 71 */ 66simpleroutine 67mach_notify_send_once( 68 _notify : mach_port_move_send_once_t 69); 70 71/* MACH_NOTIFY_DEAD_NAME: 72 */ 72simpleroutine 73mach_notify_dead_name( 74 _notify : mach_port_move_send_once_t; 75 _name : mach_port_name_t 76); 77 78/* highly unlikely additional Mach notifications */ 79skip; 80skip; 81skip; 82skip; 83skip; 84 85simpleroutine 86wakeup_runloop_thread( 87 _port : mach_port_t; 88 WaitTime _waitTimeout : natural_t 89); 90 91simpleroutine 92consume_send_once_right( 93 _port : mach_port_move_send_once_t 94); 95