Skip to content

Commit ae72216

Browse files
committed
fix: reject non-RFC UUID variants in provided API keys
1 parent c196bff commit ae72216

1 file changed

Lines changed: 4 additions & 1 deletion

File tree

‎src/apikeys.rs‎

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,10 @@ pub struct CreateApiKeyRequest {
5353
/// Require a hyphenated UUID v4, allowing either letter case.
5454
pub fn validate_api_key(value: &str) -> Result<(), ApiKeyError> {
5555
let uuid = uuid::Uuid::parse_str(value).map_err(|_| ApiKeyError::InvalidApiKey)?;
56-
if value.len() != 36 || uuid.get_version_num() != 4 {
56+
if value.len() != 36
57+
|| uuid.get_version_num() != 4
58+
|| uuid.get_variant() != uuid::Variant::RFC4122
59+
{
5760
return Err(ApiKeyError::InvalidApiKey);
5861
}
5962
Ok(())

0 commit comments

Comments
 (0)