summaryrefslogtreecommitdiffhomepage
path: root/config
diff options
context:
space:
mode:
authorWataru Ishida <ishida.wataru@lab.ntt.co.jp>2016-11-04 13:19:47 +0900
committerFUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>2016-11-04 13:19:47 +0900
commita17832195c5fc42d6d0ec3dd7cc4868694bed88d (patch)
tree14381d27f1e58a6c399de90cc206d2433d8d366f /config
parent97bc9dd0da71ce743dbb7deb4a09f260ca518dcc (diff)
support neighbor belongs to VRF
$ gobgp vrf add red rd 100:100 rt both 100:100 $ gobgp neighbor add 10.0.0.1 as 2 vrf red $ gobgp vrf red neighbor Peer AS Up/Down State |#Advertised Received Accepted 10.0.0.1 2 never Active | 0 0 0 Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
Diffstat (limited to 'config')
-rw-r--r--config/bgp_configs.go10
1 files changed, 10 insertions, 0 deletions
diff --git a/config/bgp_configs.go b/config/bgp_configs.go
index 76b7e379..c4de955c 100644
--- a/config/bgp_configs.go
+++ b/config/bgp_configs.go
@@ -2522,6 +2522,8 @@ type NeighborState struct {
Flops uint32 `mapstructure:"flops"`
// original -> gobgp:neighbor-interface
NeighborInterface string `mapstructure:"neighbor-interface"`
+ // original -> gobgp:vrf
+ Vrf string `mapstructure:"vrf"`
// original -> gobgp:remote-router-id
RemoteRouterId string `mapstructure:"remote-router-id"`
}
@@ -2601,6 +2603,9 @@ func (lhs *NeighborState) Equal(rhs *NeighborState) bool {
if lhs.NeighborInterface != rhs.NeighborInterface {
return false
}
+ if lhs.Vrf != rhs.Vrf {
+ return false
+ }
if lhs.RemoteRouterId != rhs.RemoteRouterId {
return false
}
@@ -2638,6 +2643,8 @@ type NeighborConfig struct {
AdminDown bool `mapstructure:"admin-down"`
// original -> gobgp:neighbor-interface
NeighborInterface string `mapstructure:"neighbor-interface"`
+ // original -> gobgp:vrf
+ Vrf string `mapstructure:"vrf"`
}
func (lhs *NeighborConfig) Equal(rhs *NeighborConfig) bool {
@@ -2680,6 +2687,9 @@ func (lhs *NeighborConfig) Equal(rhs *NeighborConfig) bool {
if lhs.NeighborInterface != rhs.NeighborInterface {
return false
}
+ if lhs.Vrf != rhs.Vrf {
+ return false
+ }
return true
}