From 836d042f547e1d48211205b979320c544c04e7d3 Mon Sep 17 00:00:00 2001 From: Abhishek Upperwal Date: Wed, 25 Jul 2018 23:42:03 +0530 Subject: [PATCH] added ipv6 + checking for default transport --- defaults.go | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/defaults.go b/defaults.go index cca571e..973cf5c 100644 --- a/defaults.go +++ b/defaults.go @@ -55,11 +55,19 @@ var RandomIdentity = func(cfg *Config) error { // DefaultListenAddrs configures libp2p to use default listen address var DefaultListenAddrs = func(cfg *Config) error { - defaultListenAddr, err := multiaddr.NewMultiaddr("/ip4/0.0.0.0/tcp/0") + defaultIP4ListenAddr, err := multiaddr.NewMultiaddr("/ip4/0.0.0.0/tcp/0") if err != nil { return err } - return cfg.Apply(ListenAddrs(defaultListenAddr)) + + defaultIP6ListenAddr, err := multiaddr.NewMultiaddr("/ip6/0.0.0.0/tcp/0") + if err != nil { + return err + } + return cfg.Apply(ListenAddrs( + defaultIP4ListenAddr, + defaultIP6ListenAddr, + )) } // Complete list of default options and when to fallback on them. @@ -70,6 +78,10 @@ var defaults = []struct { fallback func(cfg *Config) bool opt Option }{ + { + fallback: func(cfg *Config) bool { return cfg.Transports == nil && cfg.ListenAddrs == nil }, + opt: DefaultListenAddrs, + }, { fallback: func(cfg *Config) bool { return cfg.Transports == nil }, opt: DefaultTransports, @@ -90,10 +102,6 @@ var defaults = []struct { fallback: func(cfg *Config) bool { return cfg.Peerstore == nil }, opt: DefaultPeerstore, }, - { - fallback: func(cfg *Config) bool { return cfg.ListenAddrs == nil }, - opt: DefaultListenAddrs, - }, } // Defaults configures libp2p to use the default options. Can be combined with -- GitLab