Authenticator for accepting components.
|Associate the authenticator with a stream.
|Called on incoming XML Stanzas.
|Called upon receiving the handshake request.
|Called by the stream when it has started.
|The shared secret used to authorized incoming component connections.
|Called by the XmlStream when the underlying socket connection is in place.
|The XmlStream that needs authentication
Associate the authenticator with a stream.
This sets the stream's version to 0.0, because the XEP-0114 component protocol was not designed for XMPP 1.0.
Called on incoming XML Stanzas.
The very first element received should be a request for handshake. Otherwise, the stream is dropped with a 'not-authorized' error. If a handshake request was received, the hash is extracted and passed to
Called upon receiving the handshake request.
This checks that the given hash in handshake is equal to a calculated hash, responding with a handshake reply or a stream error. If the handshake was ok, the stream is authorized, and XML Stanzas may be exchanged.
Called by the stream when it has started.
This examines the default namespace of the incoming stream and whether there is a requested hostname for the component. Then it generates a stream identifier, sends a response header and adds an observer for the first incoming element, triggering