Coder Social home page Coder Social logo

majestrate / xd Goto Github PK

View Code? Open in Web Editor NEW
225.0 23.0 24.0 3.94 MB

meme bittorrent client

Home Page: https://xd-torrent.github.io/

License: MIT License

Makefile 0.80% Go 91.31% Emacs Lisp 0.19% Shell 0.73% HTML 1.47% CSS 1.45% JavaScript 2.19% Python 1.59% Dockerfile 0.26%
i2p anonymous bittorrent ebin-logo webui torrent lokinet

xd's Introduction

XD

BitTorrent Client written in GO (as a joke)

XD

Packaging status

Downloads

MIT License Logo is ebin

Features

Current:

  • i2p only, no chances of cross network contamination, aka no way to leak IP.
  • works with i2pd and Java I2P using the SAM api
  • also works with lokinet
  • Magnet URIs
  • memes

Soon:

  • transmission compatible RPC

Eventually:

  • DHT Support
  • Maggot Support

Dependencies

  • GNU Make
  • GO 1.16 or higher

Building

right now the best way to build is with make

$ git clone https://github.com/majestrate/XD
$ cd XD
$ make

if you do not want to build with embedded webui instead run:

$ make no-webui

you can build with go get using:

$ go get -u -v github.com/majestrate/XD

please note that using go get disables the webui.

to compile XD to use lokinet by default use:

$ make LOKINET=1

or use go get:

$ go get -u -v -tags lokinet github.com/majestrate/XD

cross compile for Raspberry PI

Set GOARCH and GOOS when building with make:

$ make GOARCH=arm GOOS=linux

Usage

To autogenerate a new config and start:

$ ./XD torrents.ini

after started put torrent files into ./storage/downloads/ to start downloading

to seed torrents put data files into ./storage/downloads/ first then add torrent files

if you compiled with web ui it will be up at http://127.0.0.1:1776/

To use the RPC Tool symlink XD to XD-CLI

$ ln -s XD XD-CLI

to list torrents run:

$ ./XD-CLI list

to add a torrent from http server:

$ ./XD-CLI add http://somehwere.i2p/some_torrent_that_is_not_fake.torrent

Optionally on non windows systems you can install XD to /usr/local/

# make install

Or your home directory, make sure $HOME/bin is in your $PATH

$ make install PREFIX=$HOME

Tunnel length and quanity along with all other i2cp options are set in the i2p section of the configuration:

[i2p]
inbound.length=1
outbound.length=1

xd's People

Contributors

dbermond avatar dependabot[bot] avatar elcoid avatar freeacetone avatar komachi avatar l-n-s avatar majestrate avatar martijndeb avatar r4sas avatar radfish avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

xd's Issues

Latest git version "failed to fetch: invalid piece" on every torrent

Building my own XD from git (0253542) , I get

[ERR] 2017-09-27 17:31:45.713735207 +0200 CEST	failed to fetch: invalid piece

on all torrents I try, even i2pupdate

EDIT: The files gets downloaded correctly, just not added to the queue. When starting an old version like 0.0.9-pre-2, the downloads is shown in the webgui and added for download.

PeerConn() reader failed: EOF

Regularly appears in log:

[ERR] 2017-09-15 12:35:45.445001643 -0400 EDT m=+1828.736468001 PeerConn() reader failed: EOF
[WRN] 2017-09-15 12:35:45.495335069 -0400 EDT m=+1828.786799541 conn runWriter() failed

Logs are spammed with speed info

Can it be optional?

[NFO] 2017-09-15 11:22:23.676528458 -0400 EDT m=+6430.255593282 Global Speed: Upload: 0.00B/sec Download: 0.00B/sec
[NFO] 2017-09-15 11:22:33.676941919 -0400 EDT m=+6440.256006044 Global Speed: Upload: 0.00B/sec Download: 0.00B/sec
[NFO] 2017-09-15 11:22:43.677353704 -0400 EDT m=+6450.256418038 Global Speed: Upload: 0.00B/sec Download: 0.00B/sec
[NFO] 2017-09-15 11:22:53.677750821 -0400 EDT m=+6460.256814527 Global Speed: Upload: 0.00B/sec Download: 0.00B/sec

etc...

Implement BEP35: Torrent Signing

BEP35, when implemented, would allow torrents to be signed by creators or authors that vouch for its authenticity. Likewise, it would allow client users to verify if I torrent came from a specific author, or if others vouch for it's authenticity. It would also work great in conjunction with BEP46: Updating Torrents Via DHT Mutable Items

Implement BEP46: Updating Torrents Via DHT Mutable Items

Implementing BEP46 would allow bittorrent authors to publish updates to previous torrents they have published using BEP46, and the BTIH of the new torrents would be published to the DHT, where clients can choose to open it. Note that it depends on BEP44: Storing arbitrary data in the DHT

API call ListTorrentDetailed

Need detailed torrent list, for displaying front page of webui. Right now API is getting spammed with n requests (for every torrent) each second, it may cause problems when n > 100.

invalid memory address or nil pointer dereference

From the latest commit 2cad16d . Same conditions as in #3 otherwise, same torrent.

panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x4d5131]

goroutine 1021 [running]:
panic(0x73eaa0, 0xc4200100f0)
          /usr/local/go/src/runtime/panic.go:500 +0x1a1
xd/lib/bittorrent/swarm.(*PeerConn).runReader(0xc4200fb6b0)
          /home/mathias/source/go/XD/src/xd/lib/bittorrent/swarm/peer.go:215 +0x9d1
created by xd/lib/bittorrent/swarm.(*PeerConn).start
          /home/mathias/source/go/XD/src/xd/lib/bittorrent/swarm/peer.go:68 +0x61

Last piece downloads forever in the testnet

info

git revision / version: master

OS: linux

Architecture: x86

problem

with 32MB file testnet downloads to 0.99 progress, then stalls forever...

the last piece doesn't seem to download

peers:
        -XD0100-%894%2B%3A%5B%0D%3E%DD%A2%97o%E1                         tx=0.00B/sec    rx=43.22KB/sec
downloading tx=0.00B/sec    rx=43.22KB/sec  (0.00 ratio)
files:
        [0] testfile.iso (0.99 done)

backtrace / error messages

Error messages: [yes/no]

Backtrace: [yes/no]

logs.zip

Web UI remote access error

info

git revision / version: XD-0.1.0-e721a8d

OS: Synology DSM 6.1.5-15254 Update 1, Docker 17.05.0-ce

Architecture: Intel x86-64

