/// <summary> /// Got the stream:stream. Start the handshake. /// </summary> /// <param name="sender"></param> /// <param name="tag"></param> protected override void OnDocumentStart(object sender, System.Xml.XmlElement tag) { base.OnDocumentStart(sender, tag); if (this.Type == ComponentType.Connect) { lock (StateLock) { State = HandshakingState.Instance; } Jabber.Protocol.Stream.Stream str = new Jabber.Protocol.Stream.Stream(this.Document, NS); str.To = this.ComponentID; this.StreamID = str.ID; if (ServerVersion.StartsWith("1.")) { str.Version = "1.0"; } WriteStartTag(str); if (ServerVersion.StartsWith("1.")) { Features f = new Features(this.Document); if (AutoStartTLS && !SSLon && (this[Options.LOCAL_CERTIFICATE] != null)) { f.StartTLS = new StartTLS(this.Document); } Write(f); } } }
public void Test_StartTag() { Stream s = new Stream(doc, "jabber:client"); Assert.IsTrue( Regex.IsMatch(s.StartTag(), "<stream:stream xmlns:stream=\"http://etherx\\.jabber\\.org/streams\" id=\"[a-z0-9]+\" xmlns=\"jabber:client\">", RegexOptions.IgnoreCase), s.StartTag()); }
private bool FakeReceivedStream() { Jabber.Protocol.Stream.Stream stream = new Jabber.Protocol.Stream.Stream(m_doc, NS); stream.Version = "1.0"; stream.ID = m_authID; byte[] sbuf = ENC.GetBytes(stream.StartTag()); if (!m_listener.OnRead(this, sbuf, 0, sbuf.Length)) { Close(); return(false); } return(true); }
/// <summary> /// Sends a new XMPP stream header. /// </summary> protected void SendNewStreamHeader() { Jabber.Protocol.Stream.Stream str = new Jabber.Protocol.Stream.Stream(m_doc, NS); str.To = new JID((string)this[Options.TO]); str.Version = "1.0"; m_stanzas.WriteStartTag(str); InitializeStream(); }
private bool FakeReceivedStream() { Jabber.Protocol.Stream.Stream stream = new Jabber.Protocol.Stream.Stream(m_doc, NS); stream.Version = "1.0"; stream.ID = m_authID; byte[] sbuf = ENC.GetBytes(stream.StartTag()); if (!m_listener.OnRead(this, sbuf, 0, sbuf.Length)) { Close(); return false; } return true; }
/// <summary> /// Got the stream:stream. Start the handshake. /// </summary> /// <param name="sender"></param> /// <param name="tag"></param> protected override void OnDocumentStart(object sender, System.Xml.XmlElement tag) { base.OnDocumentStart(sender, tag); if (this.Type == ComponentType.Connect) { lock (StateLock) { State = HandshakingState.Instance; } Jabber.Protocol.Stream.Stream str = new Jabber.Protocol.Stream.Stream(this.Document, NS); str.To = this.ComponentID; this.StreamID = str.ID; if (ServerVersion.StartsWith("1.")) str.Version = "1.0"; WriteStartTag(str); if (ServerVersion.StartsWith("1.")) { Features f = new Features(this.Document); if (AutoStartTLS && !SSLon && (this[Options.LOCAL_CERTIFICATE] != null)) f.StartTLS = new StartTLS(this.Document); Write(f); } } }