The nsIServerSocket
interface implements a server socket that can accept incoming connections.
Inherits from: nsISupports
Implemented by: @mozilla.org/network/server-socket;1
. To create an instance, use:
var serverSocket = Components.classes["@mozilla.org/network/server-socket;1"] .createInstance(Components.interfaces.nsIServerSocket);
void init(in long aPort, in boolean aLoopbackOnly, in long aBackLog); |
void initWithAddress([const] in PRNetAddrPtr aAddr, in long aBackLog); Native code only! |
void close(); |
void asyncListen(in |
PRNetAddr getAddress(); Native code only! |
Attribute | Type | Description |
port |
long |
Returns the port of this server socket. Read only. |
This method puts the server socket in the listening state. It will asynchronously listen for and accept client connections. The listener will be notified once for each client connection that is accepted. The listener's onSocketAccepted()
method will be called on the same thread that called asyncListen()
(the calling thread must have an nsIEventTarget
).
The listener will be passed a reference to an already connected socket transport (nsISocketTransport
). See nsIServerSocketListener
for more details.
void asyncListen( in nsIServerSocketListener aListener );
aListener
This method closes a server socket. This does not affect already connected client sockets (i.e., the nsISocketTransport
instances created from this server socket). This will cause the onStopListening
event to asynchronously fire with a status of NS_BINDING_ABORTED
.
void close();
None.
Returns the address to which this server socket is bound. Since a server socket may be bound to multiple network devices, this address may not necessarily be specific to a single network device. In the case of an IP socket, the IP address field would be zeroed out to indicate a server socket bound to all network devices. Therefore, this method cannot be used to determine the IP address of the local system. See nsIDNSService.myHostName()
if this is what you need.
PRNetAddr getAddress();
None.
The network address to which the socket is bound.
Initializes a server socket.
void init( in long aPort, in boolean aLoopbackOnly, in long aBackLog );
aPort
aLoopbackOnly
true
, the server socket will only respond to connections on the local loopback interface. Otherwise, it will accept connections from any interface. To specify a particular network interface, use initWithAddress()
.aBackLog
This method initializes a server socket and binds it to a particular local address (and hence a particular local network interface).
void initWithAddress( [const] in PRNetAddrPtr aAddr, in long aBackLog );
aAddr
aBackLog