From 20b52fe33dc3387d50790ed6da8c47c34277527a Mon Sep 17 00:00:00 2001 From: Alexander Barton Date: Mon, 27 Jan 2014 22:59:54 +0100 Subject: [PATCH] Correctly use cloaked IRC masks on "INVITE nickname" The cloaked IRC mask of a user is his visible mask, so the daemon has to use it for generating the "one time" entries for the invite list of the given channel. Without this patch, ngIRCd records the real IRC mask which will never match while the target client is "+x", and even worse, will disclose the real mask on "MODE #channel +I" commands :-/ Bug reported by Cahata on #ngircd, thanks! --- src/ngircd/irc-op.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/ngircd/irc-op.c b/src/ngircd/irc-op.c index 23db579e..449cecfb 100644 --- a/src/ngircd/irc-op.c +++ b/src/ngircd/irc-op.c @@ -194,7 +194,8 @@ IRC_INVITE(CLIENT *Client, REQUEST *Req) if (remember) { /* We must remember this invite */ - if (!Channel_AddInvite(chan, Client_Mask(target), true)) + if (!Channel_AddInvite(chan, Client_MaskCloaked(target), + true)) return CONNECTED; } } -- 2.39.2