From 9bf60e87e98ac53859d5690672e6db08103c2f92 Mon Sep 17 00:00:00 2001 From: Paul Makles Date: Sat, 28 Oct 2023 14:53:28 +0100 Subject: [PATCH] fix: validate masquerade on new message models --- crates/core/models/src/v0/messages.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/crates/core/models/src/v0/messages.rs b/crates/core/models/src/v0/messages.rs index 435c3bc4..90dc39fc 100644 --- a/crates/core/models/src/v0/messages.rs +++ b/crates/core/models/src/v0/messages.rs @@ -98,17 +98,19 @@ auto_derived!( /// Name and / or avatar override information #[cfg_attr(feature = "validator", derive(Validate))] pub struct Masquerade { - // FIXME: missing validation /// Replace the display name shown on this message #[serde(skip_serializing_if = "Option::is_none")] + #[validate(length(min = 1, max = 32))] pub name: Option, /// Replace the avatar shown on this message (URL to image file) #[serde(skip_serializing_if = "Option::is_none")] + #[validate(length(min = 1, max = 256))] pub avatar: Option, /// Replace the display role colour shown on this message /// /// Must have `ManageRole` permission to use #[serde(skip_serializing_if = "Option::is_none")] + #[validate(length(min = 1, max = 128), regex = "RE_COLOUR")] pub colour: Option, }