1<h2>mach_reply_port</h2> 2<hr> 3<p> 4<strong>System Trap</strong> - Allocate a new port and insert corresponding receive right in the calling task. 5<h3>SYNOPSIS</h3> 6<pre> 7<strong>#include<mach/mach_traps.h></strong> 8 9<strong>mach_port_t mach_reply_port( void )</strong> 10</pre> 11<h3>PARAMETERS</h3> 12<dl> 13None. 14</dl> 15<h3>DESCRIPTION</h3> 16<p> 17The <strong>mach_reply_port</strong> function creates a new port for 18the current task and 19returns the name assigned by the kernel. The kernel records 20the name in the task's 21port name space and grants the task receive rights for the port. 22The new port is 23not a member of any port set. 24<p> 25This function is an optimized version of <strong>mach_port_allocate</strong> 26that uses no port 27references. Its main purpose is to allocate a reply port for 28the task when the task 29is starting, for example, before it has any ports to use as reply 30ports for any IPC-based system functions. 31<p> 32If the task's task self port is null (thereby deactivating basic Mach 33manipulations by the task), this call returns null. 34<h3>CAUTIONS</h3> 35<p> 36Although the created port can be used for any purpose, the implementation may 37optimize its use as a reply port. 38<h3>RETURN VALUES</h3> 39<dl> 40<dt> <strong>MACH_PORT_NULL</strong> 41<dd> 42No port was allocated. 43 <p> 44<dt> [reply receive right] 45<dd> 46Any other value indicates success. 47</dl> 48<h3>RELATED INFORMATION</h3> 49<p> 50Functions: 51<a href="mach_port_allocate.html"><strong>mach_port_allocate</strong></a>. 52