package validators import ( "strconv" "github.com/pkg/errors" ) func ValidatePositive(value *int, dflt string) (err error) { if *value == 0 && dflt != "" { v, err := strconv.ParseInt(dflt, 10, 64) if err != nil { return err } *value = int(v) } if *value <= 0 { return errors.Errorf("%d is not a positive value", *value) } return nil } func ValidatePort(value *uint16, dflt string) (err error) { if *value == 0 && dflt != "" { v, err := strconv.ParseUint(dflt, 10, 16) if err != nil { return err } *value = uint16(v) } return nil }