problem

Web UI remote access error:
http://192.168.1.254:1488/

expected host 127.0.0.1 but got 192.168.1.254

torrents.ini:

[i2p]
address=192.168.1.254:7656

[storage]
rootdir=/home/xd/storage
metadata=/home/xd/storage/metadata
downloads=/home/xd/storage/downloads

[rpc]
bind=192.168.1.254:1488
enabled=1

[log]
level=info
pprof=0

[bittorrent]
pex=1
dht=0
swarms=1
tracker-config=trackers.ini

[gnutella]
enabled=0

backtrace / error messages

Error messages: no

Backtrace: yes

NFO] 2018-03-15 04:06:44.403997107 +0000 UTC m=+0.089092651	starting XD-0.1.0-e721a8d
,
NFO] 2018-03-15 04:06:44.506044633 +0000 UTC m=+0.191140039	loaded config torrents.ini
,
NFO] 2018-03-15 04:06:44.506123185 +0000 UTC m=+0.191218604	Ensure filesystem storage
,
NFO] 2018-03-15 04:06:44.506233639 +0000 UTC m=+0.191329057	generated peer id -XD0100-%FA%82%7D%DB%DD%DENf%B2%E7%D6x
,
NFO] 2018-03-15 04:06:44.624241485 +0000 UTC m=+0.309336891	RPC enabled
,
NFO] 2018-03-15 04:06:44.624491056 +0000 UTC m=+0.309586449	create new i2p session with 192.168.1.254:7656
,
NFO] 2018-03-15 04:06:44.624840429 +0000 UTC m=+0.309935823	opening i2p session
,
ERR] 2018-03-15 04:06:44.62527128 +0000 UTC m=+0.310366724	failed to create i2p session: dial tcp 192.168.1.254:7656: getsockopt: connection refused
,
NFO] 2018-03-15 04:06:45.625455101 +0000 UTC m=+1.310550544	opening i2p session
,
ERR] 2018-03-15 04:06:45.625709671 +0000 UTC m=+1.310805102	failed to create i2p session: dial tcp 192.168.1.254:7656: getsockopt: connection refused
,
NFO] 2018-03-15 04:07:10.637633094 +0000 UTC m=+26.322728600	opening i2p session
,
NFO] 2018-03-15 04:07:34.524917932 +0000 UTC m=+50.210013325	i2p session made, we are ahxypu7zvw3fvicgbun6hesth5x74l4optjvuksjik6sq3okekra.b32.i2p
,
NFO] 2018-03-15 04:07:34.575209909 +0000 UTC m=+50.260305327	network obtained
,
NFO] 2018-03-15 04:07:34.57531345 +0000 UTC m=+50.260408868	new network context obtained
,
NFO] 2018-03-15 04:07:34.576486074 +0000 UTC m=+50.261581480	checking local data for System Of A Down - Discography [MP3]
,
NFO] 2018-03-15 04:08:22.658648348 +0000 UTC m=+98.343743992	local data check done for System Of A Down - Discography [MP3]
,
NFO] 2018-03-15 04:08:22.659032348 +0000 UTC m=+98.344127754	System Of A Down - Discography [MP3] is seeding
,
NFO] 2018-03-15 04:08:46.204041509 +0000 UTC m=+121.889136940	http://tracker2.postman.i2p:80/announce.php got 10 peers for 3218c3405e877fe4eb3c709ac402e805ec67544e
,
NFO] 2018-03-15 04:09:02.634075722 +0000 UTC m=+138.319171153	http://s5ikrdyjwbcgxmqetxb3nyheizftms7euacuub2hic7defkh3xhq.b32.i2p:80/a got 10 peers for 3218c3405e877fe4eb3c709ac402e805ec67544e
,
NFO] 2018-03-15 04:09:24.979379045 +0000 UTC m=+160.664474439	http://uajd4nctepxpac4c4bdyrdw7qvja2a5u3x25otfhkptcjgd53ioq.b32.i2p:80/announce got 1 peers for 3218c3405e877fe4eb3c709ac402e805ec67544e
,
WRN] 2018-03-15 04:09:48.380522274 +0000 UTC m=+184.065617680	failed to resolve peer NAMING REPLY RESULT=INVALID_KEY NAME=ahxypu7zvw3fvicgbun6hesth5x74l4optjvuksjik6sq3okekra.b32.i2p
,
,
NFO] 2018-03-15 04:09:53.872734235 +0000 UTC m=+189.557829654	http://w7tpbzncbcocrqtwwm3nezhnnsw4ozadvi2hmvzdhrqzfxfum7wa.b32.i2p:80/a got 10 peers for 3218c3405e877fe4eb3c709ac402e805ec67544e
,
NFO] 2018-03-15 04:36:10.538120347 +0000 UTC m=+1766.223215916	http://s5ikrdyjwbcgxmqetxb3nyheizftms7euacuub2hic7defkh3xhq.b32.i2p:80/a got 10 peers for 3218c3405e877fe4eb3c709ac402e805ec67544e
,
NFO] 2018-03-15 04:36:59.073052447 +0000 UTC m=+1814.758147866	http://w7tpbzncbcocrqtwwm3nezhnnsw4ozadvi2hmvzdhrqzfxfum7wa.b32.i2p:80/a got 10 peers for 3218c3405e877fe4eb3c709ac402e805ec67544e
,
WRN] 2018-03-15 05:03:33.582203682 +0000 UTC m=+3409.267299126	http://s5ikrdyjwbcgxmqetxb3nyheizftms7euacuub2hic7defkh3xhq.b32.i2p:80/a got error while announcing: Get http://s5ikrdyjwbcgxmqetxb3nyheizftms7euacuub2hic7defkh3xhq.b32.i2p:80/a?downloaded=0&event=completed&info_hash=2%18%C3%40%5E%87%7F%E4%EB%3Cp%9A%C4%02%E8%05%ECgTN&ip=mw1Rqmvhel-oj05j8fUv~q3rqgaZkattO~kx0QZAcOVwfn4gQ49bNK7XXqFtiC0DlGR9LZPpZRZAVO130zkxsQkJlvzEmzuTsc-qePEhEV5tqKlklwG6wG-Wr40gfM74ZoqXlhZEyp291KpMPAbXwgrzf8O~Pa8XqmfRCGHVbDGecbhe~~trhSJwTj8hn3j~c~dgQdonaugu8kMjDuolnZVHPYUBIrTSW~b11jJkXXdrQnTOI4GiwcCLqNSDkIxN2Q~JSTvRsSEGyl3DWALzwDEjzvXlgMf-hP2Rpr2N4og4eWgHTWDD0n5wf9YfVXh8aaOiJr9KaoDqgy2VeKtfqIQiBD9PPHxmIsMPMUycNjgAIaIW2giNNY3NQU8mBW0RpYpaYHyrTnewNEfgZye4~yT7liWGiGc3l9cfuToanZ-kUzh1rFvOxQ~jyTaRJdiWK2e5hgI89OYsimNllmtCLUdRJ9gHmxiWkCJQzRCANGFLgql9yEXD91DzNg8g3UFcBQAEAAcAAA%3D%3D.i2p&left=18446744073709336700&numwant=10&peer_id=-XD0100-%FA%82%7D%DB%DD%DENf%B2%E7%D6x&port=6881&uploaded=0: EOF
,
WRN] 2018-03-15 05:03:33.582287983 +0000 UTC m=+3409.267383364	announce to http://s5ikrdyjwbcgxmqetxb3nyheizftms7euacuub2hic7defkh3xhq.b32.i2p/a failed: Get http://s5ikrdyjwbcgxmqetxb3nyheizftms7euacuub2hic7defkh3xhq.b32.i2p:80/a?downloaded=0&event=completed&info_hash=2%18%C3%40%5E%87%7F%E4%EB%3Cp%9A%C4%02%E8%05%ECgTN&ip=mw1Rqmvhel-oj05j8fUv~q3rqgaZkattO~kx0QZAcOVwfn4gQ49bNK7XXqFtiC0DlGR9LZPpZRZAVO130zkxsQkJlvzEmzuTsc-qePEhEV5tqKlklwG6wG-Wr40gfM74ZoqXlhZEyp291KpMPAbXwgrzf8O~Pa8XqmfRCGHVbDGecbhe~~trhSJwTj8hn3j~c~dgQdonaugu8kMjDuolnZVHPYUBIrTSW~b11jJkXXdrQnTOI4GiwcCLqNSDkIxN2Q~JSTvRsSEGyl3DWALzwDEjzvXlgMf-hP2Rpr2N4og4eWgHTWDD0n5wf9YfVXh8aaOiJr9KaoDqgy2VeKtfqIQiBD9PPHxmIsMPMUycNjgAIaIW2giNNY3NQU8mBW0RpYpaYHyrTnewNEfgZye4~yT7liWGiGc3l9cfuToanZ-kUzh1rFvOxQ~jyTaRJdiWK2e5hgI89OYsimNllmtCLUdRJ9gHmxiWkCJQzRCANGFLgql9yEXD91DzNg8g3UFcBQAEAAcAAA%3D%3D.i2p&left=18446744073709336700&numwant=10&peer_id=-XD0100-%FA%82%7D%DB%DD%DENf%B2%E7%D6x&port=6881&uploaded=0: EOF
,
NFO] 2018-03-15 05:04:05.180764811 +0000 UTC m=+3440.865860242	http://w7tpbzncbcocrqtwwm3nezhnnsw4ozadvi2hmvzdhrqzfxfum7wa.b32.i2p:80/a got 10 peers for 3218c3405e877fe4eb3c709ac402e805ec67544e
,
NFO] 2018-03-15 05:04:09.354752402 +0000 UTC m=+3445.039847808	http://s5ikrdyjwbcgxmqetxb3nyheizftms7euacuub2hic7defkh3xhq.b32.i2p:80/a got 8 peers for 3218c3405e877fe4eb3c709ac402e805ec67544e
,
NFO] 2018-03-15 05:09:05.681148519 +0000 UTC m=+3741.366243962	http://tracker2.postman.i2p:80/announce.php got 10 peers for 3218c3405e877fe4eb3c709ac402e805ec67544e
,
NFO] 2018-03-15 05:09:38.291499196 +0000 UTC m=+3773.976594615	http://uajd4nctepxpac4c4bdyrdw7qvja2a5u3x25otfhkptcjgd53ioq.b32.i2p:80/announce got 1 peers for 3218c3405e877fe4eb3c709ac402e805ec67544e
,
WRN] 2018-03-15 05:09:58.323871923 +0000 UTC m=+3794.008967342	failed to resolve peer NAMING REPLY RESULT=INVALID_KEY NAME=ahxypu7zvw3fvicgbun6hesth5x74l4optjvuksjik6sq3okekra.b32.i2p
,
,

