mirror of
https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake.git
synced 2025-10-13 11:11:30 -04:00
37 lines
895 B
Go
37 lines
895 B
Go
package main
|
|
|
|
import (
|
|
"flag"
|
|
"fmt"
|
|
"log"
|
|
"os"
|
|
"time"
|
|
|
|
"gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/v2/common/ipsetsink/sinkcluster"
|
|
)
|
|
|
|
func main() {
|
|
inputFile := flag.String("in", "", "")
|
|
start := flag.String("from", "", "")
|
|
end := flag.String("to", "", "")
|
|
flag.Parse()
|
|
startTime, err := time.Parse(time.RFC3339, *start)
|
|
if err != nil {
|
|
log.Fatal("unable to parse start time:", err)
|
|
}
|
|
endTime, err := time.Parse(time.RFC3339, *end)
|
|
if err != nil {
|
|
log.Fatal("unable to parse end time:", err)
|
|
}
|
|
fd, err := os.Open(*inputFile)
|
|
if err != nil {
|
|
log.Fatal("unable to open input file:", err)
|
|
}
|
|
counter := sinkcluster.NewClusterCounter(startTime, endTime)
|
|
result, err := counter.Count(fd)
|
|
if err != nil {
|
|
log.Fatal("unable to count:", err)
|
|
}
|
|
fmt.Printf("sum = %v\n", result.Sum)
|
|
fmt.Printf("chunkIncluded = %v\n", result.ChunkIncluded)
|
|
}
|