Commit graph

74 commits

Author SHA1 Message Date
Jimmy Zelinskie 82459297a4 add support for jwt validation of infohashes 2016-01-13 16:14:54 -05:00
Jimmy Zelinskie 9862a57b73 remove all private tracker logic
There are no consumers of any of this logic nor is it complete. We're
better off without it in the meantime until we have a use case and a
more cohesive model for expressing it.
2016-01-04 18:26:29 -05:00
Jimmy Zelinskie b303f0e9f2 default to "localhost:port" and not "":port
Windows doesn't handle empty addresses the way unix-like OSs do.
2015-10-28 16:33:01 -04:00
Jimmy Zelinskie 133450944c normalize all JSON to camelCase
Fixes #104.
2015-10-25 17:25:02 -04:00
Jimmy Zelinskie 1764fa4a2d add api to config & propogate config changes 2015-10-11 19:23:30 -04:00
Jimmy Zelinskie c0c3eda290 config: make reaping configurable
This allows for configurable reaping rates and changes the default to
what many public trackers use in the wild.
2015-09-18 01:27:27 -04:00
Jimmy Zelinskie f25464a02b Merge branch 'master' into udp 2015-03-27 22:05:48 -04:00
Jimmy Zelinskie 80c068c97a config: add create_on_announce option
This option allows the user to specify whether or not to create a new
swarm for torrents that do not previously exist within the tracker's
storage.
2015-03-23 20:02:13 -04:00
Jimmy Zelinskie 0ecd126ae8 lint: Http -> HTTP 2015-03-23 19:57:45 -04:00
Justin Li c2770ee741 udp: Implement initial connection protocol 2015-02-20 01:12:47 -05:00
Justin Li 778b64defa udp: Add UDP configuration, move tracker shutdown to the main package 2015-02-19 23:46:28 -05:00
Justin Li 87c68f1973 2015 2015-01-01 12:02:25 -05:00
Jimmy Zelinskie ddd10d9732 Begin refactor to better encapsulate configuration
This also updates the example_config.json which did not previously work.
Config.Config is now composed of embedded structs of other configs that
can later be used to clearly have a separation of concerns.
2014-11-01 20:12:40 -04:00
Paul Saab 3f5b6b55b0 Limit number of concurrent connections
Go's net/http library has no limits in place for number of concurrent
requests currently being processed.  This can result in an enormous
number of goroutines being created and the read/write buffer pools
growing unbounded resulting in OOM situations.
2014-09-25 10:58:07 -07:00
Paul Saab ad9034da6d Reduce contention on the torrent map
We see the torrent map have quite a bit of contention.  Shard the map by
a configurable number of shards to reduce the times we may contend on
the lock.
2014-09-24 10:23:16 -07:00
Jimmy Zelinskie b910fdabf5 Organize peers by subnet.
This commit restructures PeerMaps to be a map from Subnet to
PeerID to Peer. This reduces the complexity require to gather peers from
the same subnet.
2014-09-23 23:00:50 -04:00
Justin Li 976a983aa7 go fmt [ci skip] 2014-09-03 10:18:26 -04:00
Cooper Lees 67df033c7f Add configurable HTTP read and write timeouts 2014-09-02 22:24:15 -07:00
Cooper Lees 26de6d2e9c Respect a clients AF Optional Support - config driven 2014-08-21 07:11:35 -07:00
Jimmy Zelinskie ffb3c57181 move whitelist into cfg 2014-07-25 16:58:26 -04:00
Justin Li c1c9ee07a9 Listen on all interfaces by default
[ci skip]
2014-07-24 17:08:08 -04:00
Justin Li fc2d15cdc0 Change private config key to private_tracker 2014-07-23 18:48:01 -04:00
Justin Li 88d68a99a2 Clean up stats configuration 2014-07-23 17:25:01 -04:00
Justin Li cf619aa50f Add memory statistics 2014-07-23 17:08:06 -04:00
Justin Li d47cf7d4bc Move stats buffer size to the regular config 2014-07-23 16:14:50 -04:00
Justin Li 76c68a53b5 Add RealIPHeader configuration, and move network conf to its own struct 2014-07-23 14:00:17 -04:00
Justin Li 8369bbbcd8 Allow configuring if a peer may have 2 IPs 2014-07-23 13:36:31 -04:00
Justin Li 14843b9e89 Add AllowIPSpoofing configuration 2014-07-23 13:08:57 -04:00
Jimmy Zelinskie 7faa1b08ac moved together bools 2014-07-21 03:52:56 -04:00
Jimmy Zelinskie 07081e1027 Add support for preferring peers in the same subnet 2014-07-17 04:17:43 -04:00
Justin Li cd6204f13d Purge peers that have not announced for twice the announce interval 2014-07-16 19:38:51 -04:00
Jimmy Zelinskie d2ba9fb9f7 repurpose drivers from mock to no-op and memory 2014-07-15 00:22:04 -04:00
Jimmy Zelinskie b321d1f0fa update config docs [ci-skip] 2014-07-14 23:13:35 -04:00
Jimmy Zelinskie 6a5144fb4e Adds an error for missing driver params 2014-07-14 20:36:49 -04:00
Jimmy Zelinskie 3cc4679454 default to addr 127.0.0.1:6881 2014-07-09 21:26:44 -04:00
Justin Li e08f745f6c Happy uber-belated new year! 2014-07-06 17:56:54 -04:00
Jimmy Zelinskie ff5dc0920d DriverConfig.Params enables generic db parameters 2014-07-03 17:37:13 -04:00
Jimmy Zelinskie 6d5290d85e transition to httprouter 2014-07-01 21:40:29 -04:00
Jimmy Zelinskie 9cb5b82dc7 log->glog; more bencode fixes 2014-06-30 23:21:08 -04:00
Jimmy Zelinskie 834e584f2d fix null ptrs, misuse of bencode 2014-06-30 14:59:31 -04:00
Jimmy Zelinskie caba155b5d consistent logging 2014-06-26 17:10:39 -04:00
Jimmy Zelinskie 42693e2a3b docs, signatures; glog for main; config.New() 2014-06-24 03:59:30 -04:00
Jimmy Zelinskie 3bfb3074b4 overhaul everything 2014-06-23 22:47:43 -04:00
Jimmy Zelinskie 90491dc386 mockConfig.Addr :80 -> :34000 2014-05-08 06:39:39 -04:00
Jimmy Zelinskie 4a8d756f5a announce type; renames; docs 2014-05-07 05:19:36 -04:00
Jimmy Zelinskie b32eaebcd6 first pass with linter 2014-05-01 00:30:46 -04:00
Jimmy Zelinskie 76f03e209f rm driver deps 2013-12-02 05:00:28 -05:00
Justin Li 986675cc4d Fix stats test and stop spamming people 2013-11-30 23:13:30 -05:00
Jimmy Zelinskie 6549f49e26 go fmt [ci skip] 2013-11-24 00:49:20 -05:00
Jimmy Zelinskie 9382ac482e removed all references to "transaction" 2013-11-23 23:48:38 -05:00