4 ctypes "github.com/bytom/blockchain/rpc/types"
8 //-----------------------------------------------------------------------------
10 func NetInfo(p2pSwitch *p2p.Switch) (*ctypes.ResultNetInfo, error) {
11 listening := p2pSwitch.IsListening()
12 listeners := []string{}
13 for _, listener := range p2pSwitch.Listeners() {
14 listeners = append(listeners, listener.String())
16 peers := []ctypes.Peer{}
17 for _, peer := range p2pSwitch.Peers().List() {
18 peers = append(peers, ctypes.Peer{
19 NodeInfo: *peer.NodeInfo,
20 IsOutbound: peer.IsOutbound(),
21 ConnectionStatus: peer.Connection().Status(),
24 return &ctypes.ResultNetInfo{
31 //-----------------------------------------------------------------------------
33 // Dial given list of seeds
34 /*func UnsafeDialSeeds(seeds []string) (*ctypes.ResultDialSeeds, error) {
37 return &ctypes.ResultDialSeeds{}, fmt.Errorf("No seeds provided")
39 // starts go routines to dial each seed after random delays
40 logger.Info("DialSeeds", "addrBook", addrBook, "seeds", seeds)
41 err := p2pSwitch.DialSeeds(addrBook, seeds)
43 return &ctypes.ResultDialSeeds{}, err
45 return &ctypes.ResultDialSeeds{"Dialing seeds in progress. See /net_info for details"}, nil