ctrl+c causes sigsegv

At first run, when it prints forever

[DBG] 2017-08-10 17:04:02.564856198 +0000 UTC torrent waiting for network

I press ctrl+c and it throws new error


[DBG] 2017-08-10 17:04:03.565118023 +0000 UTC   torrent waiting for network
^C[NFO] 2017-08-10 17:04:03.831307788 +0000 UTC Interrupted
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x55bf829ebff9]

goroutine 18 [running]:
github.com/majestrate/XD/vendor/xd/lib/bittorrent/swarm.(*torrentAnnounce).tryAnnounce(0x0, 0x55bf82aa26db, 0x7, 0x0, 0x55bf82fb0b40)
        /root/go/src/github.com/majestrate/XD/vendor/xd/lib/bittorrent/swarm/announce.go:21 +0x39
github.com/majestrate/XD/vendor/xd/lib/bittorrent/swarm.(*Torrent).announce(0xc4200ba0c0, 0x0, 0x0, 0x55bf82aa26db, 0x7)
        /root/go/src/github.com/majestrate/XD/vendor/xd/lib/bittorrent/swarm/torrent.go:246 +0xca
github.com/majestrate/XD/vendor/xd/lib/bittorrent/swarm.(*Torrent).StopAnnouncing(0xc4200ba0c0)
        /root/go/src/github.com/majestrate/XD/vendor/xd/lib/bittorrent/swarm/torrent.go:218 +0xc9
github.com/majestrate/XD/vendor/xd/lib/bittorrent/swarm.(*Torrent).Close(0xc4200ba0c0, 0xc420114d80, 0xc42001cfa8)
        /root/go/src/github.com/majestrate/XD/vendor/xd/lib/bittorrent/swarm/torrent.go:86 +0x73
github.com/majestrate/XD/vendor/xd/lib/bittorrent/swarm.(*Holder).Close.func1(0xc420052f18, 0xc4201b3230, 0x28)
        /root/go/src/github.com/majestrate/XD/vendor/xd/lib/bittorrent/swarm/holder.go:90 +0xda
