From b3ac56e3d28ede224cb4005b12c5f32f3599b9b8 Mon Sep 17 00:00:00 2001 From: Bryan Boreham Date: Tue, 25 Apr 2017 15:21:07 +0000 Subject: [PATCH] Update mesh library and check for errors newly returned --- prog/weaver/main.go | 11 ++++++++--- router/network_router.go | 10 +++++++--- vendor/github.com/weaveworks/mesh | 2 +- 3 files changed, 16 insertions(+), 7 deletions(-) diff --git a/prog/weaver/main.go b/prog/weaver/main.go index f2666188..97e7c3fa 100644 --- a/prog/weaver/main.go +++ b/prog/weaver/main.go @@ -254,7 +254,8 @@ func main() { checkFatal(err) defer db.Close() - router := weave.NewNetworkRouter(config, networkConfig, name, nickName, overlay, db) + router, err := weave.NewNetworkRouter(config, networkConfig, name, nickName, overlay, db) + checkFatal(err) Log.Println("Our name is", router.Ourself) if peers, err = router.InitialPeers(resume, peers); err != nil { @@ -476,7 +477,9 @@ func createAllocator(router *weave.NetworkRouter, config ipamConfig, preClaims [ allocator := ipam.NewAllocator(c) - allocator.SetInterfaces(router.NewGossip("IPallocation", allocator)) + gossip, err := router.NewGossip("IPallocation", allocator) + checkFatal(err) + allocator.SetInterfaces(gossip) allocator.Start() router.Peers.OnGC(func(peer *mesh.Peer) { allocator.PeerGone(peer.Name) }) @@ -486,7 +489,9 @@ func createAllocator(router *weave.NetworkRouter, config ipamConfig, preClaims [ func createDNSServer(config dnsConfig, router *mesh.Router, isKnownPeer func(mesh.PeerName) bool) (*nameserver.Nameserver, *nameserver.DNSServer) { ns := nameserver.New(router.Ourself.Peer.Name, config.Domain, isKnownPeer) router.Peers.OnGC(func(peer *mesh.Peer) { ns.PeerGone(peer.Name) }) - ns.SetGossip(router.NewGossip("nameserver", ns)) + gossip, err := router.NewGossip("nameserver", ns) + checkFatal(err) + ns.SetGossip(gossip) upstream := nameserver.NewUpstream(config.ResolvConf, config.EffectiveListenAddress) dnsserver, err := nameserver.NewDNSServer(ns, config.Domain, config.ListenAddress, upstream, uint32(config.TTL), config.ClientTimeout) diff --git a/router/network_router.go b/router/network_router.go index a7c83dba..36582c2b 100644 --- a/router/network_router.go +++ b/router/network_router.go @@ -51,7 +51,7 @@ type NetworkRouter struct { db db.DB } -func NewNetworkRouter(config mesh.Config, networkConfig NetworkConfig, name mesh.PeerName, nickName string, overlay NetworkOverlay, db db.DB) *NetworkRouter { +func NewNetworkRouter(config mesh.Config, networkConfig NetworkConfig, name mesh.PeerName, nickName string, overlay NetworkOverlay, db db.DB) (*NetworkRouter, error) { if overlay == nil { overlay = NullNetworkOverlay{} } @@ -59,7 +59,11 @@ func NewNetworkRouter(config mesh.Config, networkConfig NetworkConfig, name mesh networkConfig.Bridge = NullBridge{} } - router := &NetworkRouter{Router: mesh.NewRouter(config, name, nickName, overlay, common.LogLogger()), NetworkConfig: networkConfig, db: db} + meshRouter, err := mesh.NewRouter(config, name, nickName, overlay, common.LogLogger()) + if err != nil { + return nil, err + } + router := &NetworkRouter{Router: meshRouter, NetworkConfig: networkConfig, db: db} router.Peers.OnInvalidateShortIDs(overlay.InvalidateShortIDs) router.Routes.OnChange(overlay.InvalidateRoutes) router.Macs = NewMacCache(macMaxAge, @@ -67,7 +71,7 @@ func NewNetworkRouter(config mesh.Config, networkConfig NetworkConfig, name mesh log.Println("Expired MAC", mac, "at", peer) }) router.Peers.OnGC(func(peer *mesh.Peer) { router.Macs.Delete(peer) }) - return router + return router, nil } // Start listening for TCP connections, locally captured packets, and diff --git a/vendor/github.com/weaveworks/mesh b/vendor/github.com/weaveworks/mesh index 5015f896..9a382455 160000 --- a/vendor/github.com/weaveworks/mesh +++ b/vendor/github.com/weaveworks/mesh @@ -1 +1 @@ -Subproject commit 5015f896ab62d3e9fe757456c757521ce0c3faff +Subproject commit 9a3824558758fb39a0e34f9aa6baa179fba8e3bc