fixing address validation

This commit is contained in:
afeiszli 2021-04-27 23:22:52 -04:00
parent a0dd5929cb
commit 22b5a714fd
2 changed files with 6 additions and 3 deletions

View file

@ -149,8 +149,11 @@ func validateNetworkCreate(network models.Network) error {
return isvalid
})
_ = v.RegisterValidation("addressrange6_valid", func(fl validator.FieldLevel) bool {
isvalid := fl.Field().String() == "" || functions.IsIpCIDR(fl.Field().String())
return isvalid
isvalid := true
if *network.IsDualStack {
isvalid = functions.IsIpCIDR(fl.Field().String())
}
return isvalid
})

View file

@ -11,7 +11,7 @@ import (
type Network struct {
ID primitive.ObjectID `json:"_id,omitempty" bson:"_id,omitempty"`
AddressRange string `json:"addressrange" bson:"addressrange" validate:"required,addressrange_valid"`
AddressRange6 string `json:"addressrange6" bson:"addressrange6" validate:"required,addressrange6_valid"`
AddressRange6 string `json:"addressrange6" bson:"addressrange6" validate:"addressrange6_valid"`
DisplayName string `json:"displayname,omitempty" bson:"displayname,omitempty" validate:"omitempty,displayname_unique,min=1,max=100"`
NetID string `json:"netid" bson:"netid" validate:"required,netid_valid,min=1,max=12"`
NodesLastModified int64 `json:"nodeslastmodified" bson:"nodeslastmodified"`