created by github.com/majestrate/XD/vendor/xd/lib/bittorrent/swarm.(*Holder).Close
        /root/go/src/github.com/majestrate/XD/vendor/xd/lib/bittorrent/swarm/holder.go:91 +0x203

XD-0.0.9-pre-1-linux-amd64 - downloading 40kbyte/sec, no pieces

Hi,

wonder if it's just me or if anybody else has this problem with the XD 0.0.9 pre 1 build. I selected a torrent which has a lot of peers as usual, and there's a lot of traffic, XD webui reports ~40kbyte/sec, the i2pd node is up to 200 kbyte/sec, but after three hours, the progress on one of the same torrent is still 0.03%.

Restarting XD makes it download some pieces again, and then stop. Something's borked?

[NFO] 2017-09-15 11:58:26.36455999 +0200 CEST m=+0.026784130	starting XD-0.0.8-2bd94c3
[NFO] 2017-09-15 11:58:26.365883218 +0200 CEST m=+0.028107356	loaded config torrents.ini
[NFO] 2017-09-15 11:58:26.365898041 +0200 CEST m=+0.028122162	Ensure filesystem storage
[NFO] 2017-09-15 11:58:26.367207465 +0200 CEST m=+0.029431614	generated peer id -XD0080-t%9D%DFN%81%A1%0F%94%D0%FBKT
[NFO] 2017-09-15 11:58:26.368732518 +0200 CEST m=+0.030956767	RPC enabled
[NFO] 2017-09-15 11:58:26.368768624 +0200 CEST m=+0.030992808	create new i2p session with 127.0.0.1:7656
[NFO] 2017-09-15 11:58:26.369500725 +0200 CEST m=+0.031724919	opening i2p session
[NFO] 2017-09-15 11:58:46.393584316 +0200 CEST m=+20.055808436	i2p session made, we are xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.b32.i2p
[NFO] 2017-09-15 11:58:46.395935072 +0200 CEST m=+20.058159222	Global Speed: Upload: 0.00B/sec Download: 0.00B/sec
[NFO] 2017-09-15 11:58:47.37337346 +0200 CEST m=+21.035597634	xxx-torrent running
[NFO] 2017-09-15 11:58:47.373407678 +0200 CEST m=+21.035631872	i2pupdate-0.9.31.su3 running
[NFO] 2017-09-15 11:58:56.396635709 +0200 CEST m=+30.058859910	Global Speed: Upload: 0.00B/sec Download: 0.00B/sec
[NFO] 2017-09-15 11:59:06.397314041 +0200 CEST m=+40.059538238	Global Speed: Upload: 0.00B/sec Download: 0.00B/sec
[NFO] 2017-09-15 11:59:16.398077119 +0200 CEST m=+50.060301326	Global Speed: Upload: 0.00B/sec Download: 0.00B/sec
[NFO] 2017-09-15 11:59:26.398780156 +0200 CEST m=+60.061004368	Global Speed: Upload: 0.00B/sec Download: 0.00B/sec
[NFO] 2017-09-15 11:59:36.39937598 +0200 CEST m=+70.061600158	Global Speed: Upload: 0.00B/sec Download: 0.00B/sec
[NFO] 2017-09-15 11:59:46.400049866 +0200 CEST m=+80.062274131	Global Speed: Upload: 0.00B/sec Download: 0.00B/sec
[NFO] 2017-09-15 11:59:47.373759024 +0200 CEST m=+81.035983144	announcing to 
[NFO] 2017-09-15 11:59:47.373750946 +0200 CEST m=+81.035975056	announcing to 
[NFO] 2017-09-15 11:59:56.400810576 +0200 CEST m=+90.063034777	Global Speed: Upload: 0.00B/sec Download: 0.00B/sec
[NFO] 2017-09-15 12:00:06.401471469 +0200 CEST m=+100.063695590	Global Speed: Upload: 0.00B/sec Download: 0.00B/sec
[NFO] 2017-09-15 12:00:16.402154537 +0200 CEST m=+110.064378722	Global Speed: Upload: 0.00B/sec Download: 0.00B/sec
[WRN] 2017-09-15 12:00:23.41277912 +0200 CEST m=+117.075003299	failed to resolve peer NAMING REPLY RESULT=INVALID_KEY NAME=7tcc77edmwl4apdaaplgyh3do6jrcqcjcd5vl2hd5lbeswfqkrtq.b32.i2p

[NFO] 2017-09-15 12:00:26.402807093 +0200 CEST m=+120.065031256	Global Speed: Upload: 0.00B/sec Download: 11.21KB/sec
[NFO] 2017-09-15 12:00:36.403683871 +0200 CEST m=+130.065908185	Global Speed: Upload: 0.00B/sec Download: 4.80KB/sec
[NFO] 2017-09-15 12:00:46.2240353 +0200 CEST m=+139.886259524	xxx-torrent got piece 39
[NFO] 2017-09-15 12:00:46.40419205 +0200 CEST m=+140.066416157	Global Speed: Upload: 0.00B/sec Download: 19.21KB/sec
[NFO] 2017-09-15 12:00:48.023801638 +0200 CEST m=+141.686025784	i2pupdate-0.9.31.su3 got piece 33
[NFO] 2017-09-15 12:00:56.404772335 +0200 CEST m=+150.066996445	Global Speed: Upload: 0.00B/sec Download: 35.22KB/sec
[NFO] 2017-09-15 12:00:58.93085287 +0200 CEST m=+152.593077018	i2pupdate-0.9.31.su3 got piece 13
[NFO] 2017-09-15 12:01:06.405460901 +0200 CEST m=+160.067685048	Global Speed: Upload: 0.00B/sec Download: 44.07KB/sec
[NFO] 2017-09-15 12:01:16.406094021 +0200 CEST m=+170.068318162	Global Speed: Upload: 0.00B/sec Download: 72.95KB/sec
[NFO] 2017-09-15 12:01:19.515193376 +0200 CEST m=+173.177417634	i2pupdate-0.9.31.su3 got piece 42
[NFO] 2017-09-15 12:01:26.406660142 +0200 CEST m=+180.068884258	Global Speed: Upload: 0.00B/sec Download: 84.86KB/sec

Common default directories

Other torrent clients download files by default to ~/Downloads and store config files in ~/.config and misc files in ~/.local/share... sounds like a good idea to separate downloads and stuff to have on different locations...

May XD have this before 0.1?

Configure options by using environment variables

IMO it could be useful to have config dir option: where to find config, keys and all stuff.

/usr/local/bin/XD --config-dir /home/user/.XD

and read from environment:

export XD_HOME='/home/user/.XD'
./XD

