|
@@ -30,6 +30,7 @@ import (
|
|
|
"github.com/ethereum/go-ethereum/p2p"
|
|
"github.com/ethereum/go-ethereum/p2p"
|
|
|
"github.com/ethereum/go-ethereum/p2p/discv5"
|
|
"github.com/ethereum/go-ethereum/p2p/discv5"
|
|
|
"github.com/ethereum/go-ethereum/p2p/enode"
|
|
"github.com/ethereum/go-ethereum/p2p/enode"
|
|
|
|
|
+ "github.com/ethereum/go-ethereum/p2p/enr"
|
|
|
"github.com/ethereum/go-ethereum/params"
|
|
"github.com/ethereum/go-ethereum/params"
|
|
|
"github.com/ethereum/go-ethereum/rpc"
|
|
"github.com/ethereum/go-ethereum/rpc"
|
|
|
)
|
|
)
|
|
@@ -136,12 +137,17 @@ func (s *LesServer) APIs() []rpc.API {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
func (s *LesServer) Protocols() []p2p.Protocol {
|
|
func (s *LesServer) Protocols() []p2p.Protocol {
|
|
|
- return s.makeProtocols(ServerProtocolVersions, s.handler.runPeer, func(id enode.ID) interface{} {
|
|
|
|
|
|
|
+ ps := s.makeProtocols(ServerProtocolVersions, s.handler.runPeer, func(id enode.ID) interface{} {
|
|
|
if p := s.peers.Peer(peerIdToString(id)); p != nil {
|
|
if p := s.peers.Peer(peerIdToString(id)); p != nil {
|
|
|
return p.Info()
|
|
return p.Info()
|
|
|
}
|
|
}
|
|
|
return nil
|
|
return nil
|
|
|
})
|
|
})
|
|
|
|
|
+ // Add "les" ENR entries.
|
|
|
|
|
+ for i := range ps {
|
|
|
|
|
+ ps[i].Attributes = []enr.Entry{&lesEntry{}}
|
|
|
|
|
+ }
|
|
|
|
|
+ return ps
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// Start starts the LES server
|
|
// Start starts the LES server
|