X-Git-Url: http://www.git.cypherpunks.ru/?a=blobdiff_plain;f=src%2Fcmd%2Fnncp-check%2Fmain.go;h=721a54f4a02a12c13002d953031a3fd1e318e797;hb=b47dbfe6687569650fa544a4ecf3e4ea388390cb;hp=70ee2792c14f4e5913ff5759eb604e1803d554d6;hpb=28344f84b8a4543758436739360446509ead86ce;p=nncp.git diff --git a/src/cmd/nncp-check/main.go b/src/cmd/nncp-check/main.go index 70ee279..721a54f 100644 --- a/src/cmd/nncp-check/main.go +++ b/src/cmd/nncp-check/main.go @@ -24,8 +24,9 @@ import ( "log" "os" "path/filepath" + "time" - "go.cypherpunks.ru/nncp/v6" + "go.cypherpunks.ru/nncp/v8" ) func usage() { @@ -38,6 +39,7 @@ func usage() { func main() { var ( nock = flag.Bool("nock", false, "Process .nock files") + cycle = flag.Uint("cycle", 0, "Repeat check after N seconds in infinite loop") cfgPath = flag.String("cfg", nncp.DefaultCfgPath, "Path to configuration file") nodeRaw = flag.String("node", "", "Process only that node") spoolPath = flag.String("spool", "", "Override path to spool") @@ -49,6 +51,7 @@ func main() { version = flag.Bool("version", false, "Print version information") warranty = flag.Bool("warranty", false, "Print warranty information") ) + log.SetFlags(log.Lshortfile) flag.Usage = usage flag.Parse() if *warranty { @@ -82,6 +85,7 @@ func main() { } } +Cycle: isBad := false for nodeId, node := range ctx.Neigh { if nodeOnly != nil && nodeId != *nodeOnly.Id { @@ -89,7 +93,7 @@ func main() { } if *nock { for job := range ctx.JobsNoCK(node.Id) { - if _, err = ctx.CheckNoCK(node.Id, job.HshValue); err != nil { + if _, err = ctx.CheckNoCK(node.Id, job.HshValue, nil); err != nil { pktName := nncp.Base32Codec.EncodeToString(job.HshValue[:]) log.Println(filepath.Join( ctx.Spool, @@ -104,6 +108,10 @@ func main() { isBad = true } } + if *cycle > 0 { + time.Sleep(time.Duration(*cycle) * time.Second) + goto Cycle + } if isBad { os.Exit(1) }