}
var (
- MagicNNCPLv1 [8]byte = [8]byte{'N', 'N', 'C', 'P', 'S', 0, 0, 1}
-
SPInfoOverhead int
SPFreqOverhead int
SPFileOverhead int
func (state *SPState) WriteSP(dst io.Writer, payload []byte, ping bool) error {
state.writeSPBuf.Reset()
n, err := xdr.Marshal(&state.writeSPBuf, SPRaw{
- Magic: MagicNNCPLv1,
+ Magic: MagicNNCPSv1.B,
Payload: payload,
})
if err != nil {
}
state.RxLastSeen = time.Now()
state.RxBytes += int64(n)
- if sp.Magic != MagicNNCPLv1 {
+ if sp.Magic != MagicNNCPSv1.B {
return nil, BadMagic
}
return sp.Payload, nil
}
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