Skip to content

Commit 89b15b2

Browse files
committed
Merge remote-tracking branch 'upstream/insp4' into insp4
2 parents bef3db5 + c378658 commit 89b15b2

1 file changed

Lines changed: 8 additions & 2 deletions

File tree

src/modules/m_ircv3_ctctags.cpp

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -310,6 +310,12 @@ class C2CTags final
310310
&& tagvalue.find_first_of(" \n\r") != std::string::npos;
311311
}
312312

313+
static bool ValidateReaction(LocalUser* user, const std::string& tagvalue)
314+
{
315+
return !tagvalue.empty()
316+
&& tagvalue.length() <= 50;
317+
}
318+
313319
static bool ValidateTyping(LocalUser* user, const std::string& tagvalue)
314320
{
315321
// A typing notification is represented by a TAGMSG command sent with a
@@ -324,9 +330,9 @@ class C2CTags final
324330
AllowTags allowclientonlytags;
325331
insp::flat_map<std::string, std::function<bool(LocalUser*, const std::string&)>, irc::insensitive_swo> knowntags = {
326332
{ "+draft/channel-context", ValidateChannel }, // https://ircv3.net/specs/client-tags/channel-context
327-
{ "+draft/react", ValidateMessageId }, // https://ircv3.net/specs/client-tags/react
333+
{ "+draft/react", ValidateReaction }, // https://ircv3.net/specs/client-tags/react
328334
{ "+draft/reply", ValidateMessageId }, // https://ircv3.net/specs/client-tags/reply
329-
{ "+draft/unreact", ValidateMessageId }, // https://ircv3.net/specs/client-tags/react
335+
{ "+draft/unreact", ValidateReaction }, // https://ircv3.net/specs/client-tags/react
330336

331337
{ "+reply", ValidateMessageId }, // https://ircv3.net/specs/client-tags/reply
332338
{ "+typing", ValidateTyping }, // https://ircv3.net/specs/client-tags/typing

0 commit comments

Comments
 (0)