forked from cerc-io/plugeth
Changed peer format
This commit is contained in:
parent
1f7b13ff4e
commit
24349bc431
15
peer.go
15
peer.go
@ -106,7 +106,7 @@ type Peer struct {
|
||||
// this to prevent receiving false peers.
|
||||
requestedPeerList bool
|
||||
|
||||
host []byte
|
||||
host []interface{}
|
||||
port uint16
|
||||
caps Caps
|
||||
}
|
||||
@ -314,7 +314,8 @@ out:
|
||||
}
|
||||
|
||||
// Amount of parents in the canonical chain
|
||||
amountOfBlocks := msg.Data.Get(l).AsUint()
|
||||
//amountOfBlocks := msg.Data.Get(l).AsUint()
|
||||
amountOfBlocks := uint64(100)
|
||||
// Check each SHA block hash from the message and determine whether
|
||||
// the SHA is in the database
|
||||
for i := 0; i < l; i++ {
|
||||
@ -326,8 +327,10 @@ out:
|
||||
|
||||
// If a parent is found send back a reply
|
||||
if parent != nil {
|
||||
log.Printf("HASH %x (len %d) Amount = %d)\n", parent.Hash(), l, amountOfBlocks)
|
||||
chain := p.ethereum.BlockManager.BlockChain().GetChainFromHash(parent.Hash(), amountOfBlocks)
|
||||
p.QueueMessage(ethwire.NewMessage(ethwire.MsgBlockTy, append(chain, amountOfBlocks)))
|
||||
//log.Printf("%q\n", chain)
|
||||
p.QueueMessage(ethwire.NewMessage(ethwire.MsgBlockTy, chain))
|
||||
} else {
|
||||
// If no blocks are found we send back a reply with msg not in chain
|
||||
// and the last hash from get chain
|
||||
@ -349,13 +352,13 @@ out:
|
||||
p.Stop()
|
||||
}
|
||||
|
||||
func packAddr(address, port string) ([]byte, uint16) {
|
||||
func packAddr(address, port string) ([]interface{}, uint16) {
|
||||
addr := strings.Split(address, ".")
|
||||
a, _ := strconv.Atoi(addr[0])
|
||||
b, _ := strconv.Atoi(addr[1])
|
||||
c, _ := strconv.Atoi(addr[2])
|
||||
d, _ := strconv.Atoi(addr[3])
|
||||
host := []byte{byte(a), byte(b), byte(c), byte(d)}
|
||||
host := []interface{}{byte(a), byte(b), byte(c), byte(d)}
|
||||
prt, _ := strconv.Atoi(port)
|
||||
|
||||
return host, uint16(prt)
|
||||
@ -417,7 +420,7 @@ func (p *Peer) Stop() {
|
||||
|
||||
func (p *Peer) pushHandshake() error {
|
||||
msg := ethwire.NewMessage(ethwire.MsgHandshakeTy, []interface{}{
|
||||
uint32(0), uint32(0), "/Ethereum(G) v0.0.1/", byte(p.caps), p.port,
|
||||
uint32(1), uint32(0), "/Ethereum(G) v0.0.1/", byte(p.caps), p.port,
|
||||
})
|
||||
|
||||
p.QueueMessage(msg)
|
||||
|
Loading…
Reference in New Issue
Block a user