]> Sergey Matveev's repositories - btrtrc.git/commitdiff
cmd/torrent2: Add merkle subcommand
authorMatt Joiner <anacrolix@gmail.com>
Mon, 25 Mar 2024 02:33:15 +0000 (13:33 +1100)
committerMatt Joiner <anacrolix@gmail.com>
Mon, 25 Mar 2024 02:33:15 +0000 (13:33 +1100)
cmd/torrent2/main.go

index 6017464ff2ba95e4a38f83426a3981884269e985..223c3fba189efed5c07d667d5e6c099ff36aca4e 100644 (file)
@@ -5,8 +5,12 @@ package main
 
 import (
        "fmt"
+       "io"
        "os"
 
+       "github.com/anacrolix/log"
+
+       "github.com/anacrolix/torrent/merkle"
        "github.com/anacrolix/torrent/metainfo"
 )
 
@@ -62,5 +66,14 @@ func main() {
                                },
                        }[args[1]]()
                },
+               "merkle": func() {
+                       h := merkle.NewHash()
+                       n, err := io.Copy(h, os.Stdin)
+                       log.Printf("copied %v bytes", n)
+                       if err != nil {
+                               panic(err)
+                       }
+                       fmt.Printf("%x\n", h.Sum(nil))
+               },
        }[args[0]]()
 }