diff --git a/xmpp.go b/xmpp.go index 6b58995..051c11a 100644 --- a/xmpp.go +++ b/xmpp.go @@ -511,7 +511,7 @@ func (c *Client) init(o *Options) error { } else { clientFirstMessage = "n,,n=" + user + ",r=" + clientNonce } - fmt.Fprintf(c.stanzaWriter, "%s", + fmt.Fprintf(c.stanzaWriter, "%s\n", nsSASL, mechanism, base64.StdEncoding.EncodeToString([]byte(clientFirstMessage))) var sfm string if err = c.p.DecodeElement(&sfm, nil); err != nil { diff --git a/xmpp_information_query.go b/xmpp_information_query.go index bda5d86..3abac58 100644 --- a/xmpp_information_query.go +++ b/xmpp_information_query.go @@ -34,14 +34,14 @@ func (c *Client) DiscoverEntityItems(jid string) (string, error) { // RawInformationQuery sends an information query request to the server. func (c *Client) RawInformationQuery(from, to, id, iqType, requestNamespace, body string) (string, error) { - const xmlIQ = "%s" + const xmlIQ = "%s\n" _, err := fmt.Fprintf(c.stanzaWriter, xmlIQ, xmlEscape(from), xmlEscape(to), id, iqType, requestNamespace, body) return id, err } // rawInformation send a IQ request with the payload body to the server func (c *Client) RawInformation(from, to, id, iqType, body string) (string, error) { - const xmlIQ = "%s" + const xmlIQ = "%s\n" _, err := fmt.Fprintf(c.stanzaWriter, xmlIQ, xmlEscape(from), xmlEscape(to), id, iqType, body) return id, err } diff --git a/xmpp_muc.go b/xmpp_muc.go index aec89bc..25b247e 100644 --- a/xmpp_muc.go +++ b/xmpp_muc.go @@ -25,7 +25,7 @@ const ( // Send sends room topic wrapped inside an XMPP message stanza body. func (c *Client) SendTopic(chat Chat) (n int, err error) { - return fmt.Fprintf(c.stanzaWriter, ""+"%s", + return fmt.Fprintf(c.stanzaWriter, ""+"%s\n", xmlEscape(chat.Remote), xmlEscape(chat.Type), xmlEscape(chat.Text)) } @@ -47,34 +47,34 @@ func (c *Client) JoinMUC(jid, nick string, history_type, history int, history_da } switch history_type { case NoHistory: - return fmt.Fprintf(c.stanzaWriter, "\n"+ - "\n"+ - "", + return fmt.Fprintf(c.stanzaWriter, ""+ + ""+ + "\n", xmlEscape(jid), xmlEscape(nick), nsMUC) case CharHistory: - return fmt.Fprintf(c.stanzaWriter, "\n"+ + return fmt.Fprintf(c.stanzaWriter, ""+ "\n"+ - "\n"+ - "", + ""+ + "\n", xmlEscape(jid), xmlEscape(nick), nsMUC, history) case StanzaHistory: - return fmt.Fprintf(c.stanzaWriter, "\n"+ - "\n"+ - "\n"+ - "", + return fmt.Fprintf(c.stanzaWriter, ""+ + ""+ + ""+ + "\n", xmlEscape(jid), xmlEscape(nick), nsMUC, history) case SecondsHistory: - return fmt.Fprintf(c.stanzaWriter, "\n"+ - "\n"+ - "\n"+ - "", + return fmt.Fprintf(c.stanzaWriter, ""+ + ""+ + ""+ + "\n", xmlEscape(jid), xmlEscape(nick), nsMUC, history) case SinceHistory: if history_date != nil { - return fmt.Fprintf(c.stanzaWriter, "\n"+ - "\n"+ - "\n"+ - "", + return fmt.Fprintf(c.stanzaWriter, ""+ + ""+ + ""+ + "\n", xmlEscape(jid), xmlEscape(nick), nsMUC, history_date.Format(time.RFC3339)) } } @@ -88,40 +88,40 @@ func (c *Client) JoinProtectedMUC(jid, nick string, password string, history_typ } switch history_type { case NoHistory: - return fmt.Fprintf(c.stanzaWriter, "\n"+ - "\n"+ + return fmt.Fprintf(c.stanzaWriter, ""+ + ""+ "%s"+ - "\n"+ - "", + ""+ + "\n", xmlEscape(jid), xmlEscape(nick), nsMUC, xmlEscape(password)) case CharHistory: - return fmt.Fprintf(c.stanzaWriter, "\n"+ - "\n"+ - "%s\n"+ - "\n"+ - "", + return fmt.Fprintf(c.stanzaWriter, ""+ + ""+ + "%s"+ + ""+ + "\n", xmlEscape(jid), xmlEscape(nick), nsMUC, xmlEscape(password), history) case StanzaHistory: - return fmt.Fprintf(c.stanzaWriter, "\n"+ - "\n"+ - "%s\n"+ - "\n"+ - "", + return fmt.Fprintf(c.stanzaWriter, ""+ + ""+ + "%s"+ + ""+ + "\n", xmlEscape(jid), xmlEscape(nick), nsMUC, xmlEscape(password), history) case SecondsHistory: - return fmt.Fprintf(c.stanzaWriter, "\n"+ - "\n"+ - "%s\n"+ - "\n"+ - "", + return fmt.Fprintf(c.stanzaWriter, ""+ + ""+ + "%s"+ + ""+ + "\n", xmlEscape(jid), xmlEscape(nick), nsMUC, xmlEscape(password), history) case SinceHistory: if history_date != nil { - return fmt.Fprintf(c.stanzaWriter, "\n"+ - "\n"+ - "%s\n"+ - "\n"+ - "", + return fmt.Fprintf(c.stanzaWriter, ""+ + ""+ + "%s"+ + ""+ + "\n", xmlEscape(jid), xmlEscape(nick), nsMUC, xmlEscape(password), history_date.Format(time.RFC3339)) } } @@ -130,6 +130,6 @@ func (c *Client) JoinProtectedMUC(jid, nick string, password string, history_typ // xep-0045 7.14 func (c *Client) LeaveMUC(jid string) (n int, err error) { - return fmt.Fprintf(c.stanzaWriter, "", + return fmt.Fprintf(c.stanzaWriter, "\n", c.jid, xmlEscape(jid)) } diff --git a/xmpp_ping.go b/xmpp_ping.go index b22e52d..f851d41 100644 --- a/xmpp_ping.go +++ b/xmpp_ping.go @@ -11,23 +11,23 @@ func (c *Client) PingC2S(jid, server string) error { if server == "" { server = c.domain } - _, err := fmt.Fprintf(c.stanzaWriter, "\n"+ - "\n"+ - "", + _, err := fmt.Fprintf(c.stanzaWriter, ""+ + ""+ + "\n", xmlEscape(jid), xmlEscape(server)) return err } func (c *Client) PingS2S(fromServer, toServer string) error { - _, err := fmt.Fprintf(c.stanzaWriter, "\n"+ - "\n"+ - "", + _, err := fmt.Fprintf(c.stanzaWriter, ""+ + ""+ + "\n", xmlEscape(fromServer), xmlEscape(toServer)) return err } func (c *Client) SendResultPing(id, toServer string) error { - _, err := fmt.Fprintf(c.stanzaWriter, "", + _, err := fmt.Fprintf(c.stanzaWriter, "\n", xmlEscape(toServer), xmlEscape(id)) return err } diff --git a/xmpp_subscription.go b/xmpp_subscription.go index 2f90339..37a03d2 100644 --- a/xmpp_subscription.go +++ b/xmpp_subscription.go @@ -5,21 +5,21 @@ import ( ) func (c *Client) ApproveSubscription(jid string) { - fmt.Fprintf(c.stanzaWriter, "", + fmt.Fprintf(c.stanzaWriter, "\n", xmlEscape(jid)) } func (c *Client) RevokeSubscription(jid string) { - fmt.Fprintf(c.stanzaWriter, "", + fmt.Fprintf(c.stanzaWriter, "\n", xmlEscape(jid)) } func (c *Client) RetrieveSubscription(jid string) { - fmt.Fprintf(c.conn, "", + fmt.Fprintf(c.conn, "\n", xmlEscape(jid)) } func (c *Client) RequestSubscription(jid string) { - fmt.Fprintf(c.stanzaWriter, "", + fmt.Fprintf(c.stanzaWriter, "\n", xmlEscape(jid)) }