Implemented by
[scriptable, uuid(185b3a5d-8729-436d-9693-7bdccb9c2216)]
interface nsISocketTransportService : nsISupports
Methods
Adds a new socket to the list of controlled sockets.
This will fail with the error code NS_ERROR_NOT_AVAILABLE if the maximum
number of sockets is already reached.
In this case, the notifyWhenCanAttachSocket method should be used.
@param aFd
Open file descriptor of the socket to control.
@param aHandler
Socket handler that will receive notifications when the socket is
ready or detached.
NOTE: this function may only be called from an event dispatch on the
socket thread.
[noscript]
void
attachSocket(in PRFileDescPtr aFd, in nsASocketHandlerPtr aHandler)
Creates a transport for a specified host and port.
@param aSocketTypes
array of socket type strings. null if using default socket type.
@param aTypeCount
specifies length of aSocketTypes.
@param aHost
specifies the target hostname or IP address literal of the peer
for this socket.
@param aPort
specifies the target port of the peer for this socket.
@param aProxyInfo
specifies the transport-layer proxy type to use. null if no
proxy. used for communicating information about proxies like
SOCKS (which are transparent to upper protocols).
@see nsIProxiedProtocolHandler
@see nsIProtocolProxyService::GetProxyInfo
NOTE: this function can be called from any thread
nsISocketTransport
createTransport([array, size_is(aTypeCount)] in string aSocketTypes, in unsigned long aTypeCount, in AUTF8String aHost, in long aPort, in nsIProxyInfo aProxyInfo)
if the number of sockets reaches the limit, then consumers can be
notified when the number of sockets becomes less than the limit. the
notification is asynchronous, delivered via the given nsIRunnable
instance on the socket transport thread.
@param aEvent
Event that will receive the notification when a new socket can
be attached
NOTE: this function may only be called from an event dispatch on the
socket thread.
[noscript]
void
notifyWhenCanAttachSocket(in nsIRunnable aEvent)
Compare to: