Lines Matching refs:reply

1428 		 * Call the server routine, and get the reply message to send.
1437 /* fall thru with reply - same options */
1641 * MACH_SEND_INVALID_REPLY Can't copyin reply port.
1704 * actually copy in until we validate destination and reply.
1731 * Handle combinations of validating destination and reply; along
1732 * with copying in destination, reply, and voucher in an atomic way.
1748 * Make sure a future copyin of the reply port will succeed.
1755 /* It is just WRONG if dest, voucher, and reply are all the same. */
1796 * Perform the delayed reply right copyin (guaranteed success).
1820 * Destination and reply ports are the same!
1823 * (except the reply port disposition is not
1835 * reply disposition from the one entry/port.
1851 * Handle destination and reply independently, as
1883 * Make sure reply port entry is valid before dest copyin.
1926 * Copyin the pre-validated reply right.
1927 * It's OK if the reply right has gone dead in the meantime.
1953 * Finally can copyin the voucher right now that dest and reply
2663 * MACH_SEND_INVALID_REPLY Can't copyin reply port.
2745 /* translate the destination and reply ports */
2754 * The common case is a complex message with no reply port,
2879 /* translate the destination and reply ports */
2888 * The common case is a complex message with no reply port,
3063 * Couldn't allocate memory for the reply port.
3091 ipc_port_t reply = msg->msgh_local_port;
3107 if (IP_VALID(reply)) {
3141 /* Handle reply port. */
3142 if (IP_VALID(reply)) {
3147 ipc_right_reverse(space, (ipc_object_t) reply, &reply_name, &entry)) {
3148 /* reply port is locked and active */
3151 ip_lock(reply);
3152 if (!ip_active(reply)) {
3153 ip_unlock(reply);
3155 release_reply_port = reply;
3156 reply = IP_DEAD;
3161 /* claim a held entry for the reply port */
3167 entry->ie_object = (ipc_object_t) reply;
3170 /* space and reply port are locked and active */
3171 ip_reference(reply); /* hold onto the reply port */
3174 reply_type, TRUE, (ipc_object_t) reply);
3176 /* reply port is unlocked */
3178 reply_name = CAST_MACH_PORT_TO_NAME(reply);
3237 * No reply or voucher port! This is an easy case.
3251 reply_name = CAST_MACH_PORT_TO_NAME(reply);
3268 * We still hold a ref for reply (if it is valid).
3279 * copyout of the reply port is a bit tricky. If there was
3280 * no real reply port (it wasn't IP_VALID) then this isn't
3281 * an issue. If the reply port was dead at copyout time,
3284 * we serialize after reply died but before dest's (later) death.
3285 * So assume reply was alive when we copied it out. If dest
3288 * If reply dies/died after dest, then we are OK because
3289 * we serialize after dest died but before reply dies.
3290 * So the hard case is when reply is alive at copyout,
3291 * dest is dead at copyout, and reply died before dest died.
3295 * Because the space lock is held across the copyout of reply
3301 * the time reply was copied-out, so when we pretend
3304 * If dest == reply, then we have to make it look like
3323 if (IP_VALID(reply)) {
3324 ip_lock(reply);
3325 if (ip_active(reply) ||
3327 reply->ip_timestamp))
3331 ip_unlock(reply);
3336 if (IP_VALID(reply))
3337 ip_release(reply);
3961 ipc_object_t reply = (ipc_object_t) kmsg->ikm_header->msgh_local_port;
3985 ipc_kmsg_copyout_object(space, reply, reply_type, &reply_name));
4022 ipc_object_t reply;
4031 reply = (ipc_object_t) kmsg->ikm_header->msgh_local_port;
4052 if (IO_VALID(reply)) {
4053 ipc_object_destroy(reply, reply_type);
4056 reply_name = CAST_MACH_PORT_TO_NAME(reply);
4241 * Copies out the destination and reply ports in the message.
4257 ipc_object_t reply;
4263 reply = (ipc_object_t) kmsg->ikm_header->msgh_local_port;
4279 reply_name = CAST_MACH_PORT_TO_NAME(reply);
4295 ipc_object_t reply;
4301 reply = (ipc_object_t) kmsg->ikm_header->msgh_local_port;
4317 reply_name = CAST_MACH_PORT_TO_NAME(reply);