mirror of
https://github.com/ergochat/ergo.git
synced 2024-11-22 11:59:40 +01:00
fix casefolding issue in muting RELAYMSG
Reported by @mogad0n; the mute mask was being case-canonicalized, but the RELAYMSG identifier wasn't being case-canonicalized before the check.
This commit is contained in:
parent
42aafc1f0c
commit
bfae13aad9
@ -2678,7 +2678,7 @@ func relaymsgHandler(server *Server, client *Client, msg ircmsg.Message, rb *Res
|
|||||||
message := utils.MakeMessage(rawMessage)
|
message := utils.MakeMessage(rawMessage)
|
||||||
|
|
||||||
nick := msg.Params[1]
|
nick := msg.Params[1]
|
||||||
_, err := CasefoldName(nick)
|
cfnick, err := CasefoldName(nick)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
rb.Add(nil, server.name, "FAIL", "RELAYMSG", "INVALID_NICK", client.t("Invalid nickname"))
|
rb.Add(nil, server.name, "FAIL", "RELAYMSG", "INVALID_NICK", client.t("Invalid nickname"))
|
||||||
return false
|
return false
|
||||||
@ -2687,7 +2687,7 @@ func relaymsgHandler(server *Server, client *Client, msg ircmsg.Message, rb *Res
|
|||||||
rb.Add(nil, server.name, "FAIL", "RELAYMSG", "INVALID_NICK", fmt.Sprintf(client.t("Relayed nicknames MUST contain a relaymsg separator from this set: %s"), config.Server.Relaymsg.Separators))
|
rb.Add(nil, server.name, "FAIL", "RELAYMSG", "INVALID_NICK", fmt.Sprintf(client.t("Relayed nicknames MUST contain a relaymsg separator from this set: %s"), config.Server.Relaymsg.Separators))
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
if channel.relayNickMuted(nick) {
|
if channel.relayNickMuted(cfnick) {
|
||||||
rb.Add(nil, server.name, "FAIL", "RELAYMSG", "BANNED", fmt.Sprintf(client.t("%s is banned from relaying to the channel"), nick))
|
rb.Add(nil, server.name, "FAIL", "RELAYMSG", "BANNED", fmt.Sprintf(client.t("%s is banned from relaying to the channel"), nick))
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user