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 return isvalid
}) })
_ = v.RegisterValidation("addressrange6_valid", func(fl validator.FieldLevel) bool { _ = v.RegisterValidation("addressrange6_valid", func(fl validator.FieldLevel) bool {
isvalid := fl.Field().String() == "" || functions.IsIpCIDR(fl.Field().String()) isvalid := true
return isvalid if *network.IsDualStack {
isvalid = functions.IsIpCIDR(fl.Field().String())
}
return isvalid
}) })

View File

@@ -11,7 +11,7 @@ import (
type Network struct { type Network struct {
ID primitive.ObjectID `json:"_id,omitempty" bson:"_id,omitempty"` ID primitive.ObjectID `json:"_id,omitempty" bson:"_id,omitempty"`
AddressRange string `json:"addressrange" bson:"addressrange" validate:"required,addressrange_valid"` 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"` 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"` NetID string `json:"netid" bson:"netid" validate:"required,netid_valid,min=1,max=12"`
NodesLastModified int64 `json:"nodeslastmodified" bson:"nodeslastmodified"` NodesLastModified int64 `json:"nodeslastmodified" bson:"nodeslastmodified"`