## norma_get_special_port

Function - Acquire a send right for a specified node-specific special port.

### SYNOPSIS

    kern_return_t   norma_get_special_port
                    (host_priv_t                          host_priv,
                     int                                       node,
                     int                                 which_port,
                     mach_port_t                       special_port);

#### Macro forms:

    #include<mach/norma_special_ports.h>

    kern_return_t   norma_get_device_port
                    (host_priv_t                          host_priv,
                     int                                       node,
                     mach_port_t                       special_port);

    kern_return_t   norma_get_host_port
                    (host_priv_t                          host_priv,
                     int                                       node,
                     mach_port_t                       special_port);

    kern_return_t   norma_get_host_priv_port
                    (host_priv_t                          host_priv,
                     int                                       node,
                     mach_port_t                       special_port);

    kern_return_t   norma_get_nameserver_port
                    (host_priv_t                          host_priv,
                     int                                       node,
                     mach_port_t                       special_port);

### PARAMETERS

host_priv
  [in host-control send right] The control port for the host for which to return the special port's send right.

node
  [in scalar] The index of the node for which the port is desired.

which_port
  [in scalar] The index of the special port for which the send right is requested. Valid values are:

  NORMA_DEVICE_PORT
    [device-master send right] The device master port for the node.

  NORMA_HOST_PORT
    [host-name send right] The host name port for the node.

  NORMA_HOST_PRIV_PORT
    [host-control send right] The host control port for the node.

  NORMA_NAMESERVER_PORT
    [name-server send right] The registered name server port for the node.

special_port
  [out norma-special send right] The returned value for the port.

### DESCRIPTION

The norma_get_special_port function returns a send right for a special port belonging to node on host_priv.

Each node maintains a (small) set of node specific ports. The device master port, host name, and host control ports are maintained by the kernel. The kernel also permits a small set of server specified node specific ports; the name server port is an example and is given (by convention) an assigned special port index.

### RETURN VALUES

Only generic errors apply.

### RELATED INFORMATION

Functions: mach_host_self, norma_get_special_port, bootstrap_ports.