Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AfiSafi ¶
type AfiSafi struct { RoutePolicyIn *routingpolicy.RoutePolicyLite `json:"route_policy_in" validate:"omitempty"` RoutePolicyOut *routingpolicy.RoutePolicyLite `json:"route_policy_out" validate:"omitempty"` Name AfiSafiChoice `json:"afi_safi_name" validate:"required"` }
type AfiSafiChoice ¶
type AfiSafiChoice string
const ( IPv4Unicast AfiSafiChoice = "ipv4-unicast" IPv6Unicast AfiSafiChoice = "ipv6-unicast" L2vpnEvpn AfiSafiChoice = "l2vpn-evpn" )
type BGPGlobal ¶
type BGPGlobal struct { Device struct { Name string `json:"name" validate:"required"` } `json:"device" validate:"required"` LocalAsn common.ASN `json:"local_asn" validate:"required"` EBGPAdministrativeDistance *uint8 `json:"ebgp_administrative_distance" validate:"omitempty"` IBGPAdministrativeDistance *uint8 `json:"ibgp_administrative_distance" validate:"omitempty"` GracefulRestartEnabled *bool `json:"graceful_restart" validate:"required"` GracefulRestartTime *uint16 `json:"graceful_restart_time" validate:"omitempty"` EcmpEnabled *bool `json:"ecmp" validate:"required"` EcmpMaximumPaths *uint32 `json:"ecmp_maximum_paths" validate:"omitempty"` RouterID string `json:"router_id" validate:"omitempty"` }
type DeviceSession ¶
type DeviceSession struct { Device struct { Name string `json:"name" validate:"required"` } `json:"device" validate:"required"` LocalAsn common.ASN `json:"local_asn" validate:"required"` PeerGroup *PeerGroupLite `json:"peer_group" validate:"omitempty"` RoutePolicyIn *routingpolicy.RoutePolicyLite `json:"route_policy_in" validate:"omitempty"` RoutePolicyOut *routingpolicy.RoutePolicyLite `json:"route_policy_out" validate:"omitempty"` AfiSafis []*AfiSafi `json:"afi_safis" validate:"required"` Enabled *bool `json:"enabled" validate:"required"` Description string `json:"description" validate:"omitempty"` LocalAddress Address `json:"local_address" validate:"required"` MaximumPrefixes uint32 `json:"maximum_prefixes" validate:"omitempty"` EnforceFirstAs bool `json:"enforce_first_as" validate:"omitempty"` }
type PeerGroup ¶
type PeerGroup struct { Device struct { Name string `json:"name" validate:"required"` } `json:"device" validate:"required"` Name string `json:"name" validate:"required"` RemoteAsn *common.ASN `json:"remote_asn" validate:"omitempty"` LocalAsn *common.ASN `json:"local_asn" validate:"omitempty"` RoutePolicyIn *routingpolicy.RoutePolicyLite `json:"route_policy_in" validate:"omitempty"` RoutePolicyOut *routingpolicy.RoutePolicyLite `json:"route_policy_out" validate:"omitempty"` Description string `json:"description" validate:"omitempty"` EnforceFirstAs bool `json:"enforce_first_as" validate:"omitempty"` }
type PeerGroupLite ¶
type PeerGroupLite struct {
Name string `json:"name" validate:"required"`
}
type Session ¶
type Session struct { Password string `json:"password" validate:"omitempty"` PeerA DeviceSession `json:"peer_a" validate:"required"` PeerB DeviceSession `json:"peer_b" validate:"required"` }
Click to show internal directories.
Click to hide internal directories.