That way it could be more flexible.

Create torrents somehow?

For a full-featured UI user would expect to be able to create torrents in it. Will look how other clients handle it...

Fork to background when adding torrent via cli

When user adds torrent with ./xd-cli add http://meme.i2p/file.torrent it takes a long of time to fetch it and allocate space. All this time the terminal is blocked. Can XD just print information that request is received and do the job in background?

Multiple I2P sessions

for protection from uptime correlation ideally XD should utilize multiple sessions and rotate the destination keys periodically.

XD-0.0.9-pre-2-linux-amd64 download speeds still decrease over time

The above version still has problems with download speed, and piece selection seems to level out after 20-30 minutes. When restarting XD, the number of pieces downloaded increases again, then gradually decrease over time.

Endless squirts of this appear.

[DBG] 2017-09-15 20:02:29.564094124 +0200 CEST m=+2046.260098035	get next piece excluding [1844 244 167 2089 2180]
[DBG] 2017-09-15 20:02:29.566503717 +0200 CEST m=+2046.262507432	no next piece to download for %00%00%00%00%00%00%00%00%00%03%03%03%A1%27%B3%EDH%22%DC%E0
[DBG] 2017-09-15 20:02:29.568044904 +0200 CEST m=+2046.264048616	no next piece request for idx=167
[DBG] 2017-09-15 20:02:29.568082297 +0200 CEST m=+2046.264086084	get next piece excluding [1844 244 167 2089 2180]
[DBG] 2017-09-15 20:02:29.571351689 +0200 CEST m=+2046.267355474	no next piece to download for %00%00%00%00%00%00%00%00%00%03%03%03%C3i+Y%05%1F%9D%C1
[DBG] 2017-09-15 20:02:29.571900193 +0200 CEST m=+2046.267903886	no next piece request for idx=167
[DBG] 2017-09-15 20:02:29.571947732 +0200 CEST m=+2046.267951473	get next piece excluding [1844 244 167 2089 2180]
[DBG] 2017-09-15 20:02:29.574465022 +0200 CEST m=+2046.270468738	no next piece to download for %00%00%00%00%00%00%00%00%00%03%03%03%F4-%CCu%5D%16%90%B8
[DBG] 2017-09-15 20:02:29.574564936 +0200 CEST m=+2046.270568637	no next piece request for idx=2180
[DBG] 2017-09-15 20:02:29.574596072 +0200 CEST m=+2046.270599790	get next piece excluding [2180 1844 244 167 2089]
[DBG] 2017-09-15 20:02:29.577731845 +0200 CEST m=+2046.273735592	no next piece to download for %00%00%00%00%00%00%00%00%00%03%03%03%A1%F8L%A8%C237%01
[DBG] 2017-09-15 20:02:29.577774802 +0200 CEST m=+2046.273778484	no next piece request for idx=244
[DBG] 2017-09-15 20:02:29.577791323 +0200 CEST m=+2046.273795015	get next piece excluding [167 2089 2180 1844 244]
[DBG] 2017-09-15 20:02:29.580697768 +0200 CEST m=+2046.276701512	no next piece to download for %00%00%00%00%00%00%00%00%00%03%03%03%F3%BEMc%DBX%A6%EB
[DBG] 2017-09-15 20:02:29.605007258 +0200 CEST m=+2046.301011035	no next piece request for idx=2089
[DBG] 2017-09-15 20:02:29.605072982 +0200 CEST m=+2046.301076815	get next piece excluding [2180 1844 244 167 2089]
[DBG] 2017-09-15 20:02:29.608670982 +0200 CEST m=+2046.304674695	no next piece to download for %00%00%00%00%00%00%00%00%00%03%03%03%1A%80%FC%E7%9C%7C%B3e
[DBG] 2017-09-15 20:02:30.333860549 +0200 CEST m=+2047.029864406	no next piece request for idx=2180
[DBG] 2017-09-15 20:02:30.333954858 +0200 CEST m=+2047.029958636	get next piece excluding [2180 1844 244 167 2089]
[DBG] 2017-09-15 20:02:30.339245155 +0200 CEST m=+2047.035248923	no next piece to download for %00%00%00%00%00%00%00%00%00%03%03%03%B6V%60%B1%60%CC%0A%D6
[DBG] 2017-09-15 20:02:30.542519994 +0200 CEST m=+2047.238523729	no next piece request for idx=2180
[DBG] 2017-09-15 20:02:30.542578034 +0200 CEST m=+2047.238581766	get next piece excluding [1844 244 167 2089 2180]
[DBG] 2017-09-15 20:02:30.546012522 +0200 CEST m=+2047.242016291	no next piece to download for %00%00%00%00%00%00%00%00%00%03%03%03P3%27T%A6%0F%BD%98
[DBG] 2017-09-15 20:02:30.556322667 +0200 CEST m=+2047.252326427	no next piece request for idx=167
[DBG] 2017-09-15 20:02:30.556402267 +0200 CEST m=+2047.252406017	get next piece excluding [1844 244 167 2089 2180]
[DBG] 2017-09-15 20:02:30.560145702 +0200 CEST m=+2047.256149473	no next piece to download for %00%00%00%00%00%00%00%00%00%03%03%03%839e%1D%17%BE%27%FB
[DBG] 2017-09-15 20:02:30.562284546 +0200 CEST m=+2047.258288333	no next piece request for idx=2180
[DBG] 2017-09-15 20:02:30.56232746 +0200 CEST m=+2047.258331274	get next piece excluding [2180 1844 244 167 2089]

No idea how to fix it though.

No bitfield, invalid piece

Just compiled the latest commit. When adding a new torrent, I get:

[NFO] 2017-05-16 08:15:46.568239734 +0200 CEST	no bitfield for [torrent file]
[ERR] 2017-05-16 08:15:49.838246699 +0200 CEST	Failed to add [torrent file]: invalid piece

Also, there is a shitload of error messages stating "missing port in address" :

