diff --git a/downstream.go b/downstream.go index db721db..3b47815 100644 --- a/downstream.go +++ b/downstream.go @@ -75,8 +75,9 @@ var permanentDownstreamCaps = map[string]string{ // needAllDownstreamCaps is the list of downstream capabilities that // require support from all upstreams to be enabled var needAllDownstreamCaps = map[string]string{ - "away-notify": "", - "multi-prefix": "", + "away-notify": "", + "extended-join": "", + "multi-prefix": "", } type downstreamConn struct { @@ -281,6 +282,9 @@ func (dc *downstreamConn) SendMessage(msg *irc.Message) { } } } + if msg.Command == "JOIN" && !dc.caps["extended-join"] { + msg.Params = msg.Params[:1] + } dc.conn.SendMessage(msg) } diff --git a/upstream.go b/upstream.go index f76f68e..60c2d2b 100644 --- a/upstream.go +++ b/upstream.go @@ -26,6 +26,7 @@ import ( var permanentUpstreamCaps = map[string]bool{ "away-notify": true, "batch": true, + "extended-join": true, "labeled-response": true, "message-tags": true, "multi-prefix": true,