# NSPortNameServer class reference

richard@brainstorm.co.uk
Generated at 2025-09-10 09:16:48 +0000
1998,1999,2003 Free Software Foundation, Inc.
Software documentation for the NSMessagePortNameServer class
Foundation/NSPortNameServer.h
Subclass of NSPortNameServer taking/returning instances of NSMessagePort . Port removal functionality is not supported; if you want to cancel a service, you have to destroy the port (invalidate the NSMessagePort given to [NSPortNameServer -registerPort:forName:]).
sharedInstance
Obtain single instance for this host.
portForName:
name
Returns the NSMessagePort instance registered for the specified name if it exists on the local host.
portForName:
name
onHost:
host
Returns the port registered for the specified name (if it exists).
The host must be an empty string or `nil`, since NSMessagePort instances on other hosts are inaccessible from the current host.
Software documentation for the NSPortNameServer class
Foundation/NSPortNameServer.h
The abstract port name server class. This defines an API for working with port name servers... objects used to manage access to ports in the distributed objects system (see NSConnection ).
systemDefaultPortNameServer

Returns the default port name server for the process.
This is a nameserver for host-local connections private to the current user. If you with to create public connections or connections to other hosts, you must use [NSSocketPortNameServer +sharedInstance] instead.

This default behavior may be altered by setting the `NSPortIsMessagePort` user default to `NO`, in which case an NSSocketPortNameServer will be used as the default system name server and you will have to use [NSMessagePortNameServer +sharedInstance] for host-local, private connections.
portForName:
name
Looks up the port with the specified name on the local host and returns it or `nil` if no port is found with that name.
Different nameservers have different namespaces appropriate to the type of port they deal with, so failing to find a named port with one nameserver does not guarantee that a port does with that name does not exist.
This is a convenience method calling -portForName:onHost: with a `nil` host argument.
portForName:
name
onHost:
host
Looks up the port with the specified name on host and returns it or `nil` if no port is found with that name.
Different nameservers have different namespaces appropriate to the type of port they deal with, so failing to find a named port with one nameserver does not guarantee that a port does with that name does not exist.
registerPort:
port
forName:
name
Registers port with the supplied name, so that other processes can look it up to contact it. A port may be registered with more than one name by making multiple calls to this method.
Returns `YES` on success, `NO` otherwise.
The common cause for failure is that another port is already registered with the name. Raises NSInvalidArgumentException if given bad arguments.
removePortForName:
name
Removes any port registration for the supplied name (whether registered in the current process or another).
The common cause for failure is that no port is registered with the name.
Raises NSInvalidArgumentException if given bad arguments.
Software documentation for the NSSocketPortNameServer class
Foundation/NSPortNameServer.h
This is the nameserver handling ports used for distributed objects communications (see NSConnection ) between hosts.
Use the [NSSocketPortNameServer +sharedInstance] method to get a nameserver, rather than allocating and initialising one.
Warning the underscore at the start of the name of this instance variable indicates that, even though it is not technically private, it is intended for internal use within the package, and you should not use the variable in other code.
Warning the underscore at the start of the name of this instance variable indicates that, even though it is not technically private, it is intended for internal use within the package, and you should not use the variable in other code.
sharedInstance
Returns the shared name server object for NSSocketPort objects.
portForName:
name
onHost:
host
Concrete implementation of [NSPortNameServer -portForName:onHost:]
Looks up and returns a port with the specified name and host.
If host is `nil` or an empty string, this performs a lookup for a port on the current host.
If host is an asterisk ('*') then the lookup returns the first port found with the specified name on any machine on the local network.
Returns `nil` if no matching port could be found.
registerPort:
port
forName:
name
Concrete implementation of [NSPortNameServer -registerPort:forName:]
Registers the port with the specified name such that it is available on all the IP addresses of the host on which the process is running.
Returns `YES` on success, `NO` on failure (eg the name is already in use or there is a problem registering for some reason).
removePortForName:
name
Concrete implementation of [NSPortNameServer -removePortForName:]
Unregisters the specified name from any associated port on the local host.
Returns `YES` on success, `NO` on failure.