[WRN] 2017-05-16 08:19:42.034685299 +0200 CEST	 got error while announcing: Get http://w7tpbzncbcocrqtwwm3nezhnnsw4ozadvi2hmvzdhrqzfxfum7wa.b32.i2p/a?downloaded=0&info_hash=%E0%D0xW%15%98%3E%E0O%8C%E5y%B1%D6PT%A3%ACR%F4&ip=np-tl8cbKuImmzkM2sRDFTYfuWgOLafW7~KC-X3vOsXGWDHIp-kSVYLfi~2pjRoET8U~tIvM2ZPXR0SbLuiyPwFf-hPFE3abk9uCfhG~GCtIY9kHqm0xkqCRHyb3llELcrqzTndUCa1MvjcbkoT2LCmFXmKbqbxFZjxQHs3LrCua22EGVNIsUeOTpjf8rZAUjb50N5jlTrW5mNc1o0v-kaJYfGPKGAUmLYbs~6H9Fs9z8xQspjYfYJ-Kk0wVSunF2WZYFte4HyLqLM3jab0SqXorBJ7vHoib2elRcn-pehbozH~-dNoGxc5HD2xUikapvE9Ql4kjGWpVSeqnuPgk8H01X6312MdJ53cVBvcXvcfd2XZJlcgZhIhs0irluu01clrnJQlAZNWTbtKkOHs3sREB3rgatomUz1aFh7CvFU7AF5eOWhSr2wEmZBWHxv2Juhk-9gKHlbw5Y~GAXtP0pT1Z2pkWaHcC3XqAyIu5qJymmK6bSt~C6U2fPLuegEs4AAAA.i2p&left=4344456&numwant=30&peer_id=-XD0030-%1B%FD%CE%F6%96%F5%07%A9%27%9A%B0%9A&port=6881&uploaded=0: missing port in address w7tpbzncbcocrqtwwm3nezhnnsw4ozadvi2hmvzdhrqzfxfum7wa.b32.i2p
[WRN] 2017-05-16 08:19:42.034729133 +0200 CEST	announce to  failed: Get http://w7tpbzncbcocrqtwwm3nezhnnsw4ozadvi2hmvzdhrqzfxfum7wa.b32.i2p/a?downloaded=0&info_hash=%E0%D0xW%15%98%3E%E0O%8C%E5y%B1%D6PT%A3%ACR%F4&ip=np-tl8cbKuImmzkM2sRDFTYfuWgOLafW7~KC-X3vOsXGWDHIp-kSVYLfi~2pjRoET8U~tIvM2ZPXR0SbLuiyPwFf-hPFE3abk9uCfhG~GCtIY9kHqm0xkqCRHyb3llELcrqzTndUCa1MvjcbkoT2LCmFXmKbqbxFZjxQHs3LrCua22EGVNIsUeOTpjf8rZAUjb50N5jlTrW5mNc1o0v-kaJYfGPKGAUmLYbs~6H9Fs9z8xQspjYfYJ-Kk0wVSunF2WZYFte4HyLqLM3jab0SqXorBJ7vHoib2elRcn-pehbozH~-dNoGxc5HD2xUikapvE9Ql4kjGWpVSeqnuPgk8H01X6312MdJ53cVBvcXvcfd2XZJlcgZhIhs0irluu01clrnJQlAZNWTbtKkOHs3sREB3rgatomUz1aFh7CvFU7AF5eOWhSr2wEmZBWHxv2Juhk-9gKHlbw5Y~GAXtP0pT1Z2pkWaHcC3XqAyIu5qJymmK6bSt~C6U2fPLuegEs4AAAA.i2p&left=4344456&numwant=30&peer_id=-XD0030-%1B%FD%CE%F6%96%F5%07%A9%27%9A%B0%9A&port=6881&uploaded=0: missing port in address w7tpbzncbcocrqtwwm3nezhnnsw4ozadvi2hmvzdhrqzfxfum7wa.b32.i2p

I guess when trying to announce already downloaded torrents.. Not sure if the problem is with the tracker, or with XD though.

slice bounds out of range

Git pulled three minutes ago, and compiled the latest version using go 1.7.1. Found Snowden 2016 and selected it because of many peers. After a while I get this:

panic: runtime error: slice bounds out of range

goroutine 31 [running]:

panic(0x73ea60, 0xc420010140)
/usr/local/go/src/runtime/panic.go:500 +0x1a1
xd/lib/storage.(*fsTorrent).PutPiece(0xc42011c500, 0xc420133c60, 0x0, 0x0)
/home/mathias/source/go/XD/src/xd/lib/storage/fs.go:195 +0x796
xd/lib/bittorrent/swarm.(*pieceTracker).handlePieceData(0xc420122500, 0xc42030e5a0)
/home/mathias/source/go/XD/src/xd/lib/bittorrent/swarm/piece.go:191 +0xcb
xd/lib/bittorrent/swarm.(*PeerConn).runReader(0xc420094000)
/home/mathias/source/go/XD/src/xd/lib/bittorrent/swarm/peer.go:216 +0xa02
created by xd/lib/bittorrent/swarm.(*PeerConn).start
/home/mathias/source/go/XD/src/xd/lib/bittorrent/swarm/peer.go:68 +0x61

Warnings while downloading torrents

[WRN] 2017-04-04 16:18:16.933835849 +0000 UTC   PutPiece(): error writing book.pdf, write storage/downloads/book.pdf: invalid argument, write 0
[WRN] 2017-04-04 16:18:16.934857092 +0000 UTC   put piece 814 failed: write storage/downloads/book.pdf: invalid argument
[WRN] 2017-04-04 16:19:00.997462317 +0000 UTC   PutPiece(): error writing book.pdf, write storage/downloads/book.pdf: invalid argument, write 0
[WRN] 2017-04-04 16:19:00.998878908 +0000 UTC   put piece 813 failed: write storage/downloads/book.pdf: invalid argument
[WRN] 2017-04-04 16:19:48.765281032 +0000 UTC   PutPiece(): error writing book.pdf, write storage/downloads/book.pdf: invalid argument, write 0
[WRN] 2017-04-04 16:19:48.766999915 +0000 UTC   put piece 812 failed: write storage/downloads/book.pdf: invalid argument
[WRN] 2017-04-04 16:20:19.755607165 +0000 UTC   PutPiece(): error writing book.pdf, write storage/downloads/book.pdf: invalid argument, write 0
[WRN] 2017-04-04 16:20:19.758052051 +0000 UTC   PutPiece(): error writing book.pdf, write storage/downloads/book.pdf: invalid argument, write 0
[WRN] 2017-04-04 16:20:19.759014536 +0000 UTC   put piece 811 failed: write storage/downloads/book.pdf: invalid argument
[WRN] 2017-04-04 16:20:19.759679812 +0000 UTC   put piece 811 failed: write storage/downloads/book.pdf: invalid argument
[WRN] 2017-04-04 16:22:56.494048112 +0000 UTC   PutPiece(): error writing book.pdf, write storage/downloads/book.pdf: invalid argument, write 0
[WRN] 2017-04-04 16:22:56.495152534 +0000 UTC   put piece 810 failed: write storage/downloads/book.pdf: invalid argument

