From 6ccaeed0073c002a7ed49f6147af2f44abbda395 Mon Sep 17 00:00:00 2001 From: Shivaram Lingamneni Date: Sat, 21 Jun 2025 22:21:03 -0400 Subject: [PATCH] refactor key validation --- irc/metadata.go | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/irc/metadata.go b/irc/metadata.go index 8485862d..254df951 100644 --- a/irc/metadata.go +++ b/irc/metadata.go @@ -105,11 +105,10 @@ func syncChannelMetadata(server *Server, rb *ResponseBuffer, channel *Channel) { } } -var metadataEvilCharsRegexp = regexp.MustCompile("[^A-Za-z0-9_./-]+") +var validMetadataKeyRegexp = regexp.MustCompile("^[A-Za-z0-9_./-]+$") func metadataKeyIsEvil(key string) bool { - return len(key) == 0 || // key needs to contain stuff - metadataEvilCharsRegexp.MatchString(key) // key can't contain the stuff it can't contain + return !validMetadataKeyRegexp.MatchString(key) } func metadataCanIEditThisKey(client *Client, targetObj MetadataHaver, key string) bool {