(currentBlockNumber uint64)
| 455 | } |
| 456 | |
| 457 | func (d *DosNode) handleRandom(currentBlockNumber uint64) { |
| 458 | groupSize, err := d.chain.GetWorkingGroupSize() |
| 459 | if err != nil { |
| 460 | d.logger.Error(err) |
| 461 | return |
| 462 | } |
| 463 | if groupSize == 0 { |
| 464 | d.logger.Debug("[DOS] No live working group, skipping...") |
| 465 | return |
| 466 | } |
| 467 | lastUpdatedBlock, err := d.chain.LastUpdatedBlock() |
| 468 | if err != nil { |
| 469 | d.logger.Error(err) |
| 470 | return |
| 471 | } |
| 472 | sysrandInterval, err := d.chain.RefreshSystemRandomHardLimit() |
| 473 | if err != nil { |
| 474 | d.logger.Error(err) |
| 475 | return |
| 476 | } |
| 477 | diff := currentBlockNumber - lastUpdatedBlock |
| 478 | if diff > sysrandInterval { |
| 479 | d.logger.Debug("[DOS] Signaling system randomness refresh...") |
| 480 | d.chain.SignalRandom() |
| 481 | } |
| 482 | } |
| 483 | |
| 484 | func (d *DosNode) handleBootstrap(currentBlockNumber uint64) { |
| 485 | cid, err := d.chain.BootstrapRound() |
no test coverage detected