aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--eth/protocol.go7
1 files changed, 7 insertions, 0 deletions
diff --git a/eth/protocol.go b/eth/protocol.go
index c9a5dea8d..24a0f0a8e 100644
--- a/eth/protocol.go
+++ b/eth/protocol.go
@@ -67,6 +67,8 @@ type newBlockMsgData struct {
TD *big.Int
}
+const maxHashes = 255
+
type getBlockHashesMsgData struct {
Hash []byte
Amount uint64
@@ -139,6 +141,11 @@ func (self *ethProtocol) handle() error {
if err := msg.Decode(&request); err != nil {
return self.protoError(ErrDecode, "->msg %v: %v", msg, err)
}
+
+ //request.Amount = uint64(math.Min(float64(maxHashes), float64(request.Amount)))
+ if request.Amount > maxHashes {
+ request.Amount = maxHashes
+ }
hashes := self.chainManager.GetBlockHashesFromHash(request.Hash, request.Amount)
return p2p.EncodeMsg(self.rw, BlockHashesMsg, ethutil.ByteSliceToInterface(hashes)...)