Update Interface Definition

This commit is contained in:
Samuel Lorch 2023-04-01 01:46:45 +02:00
parent f1d7f63079
commit 75b7da6d01

View file

@ -6,10 +6,15 @@ import (
) )
type Interface struct { type Interface struct {
Type InterfaceType `json:"type" validate:"min=0,max=3"` Type InterfaceType `json:"type" validate:"min=0,max=3"`
AddressingMode InterfaceAddressingMode `json:"addressing_mode" validate:"min=0,max=2"` AddressingMode InterfaceAddressingMode `json:"addressing_mode" validate:"min=0,max=2"`
Address netip.Addr `json:"address" validate:"min=0,max=2"` Address *netip.Addr `json:"address,omitempty" validate:"excluded_unless=AddressingMode 1"`
Comment string `json:"comment,omitempty"` HardwareInterface *string `json:"hardware_interface,omitempty" validate:"excluded_unless=Type 0"`
// TODO fix Validator for int pointers with min=0,max=4094
VlanID *uint `json:"vlan_id,omitempty" validate:"excluded_unless=Type 1"`
BondMembers *[]string `json:"bond_members,omitempty" validate:"excluded_unless=Type 2"`
BridgeMembers *[]string `json:"bridge_members,omitempty" validate:"excluded_unless=Type 3"`
Comment string `json:"comment,omitempty"`
} }
type InterfaceType int type InterfaceType int