And it seems like it stopped downloading after those warnings. Version is trunk from github.

Hardcoded urls in webui

info

git revision / version: master
OS: Debian
Architecture: armhf

problem

Hello,

I tried to put XD behind a reverse proxy with apache2 mod_proxy, enabling HTTP basic auth.
I need to use a dedicated location (https://myserver/i2pxd/ for example).
Unfortunately, there are some hardlinks towards the API urls in contrib/webui/lib/main.js. I have made some manual modifications into that Javascript file and it seems to fix the problem.

I am no jQuery/JS expert but I think you can just use "/ecksdee/api" as the url in the POST query...

[testnet] downloaded file hash missmatch

[user@n1 XD_test]$ docker exec -it xd1 sha1sum storage/downloads/testfile.iso
d5db28c3951427f9bf701d99a0035427459c74b3  storage/downloads/testfile.iso
[user@n1 XD_test]$ docker exec -it xd2 sha1sum storage/downloads/testfile.iso
8c206a1a87599f532ce68675536f0b1546900d7a  storage/downloads/testfile.iso

Full logs of seeder and leecher are in archive.

logs.zip

How does one remove a torrent and data?

Hello, first of all - nice job with making a torrent client compatible with i2pd (:
My problem is that when I remove .torrent + the data from storage/downloads - XD keeps making the data-files again and keeps downloading. How to stop + remove some torrent?

0.0.4 (6380ad7) segfaults when adding torrent file to downloads/ folder

When adding a torrent file to the downloads/ folder, XD segfaults. This is from when adding i2pupdate-0.9.30.su3 to the folder.

[NFO] 2017-07-30 21:32:35.810096824 +0200 CEST	starting XD-0.0.4-6380ad7
[NFO] 2017-07-30 21:32:35.815348155 +0200 CEST	loaded config torrents.ini
[NFO] 2017-07-30 21:32:35.815416253 +0200 CEST	generated peer id xxxxx
[NFO] 2017-07-30 21:32:35.819436402 +0200 CEST	create new i2p session with 127.0.0.1:7656
[NFO] 2017-07-30 21:32:35.819976207 +0200 CEST	opening i2p session
[NFO] 2017-07-30 21:33:15.840086488 +0200 CEST	i2p session made, we are xxx.b32.i2p
[NFO] 2017-07-30 21:36:12.956807928 +0200 CEST	no bitfield for i2pupdate-0.9.30.su3
[NFO] 2017-07-30 21:36:12.981494118 +0200 CEST	i2pupdate-0.9.30.su3 running
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x28 pc=0x61d56b]

goroutine 66 [running]:
     panic(0x7475a0, 0xc4200100f0)
/usr/local/go/src/runtime/panic.go:500 +0x1a1
xd/lib/tracker.(*HttpTracker).Announce(0xc420012800, 0xc42001e150, 0xc4201a0320, 0x0, 0x0)
/home/mathias/source/go/XD/src/xd/lib/tracker/http.go:99 +0x24b
xd/lib/bittorrent/swarm.(*torrentAnnounce).tryAnnounce(0xc4201a4880, 0x7a8845, 0x7, 0x0, 0xc4201122f8)
/home/mathias/source/go/XD/src/xd/lib/bittorrent/swarm/torrent.go:38 +0x1db
xd/lib/bittorrent/swarm.(*Torrent).announce(0xc4201080c0, 0x0, 0x0, 0x7a8845, 0x7)
/home/mathias/source/go/XD/src/xd/lib/bittorrent/swarm/torrent.go:268 +0xbe
xd/lib/bittorrent/swarm.(*Torrent).StartAnnouncing(0xc4201080c0)
/home/mathias/source/go/XD/src/xd/lib/bittorrent/swarm/torrent.go:226 +0x11e
created by xd/lib/bittorrent/swarm.(*Swarm).startTorrent
/home/mathias/source/go/XD/src/xd/lib/bittorrent/swarm/swarm.go:57 +0x235

EDIT: Seems to download/seed when restarting XD though

SIGSEGV if SAM address is not reachable

Not critical, but maybe it could shutdown more gracefully, print some information to user etc.

[NFO] 2017-08-08 23:14:53.750845717 +0000 UTC   starting XD-0.0.5
[NFO] 2017-08-08 23:14:53.75546648 +0000 UTC    auto-generated new config at torrents.ini
[NFO] 2017-08-08 23:14:53.759523296 +0000 UTC   loaded config torrents.ini
[NFO] 2017-08-08 23:14:53.761184967 +0000 UTC   generated peer id -XD0050-WL%17%E6%D7%D5%D6%A2%87r%F9%8C
[NFO] 2017-08-08 23:14:53.762417834 +0000 UTC   create new i2p session with 127.0.0.1:7656
[NFO] 2017-08-08 23:14:53.765337932 +0000 UTC   opening i2p session
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x20 pc=0x55b3d13c5bd8]

goroutine 9 [running]:
github.com/majestrate/XD/vendor/xd/lib/network/i2p.(*samSession).Close(0xc4200fc540, 0x0, 0x0)
        /root/go/src/github.com/majestrate/XD/vendor/xd/lib/network/i2p/sam.go:26 +0x28
github.com/majestrate/XD/vendor/xd/lib/network/i2p.(*samSession).Open(0xc4200fc540, 0x13, 0x0)
        /root/go/src/github.com/majestrate/XD/vendor/xd/lib/network/i2p/sam.go:231 +0xa8
github.com/majestrate/XD/vendor/xd/cmd/xd.Run.func3(0xc420052e40, 0x55b3d1a8af80, 0xc4200fc540)
        /root/go/src/github.com/majestrate/XD/vendor/xd/cmd/xd/xd.go:98 +0x66
created by github.com/majestrate/XD/vendor/xd/cmd/xd.Run
        /root/go/src/github.com/majestrate/XD/vendor/xd/cmd/xd/xd.go:110 +0x6e9

Feature request: Download speed and progress

As of now, all that is reported is tracker announcement and new peers. No indication of download speed or progress.

For seeding, the peer reporting and announcements are enough, but when downloading, there is no way of knowing how much has been downloaded, and if/when the file(s) are complete.

A simple (?) listing of "[torrent hash X]: 159 of 8921 chunks downloaded" would be a good start to throw in the log once in a while. :)

Some sort of time delta of downloaded chunks to get a rough estimate of download speed would also be nice, but of secondary importance.

