From 169ee629fa8938f76494e52978d0d4f64dba3103 Mon Sep 17 00:00:00 2001 From: Chris Lu Date: Wed, 28 Jan 2026 16:21:15 -0800 Subject: [PATCH] s3tables: Improve bucket name validation error message Replace misleading character-only error message with generic 'invalid bucket name'. The isValidBucketName() function checks multiple constraints beyond character set (length, reserved prefixes/suffixes, start/end rules), so a specific character message is inaccurate. --- weed/s3api/s3tables/handler_bucket_create.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/weed/s3api/s3tables/handler_bucket_create.go b/weed/s3api/s3tables/handler_bucket_create.go index 645d42944..9e0a02fba 100644 --- a/weed/s3api/s3tables/handler_bucket_create.go +++ b/weed/s3api/s3tables/handler_bucket_create.go @@ -38,10 +38,10 @@ func (h *S3TablesHandler) handleCreateTableBucket(w http.ResponseWriter, r *http return fmt.Errorf("invalid bucket name length") } - // Validate bucket name characters [a-z0-9-] + // Validate bucket name if !isValidBucketName(req.Name) { - h.writeError(w, http.StatusBadRequest, ErrCodeInvalidRequest, "bucket name must contain only lowercase letters, numbers, and hyphens") - return fmt.Errorf("invalid bucket name characters") + h.writeError(w, http.StatusBadRequest, ErrCodeInvalidRequest, "invalid bucket name") + return fmt.Errorf("invalid bucket name") } bucketPath := getTableBucketPath(req.Name)