]> Sergey Matveev's repositories - btrtrc.git/blob - cmd/torrent-magnet/main.go
Apply sortimports
[btrtrc.git] / cmd / torrent-magnet / main.go
1 package main
2
3 import (
4         "flag"
5         "fmt"
6         "os"
7
8         "github.com/anacrolix/torrent"
9         "github.com/anacrolix/torrent/metainfo"
10 )
11
12 func main() {
13         flag.Parse()
14         if flag.NArg() != 0 {
15                 fmt.Fprintf(os.Stderr, "%s\n", "torrent-magnet: unexpected positional arguments")
16                 os.Exit(2)
17         }
18         mi, err := metainfo.Load(os.Stdin)
19         if err != nil {
20                 fmt.Fprintf(os.Stderr, "error reading metainfo from stdin: %s", err)
21                 os.Exit(1)
22         }
23         ts := torrent.TorrentSpecFromMetaInfo(mi)
24         m := torrent.Magnet{
25                 InfoHash: ts.InfoHash,
26                 Trackers: func() (ret []string) {
27                         for _, tier := range ts.Trackers {
28                                 for _, tr := range tier {
29                                         ret = append(ret, tr)
30                                 }
31                         }
32                         return
33                 }(),
34                 DisplayName: ts.DisplayName,
35         }
36         fmt.Fprintf(os.Stdout, "%s\n", m.String())
37 }