summaryrefslogtreecommitdiffhomepage
path: root/config/serve.go
diff options
context:
space:
mode:
authorISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>2016-03-16 16:02:34 +0900
committerISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>2016-03-17 10:47:03 +0900
commit5120cfc7ca03bb5742123b16d1452749d62c8db4 (patch)
treed0b2c75657080546e660cd871094b712f88845c0 /config/serve.go
parentb06b3ad42fe07cafd4ffee3e21068a324bff5bba (diff)
config: move Mrt/Bmp configuration outside of Global configuration
Global config basically store configuration whose change will cause all neighbor session restart. Mrt and Bmp configuration is not such. Put them outside of Global config. Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
Diffstat (limited to 'config/serve.go')
-rw-r--r--config/serve.go18
1 files changed, 12 insertions, 6 deletions
diff --git a/config/serve.go b/config/serve.go
index 4b5fbbe9..9cb3b31e 100644
--- a/config/serve.go
+++ b/config/serve.go
@@ -20,7 +20,7 @@ func ReadConfigfileServe(path, format string, configCh chan BgpConfigSet) {
cnt := 0
for {
- b := Bgp{}
+ var b *Bgp
v := viper.New()
v.SetConfigFile(path)
v.SetConfigType(format)
@@ -29,6 +29,8 @@ func ReadConfigfileServe(path, format string, configCh chan BgpConfigSet) {
Global Global `mapstructure:"global"`
Neighbors []Neighbor `mapstructure:"neighbors"`
RpkiServers []RpkiServer `mapstructure:"rpki-servers"`
+ BmpServers []BmpServer `mapstructure:"bmp-servers"`
+ Mrt Mrt `mapstructure:"mrt"`
DefinedSets DefinedSets `mapstructure:"defined-sets"`
PolicyDefinitions []PolicyDefinition `mapstructure:"policy-definitions"`
}{}
@@ -39,10 +41,14 @@ func ReadConfigfileServe(path, format string, configCh chan BgpConfigSet) {
if err != nil {
goto ERROR
}
- b.Global = c.Global
- b.Neighbors = c.Neighbors
- b.RpkiServers = c.RpkiServers
- err = SetDefaultConfigValues(v, &b)
+ b = &Bgp{
+ Global: c.Global,
+ Neighbors: c.Neighbors,
+ RpkiServers: c.RpkiServers,
+ BmpServers: c.BmpServers,
+ Mrt: c.Mrt,
+ }
+ err = SetDefaultConfigValues(v, b)
if err != nil {
goto ERROR
}
@@ -51,7 +57,7 @@ func ReadConfigfileServe(path, format string, configCh chan BgpConfigSet) {
}
cnt++
configCh <- BgpConfigSet{
- Bgp: b,
+ Bgp: *b,
Policy: RoutingPolicy{
DefinedSets: c.DefinedSets,
PolicyDefinitions: c.PolicyDefinitions,