From df681c7266b97c2187003f683aca37ccce21fd83 Mon Sep 17 00:00:00 2001 From: TangBin Date: Wed, 20 Nov 2019 16:30:35 +0800 Subject: [PATCH] redis acl update bugfix --- pkg/compute/models/elasticcache_acls.go | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/pkg/compute/models/elasticcache_acls.go b/pkg/compute/models/elasticcache_acls.go index 06965a5477..7499a6a855 100644 --- a/pkg/compute/models/elasticcache_acls.go +++ b/pkg/compute/models/elasticcache_acls.go @@ -256,12 +256,19 @@ func (self *SElasticcacheAcl) ValidateUpdateData(ctx context.Context, userCred m } ipV := validators.NewIPv4AddrValidator("ip") + cidrV := validators.NewIPv4PrefixValidator("ip") _ips := strings.Split(ips, ",") for _, ip := range _ips { params := jsonutils.NewDict() params.Set("ip", jsonutils.NewString(ip)) - if err := ipV.Validate(params); err != nil { - return nil, err + if strings.Contains(ip, "/") { + if err := cidrV.Validate(params); err != nil { + return nil, err + } + } else { + if err := ipV.Validate(params); err != nil { + return nil, err + } } }