I'm trying to learn golang in order to help in some way, but for now this is beyond me..

Can't remove torrent from webUI

info

git revision / version: master

OS: linux

Architecture: x64

problem

WebUI buttons seems to stop torrent, but don't remove it completely. I had to run ./XD-cli delete [hash] to remove it... After I press remove it shows - "torrent already stopped"

panic: send on closed channel

[NFO] 2017-09-15 11:31:03.697873086 -0400 EDT m=+6950.276936652 Global Speed: Upload: 4.80KB/sec Download: 0.00B/sec
[NFO] 2017-09-15 11:31:13.698236819 -0400 EDT m=+6960.277300315 Global Speed: Upload: 0.00B/sec Download: 0.00B/sec
[WRN] 2017-09-15 11:31:19.82191365 -0400 EDT m=+6966.400977007  write error: write tcp 127.0.0.1:60016->127.0.0.1:7656: write: connection reset by peer
[ERR] 2017-09-15 11:31:19.821961352 -0400 EDT m=+6966.401024918 PeerConn() reader failed: EOF
panic: send on closed channel

goroutine 4140 [running]:
xd/lib/bittorrent/swarm.(*PeerConn).doSend(0xc4202ec000, 0xc424111020)
        /home/user/lab/my_XD/src/xd/lib/bittorrent/swarm/peer.go:83 +0x63
created by xd/lib/bittorrent/swarm.(*PeerConn).Send
        /home/user/lab/my_XD/src/xd/lib/bittorrent/swarm/peer.go:89 +0x49
panic: send on closed channel

rev 6afba87
goroutine 4232 [running]:
xd/lib/bittorrent/swarm.(*PeerConn).doSend(0xc4202ec000, 0xc4216f5ea0)
        /home/user/lab/my_XD/src/xd/lib/bittorrent/swarm/peer.go:83 +0x63
created by xd/lib/bittorrent/swarm.(*PeerConn).Send
        /home/user/lab/my_XD/src/xd/lib/bittorrent/swarm/peer.go:89 +0x49

rev 6afba87

Plans for front-ends?

Any plans on adding front-ends for end-users? Like transmission torrent client has: cli version, GTK, and web front-end.

Make fails on commit e4315ef

Git pulled commit e4315ef and ran make

GOPATH=/home/user/source/go/XD go clean -v
rm -f storetest rpcdebug
GOPATH=/home/user/source/go/XD go build -v -ldflags "-X xd/lib/version.Git=-e4315ef"
github.com/zeebo/bencode
xd/lib/network
xd/lib/log
xd/lib/version
xd/lib/configparser
xd/lib/network/i2p
xd/lib/util
xd/lib/common
xd/lib/bittorrent
xd/lib/bittorrent/extensions
xd/lib/metainfo
xd/lib/tracker
xd/lib/storage
# xd/lib/tracker
src/xd/lib/tracker/http.go:52: t.u.Hostname undefined (type *url.URL has no field or method   Hostname)
src/xd/lib/tracker/http.go:66: t.u.Hostname undefined (type *url.URL has no field or method Hostname)
src/xd/lib/tracker/http.go:66: t.u.Port undefined (type *url.URL has no field or method Port)
Makefile:6: recipe for target โ€XDโ€ failed
make: *** [XD] Error 2

EDIT: Saw that the method was implemented in the last commit, and is probably on the way, so you can maybe just ignore this issue..

XD idles because no outbound tunnels are being built fast enough

info

git revision / version: master

OS: linux

Architecture: x86

problem

Doesn't seem to download anything

backtrace / error messages

Error messages: [yes/no]

seeder

[DBG] 2018-01-30 16:04:58.988580001 +0000 UTC m=+27.148727689   torrent obtained network
[DBG] 2018-01-30 16:05:58.990329845 +0000 UTC m=+87.150477557   http://uhjd472zbgcipmkv4yfn7seo6m7gz3vmqqc5lhj2tsn6erkfn2fq.b32.i2p/a announcing
[NFO] 2018-01-30 16:05:59.231566508 +0000 UTC m=+87.391714166   http://uhjd472zbgcipmkv4yfn7seo6m7gz3vmqqc5lhj2tsn6erkfn2fq.b32.i2p:80/a got 1 peers for 87f1107326c2260b26183bb931b1a7d8185fce18
[DBG] 2018-01-30 16:05:59.245131258 +0000 UTC m=+87.405278913   wrote 68 of 68

leecher

[DBG] 2018-01-30 16:04:58.897221855 +0000 UTC m=+26.113240379   torrent obtained network
[DBG] 2018-01-30 16:05:58.898830484 +0000 UTC m=+86.114848961   http://uhjd472zbgcipmkv4yfn7seo6m7gz3vmqqc5lhj2tsn6erkfn2fq.b32.i2p/a announcing
[NFO] 2018-01-30 16:05:59.00738353 +0000 UTC m=+86.223402222    http://uhjd472zbgcipmkv4yfn7seo6m7gz3vmqqc5lhj2tsn6erkfn2fq.b32.i2p:80/a got 0 peers for 87f1107326c2260b26183bb931b1a7d8185fce18
[DBG] 2018-01-30 16:05:59.334553519 +0000 UTC m=+86.550572048   got inbound bittorrent connection from 0D2lt-g~8BXG4vXgWPw0OBqz7yR5BVxsucF1eWDB~8qIKvXpfSmMhqWVPBkPxtzDeyKBcbCt~kVNJQVLGpJ3keJIAWlDCMYERRkBp4WkGqTysqElRaEhxtakhyofa294uOXKva2U6m0y1893TaQaHXBYpph83FOWD~kBF9dcFmNa3PykrTeyrUcikMUht18GD8w72W14cGm8jz6HRyl51Zh-8m-cF8W~gnchSDt709sVXHc94~KvcuP1MK6K3tqa5DWeX3oA74lvQsbawOKz1JVlnjLabRluv4RxMF646qiQXFXkBwZG-~4Ogn~WV87TMsksMm5EL1O~QB4Vx2-MAG-N9iQttrBjrLcph6tlpRL2HTA6oGBqNMCKYADxvpz4SdMnYWwwf5fI-f5g6DDdyLHBi2XGGol~7wi-qw5TBMuf0dolk~FDCaCjXbB24lSjGiqj8vHBHO5j2XHtijwAmXOoM4FbIbz9R0WEu-rYXqmRLBviKeY1XU4yuF483ksFAAAA

Backtrace: [yes/no]

[insert any backtraces here]

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.