added charsets support

This commit is contained in:
hypafrag 2018-10-13 19:45:48 +07:00
parent 95585866c2
commit 3a51dce786
2 changed files with 6 additions and 1 deletions

View file

@ -1,6 +1,9 @@
package xmpp // import "fluux.io/xmpp" package xmpp // import "fluux.io/xmpp"
import "os" import (
"io"
"os"
)
type Config struct { type Config struct {
Address string Address string
@ -12,4 +15,5 @@ type Config struct {
Retry int // Number of retries for connect Retry int // Number of retries for connect
ConnectTimeout int // Connection timeout in seconds. Default to 15 ConnectTimeout int // Connection timeout in seconds. Default to 15
Insecure bool // set to true to allow comms without TLS Insecure bool // set to true to allow comms without TLS
CharsetReader func(charset string, input io.Reader) (io.Reader, error) // passed to xml decoder
} }

View file

@ -82,6 +82,7 @@ func (s *Session) setProxy(conn net.Conn, newConn net.Conn, o Config) {
s.socketProxy = newSocketProxy(newConn, o.PacketLogger) s.socketProxy = newSocketProxy(newConn, o.PacketLogger)
} }
s.decoder = xml.NewDecoder(s.socketProxy) s.decoder = xml.NewDecoder(s.socketProxy)
s.decoder.CharsetReader = o.CharsetReader
} }
func (s *Session) open(domain string) (f streamFeatures) { func (s *Session) open(domain string) (f streamFeatures) {