FreeBSD/Linux Kernel Cross Reference
sys/mach/notify.defs
1 /*
2 * Mach Operating System
3 * Copyright (c) 1991,1990,1989 Carnegie Mellon University
4 * All Rights Reserved.
5 *
6 * Permission to use, copy, modify and distribute this software and its
7 * documentation is hereby granted, provided that both the copyright
8 * notice and this permission notice appear in all copies of the
9 * software, derivative works or modified versions, and any portions
10 * thereof, and that both notices appear in supporting documentation.
11 *
12 * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
13 * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
14 * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
15 *
16 * Carnegie Mellon requests users of this software to return to
17 *
18 * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU
19 * School of Computer Science
20 * Carnegie Mellon University
21 * Pittsburgh PA 15213-3890
22 *
23 * any improvements or extensions that they make and grant Carnegie Mellon
24 * the rights to redistribute these changes.
25 */
26 /*
27 * HISTORY
28 * $Log: notify.defs,v $
29 * Revision 2.6 91/08/28 11:15:33 jsb
30 * Added conditionalized sequence number support.
31 * [91/08/13 rpd]
32 *
33 * Revision 2.5 91/05/14 16:58:11 mrt
34 * Correcting copyright
35 *
36 * Revision 2.4 91/02/05 17:35:14 mrt
37 * Changed to new Mach copyright
38 * [91/02/01 17:19:54 mrt]
39 *
40 * Revision 2.3 90/08/27 22:04:34 dbg
41 * Fixed the notification ports, to make them send-once rights.
42 * [90/08/13 rpd]
43 *
44 * Revision 2.2 90/06/02 14:59:28 rpd
45 * Created for new IPC.
46 * [90/03/26 23:45:48 rpd]
47 *
48 */
49
50 subsystem notify 64;
51
52 #include <mach/std_types.defs>
53
54 #if SEQNOS
55 serverprefix do_seqnos_;
56 serverdemux seqnos_notify_server;
57 #else SEQNOS
58 serverprefix do_;
59 serverdemux notify_server;
60 #endif SEQNOS
61
62 type notify_port_t = MACH_MSG_TYPE_MOVE_SEND_ONCE
63 ctype: mach_port_t;
64
65 /* MACH_NOTIFY_FIRST: 0100 */
66 skip;
67
68 /* MACH_NOTIFY_PORT_DELETED: 0101 */
69 simpleroutine mach_notify_port_deleted(
70 notify : notify_port_t;
71 #if SEQNOS
72 msgseqno seqno : mach_port_seqno_t;
73 #endif SEQNOS
74 name : mach_port_name_t);
75
76 /* MACH_NOTIFY_MSG_ACCEPTED: 0102 */
77 simpleroutine mach_notify_msg_accepted(
78 notify : notify_port_t;
79 #if SEQNOS
80 msgseqno seqno : mach_port_seqno_t;
81 #endif SEQNOS
82 name : mach_port_name_t);
83
84 skip; /* was NOTIFY_OWNERSHIP_RIGHTS: 0103 */
85
86 skip; /* was NOTIFY_RECEIVE_RIGHTS: 0104 */
87
88 /* MACH_NOTIFY_PORT_DESTROYED: 0105 */
89 simpleroutine mach_notify_port_destroyed(
90 notify : notify_port_t;
91 #if SEQNOS
92 msgseqno seqno : mach_port_seqno_t;
93 #endif SEQNOS
94 rights : mach_port_receive_t);
95
96 /* MACH_NOTIFY_NO_SENDERS: 0106 */
97 simpleroutine mach_notify_no_senders(
98 notify : notify_port_t;
99 #if SEQNOS
100 msgseqno seqno : mach_port_seqno_t;
101 #endif SEQNOS
102 mscount : mach_port_mscount_t);
103
104 /* MACH_NOTIFY_SEND_ONCE: 0107 */
105 simpleroutine mach_notify_send_once(
106 notify : notify_port_t
107 #if SEQNOS
108 ; msgseqno seqno : mach_port_seqno_t
109 #endif SEQNOS
110 );
111
112 /* MACH_NOTIFY_DEAD_NAME: 0110 */
113 simpleroutine mach_notify_dead_name(
114 notify : notify_port_t;
115 #if SEQNOS
116 msgseqno seqno : mach_port_seqno_t;
117 #endif SEQNOS
118 name : mach_port_name_t);
Cache object: a1b010459de53b52b4db6fed3a7053a4
|