NAME
port_deallocate - removes a task’s rights for a port

SYNOPSIS
#include <mach.h>

kern_return_t port_deallocate(task, port_name)
task_t task;
port_name_t port_name;

ARGUMENTS
task The task from which to remove the port rights.

port_name task ’s name for the rights to be removed.

DESCRIPTION
port_deallocate requests that the target task’s rights for a port
be removed.

If task has receive rights for the port, and the port is a member
of a port set, the port is removed from the port set.

If the target task is both the receiver and owner for the port,
then the port is destroyed and all other tasks with send access are
notified of the port’s destruction. If the task is only the
receiver for the port, receive rights are sent to the owner. If the
task is only the owner of the port, ownership rights are sent to
the receiver.

DIAGNOSTICS
KERN_SUCCESS The call succeeded.

KERN_INVALID_ARGUMENT
task was invalid or port_name does not name a
valid port.

SEE ALSO
port_allocate(2)