)
type MTHAndOffset struct {
- mth *MTH
+ mth MTH
offset uint64
}
type SPCheckerTask struct {
nodeId *NodeId
hsh *[MTHSize]byte
- mth *MTH
+ mth MTH
done chan []byte
}
}
if !state.NoCK {
spCheckerOnce.Do(func() { go SPChecker(state.Ctx) })
+ go func() {
+ for job := range state.Ctx.JobsNoCK(state.Node.Id) {
+ if job.PktEnc.Nice <= state.Nice {
+ spCheckerTasks <- SPCheckerTask{
+ nodeId: state.Node.Id,
+ hsh: job.HshValue,
+ done: state.payloads,
+ }
+ }
+ }
+ }()
}
// Remaining handshake payload sending
}
if hasherAndOffset != nil {
delete(state.fileHashers, filePath)
- if hasherAndOffset.mth.PrependSize == 0 {
+ if hasherAndOffset.mth.PrependSize() == 0 {
if bytes.Compare(hasherAndOffset.mth.Sum(nil), file.Hash[:]) != 0 {
state.Ctx.LogE(
"sp-file-bad-checksum", lesp,