1<h2>mach_msg_descriptor</h2> 2<hr> 3<p> 4<strong>Structure</strong> - Specifies operations that must be performed on a given IPC message element. 5<h3>SYNOPSIS</h3> 6<pre> 7<strong>typedef struct</strong> 8<strong>{</strong> 9 <strong>void*</strong> <var>pad1</var><strong>;</strong> 10 <strong>mach_msg_size_t</strong> <var>pad2</var><strong>;</strong> 11 <strong>unsigned int</strong> <var>pad3</var><strong> : 24;</strong> 12 <strong>mach_msg_descriptor_type_t</strong> <var>type</var><strong> : 8;</strong> 13<strong>} mach_msg_type_descriptor_t;</strong> 14 15<strong>typedef struct</strong> 16<strong>{</strong> 17 <strong>mach_port_t</strong> <var>name</var><strong>;</strong> 18 <strong>mach_msg_size_t</strong> <var>pad1</var><strong>;</strong> 19 <strong>unsigned int</strong> <var>pad2</var><strong> : 16;</strong> 20 <strong>mach_msg_type_name_t</strong> <var>disposition</var><strong> : 8;</strong> 21 <strong>mach_msg_descriptor_type_t</strong> <var>type</var><strong> : 8;</strong> 22<strong>} mach_msg_port_descriptor_t;</strong> 23 24<strong>typedef struct</strong> 25<strong>{</strong> 26 <strong>void*</strong> <var>address</var><strong>;</strong> 27 <strong>mach_msg_size_t</strong> <var>size</var><strong>;</strong> 28 <strong>boolean_t</strong> <var>deallocate</var><strong> : 8;</strong> 29 <strong>mach_msg_copy_options_t</strong> <var>copy</var><strong> : 8;</strong> 30 <strong>unsigned int</strong> <var>pad1</var><strong> : 8;</strong> 31 <strong>mach_msg_descriptor_type_t</strong> <var>type</var><strong> : 8;</strong> 32<strong>} mach_msg_ool_descriptor_t;</strong> 33 34<strong>typedef struct</strong> 35<strong>{</strong> 36 <strong>void*</strong> <var>address</var><strong>;</strong> 37 <strong>mach_msg_size_t</strong> <var>count</var><strong>;</strong> 38 <strong>boolean_t</strong> <var>deallocate</var><strong> : 8;</strong> 39 <strong>mach_msg_copy_options_t</strong> <var>copy</var><strong> : 8;</strong> 40 <strong>mach_msg_type_name_t</strong> <var>disposition</var><strong> : 8;</strong> 41 <strong>mach_msg_descriptor_type_t</strong> <var>type</var><strong> : 8;</strong> 42<strong>} mach_msg_ool_ports_descriptor_t;</strong> 43 44<strong>typedef union</strong> 45<strong>{</strong> 46 <strong>mach_msg_port_descriptor_t</strong> <var>port</var><strong>;</strong> 47 <strong>mach_msg_ool_descriptor_t</strong> <var>out_of_line</var><strong>;</strong> 48 <strong>mach_msg_ool_ports_descriptor_t</strong> <var>ool_ports</var><strong>;</strong> 49 <strong>mach_msg_type_descriptor_t</strong> <var>type</var><strong>;</strong> 50<strong>} mach_msg_descriptor_t;</strong> 51</pre> 52<h3>FIELDS</h3> 53<dl> 54<dt> <var>name</var> 55<dd> 56For single port descriptors, the name of the port whose right is being 57sent. 58 <p> 59<dt> <var>disposition</var> 60<dd> 61For single port or out-of-line port array descriptors, the IPC processing 62to be done for the rights for the named ports. 63 <p> 64<dt> <var>address</var> 65<dd> 66For out-of-line data or port array descriptors, the address of the 67out-of-line data or port (name) array. 68 <p> 69<dt> <var>size</var> 70<dd> 71For out-of-line data descriptors, the size of the out-of-line region, in 72bytes. 73 <p> 74<dt> <var>deallocate</var> 75<dd> 76For out-of-line data descriptors, true if the set of pages containing the 77array should be de-allocated when the message is sent. 78 <p> 79<dt> <var>copy</var> 80<dd> 81For out-of-line descriptors, a description of the method by which the 82data should be copied. 83 <p> 84<dt> <var>count</var> 85<dd> 86For out-of-line port array descriptors, the number of port names in the 87array. 88 <p> 89<dt> <var>type</var> 90<dd> 91For any type of descriptor, the type of descriptor. 92 <p> 93<dt> <var>port</var> 94<dd> 95A descriptor that describes a single port right. 96 <p> 97<dt> <var>out_of_line</var> 98<dd> 99A descriptor that describes an out-of-line data array. 100 <p> 101<dt> <var>ool_ports</var> 102<dd> 103A descriptor that describes an out-of-line port array. 104</dl> 105<h3>DESCRIPTION</h3> 106<p> 107A <strong>mach_msg_descriptor</strong> structure describes the processing 108to be performed 109for an element of kernel-processed data in a Mach message. 110<h3>RELATED INFORMATION</h3> 111<p> 112Functions: 113<a href="mach_msg.html"><strong>mach_msg</strong></a>. 114<p> 115Data Structures: 116<a href="mach_msg_header.html"><strong>mach_msg_header</strong></a>. 117