Commit graph

470 commits

Author SHA1 Message Date
Justin Li da33c3d585 Use godep restore to set up dependencies 2015-06-18 20:16:24 -04:00
Justin Li 316cb7ce5a Remove godep sources from the repository 2015-06-18 20:11:44 -04:00
Justin Li 8502867d94 Merge pull request #64 from chihaya/fix-blank-query-param-panic
Fix panic occurring when blank query params are present
2015-06-18 18:00:40 -04:00
Justin Li 203e4e6020 Fix query parsing when blank values are present 2015-06-18 10:34:52 -04:00
Justin Li 242ba22f8c Add failing test that reproduces #63 2015-06-18 10:19:54 -04:00
Justin Li a17474bb05 Merge branch 'udp' into develop 2015-06-17 19:39:51 -04:00
Jimmy Zelinskie 2fcd34360f udp: basic announce test 2015-05-11 00:57:54 -04:00
Justin Li de18172952 Update graceful import path 2015-04-28 20:32:19 -04:00
Justin Li ae62188711 Disable graceful signal handling 2015-04-28 20:27:39 -04:00
Jimmy Zelinskie ff5339ceb3 godeps: refresh to get latest changes in graceful 2015-04-22 22:54:46 -04:00
Jimmy Zelinskie 7f2abdae4e udp: make handleOptionalParameters less misleading 2015-04-06 19:15:07 -04:00
Jimmy Zelinskie cf3806cb9b udp: handleOptionalParameters method added
This also addresses an issue where the goroutine was not breaking out of
the loop parsing the options, instead it was only breaking out of the
switch statement.
2015-04-06 19:06:06 -04:00
Jimmy Zelinskie d317dfc069 udp: implement BEP45 response 2015-04-04 15:42:33 -04:00
Jimmy Zelinskie 938542ac74 models: Announce field for AnnounceResponse 2015-04-04 15:42:28 -04:00
Jimmy Zelinskie 222415f467 udp: Implement draft of BEP45; Endpoint type added
Because of the requirement of storing multiple ports, Announce.Port has
been abolished and Announce.IPv4/IPv6 have been replaced with the
Endpoint type. HTTP has been updated to support this model. UDP has been
updated to support the latest draft of BEP45 and most of the
optional-types described in BEP41.
2015-03-29 03:03:19 -04:00
Jimmy Zelinskie f25464a02b Merge branch 'master' into udp 2015-03-27 22:05:48 -04:00
Jimmy Zelinskie b93cc26b98 models: properly format port into peerkey string 2015-03-26 22:11:13 -04:00
Justin Li f3b264dd53 docs: Fix link to configuration.md 2015-03-24 00:41:52 -04:00
Justin Li eefbe64da6 docs: Break out config docs into a separate file 2015-03-24 00:38:20 -04:00
Justin Li 6490c8f51d docs: Add create_on_announce to list of config keys 2015-03-24 00:32:59 -04:00
Justin Li f083bb8477 docs: Start reformatting config documentation 2015-03-24 00:29:32 -04:00
Jimmy Zelinskie 1bf788a99b tracker: fix reference to config 2015-03-23 20:43:33 -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 a78fac6d7f Merge pull request #61 from chihaya/peerkey
Add Port to PeerKey
2015-03-22 21:10:12 -04:00
Jimmy Zelinskie 6188d52de0 models: Port method for PeerKey
This also adds some more docs for related stuff in the models package.
2015-03-22 19:41:57 -04:00
Jimmy Zelinskie 92866cfacd models: include port in peerkey 2015-03-22 18:44:09 -04:00
Jimmy Zelinskie 1deca5fd5e readme: add godoc, docker badges
[ci skip]
2015-03-22 18:42:21 -04:00
Jimmy Zelinskie c1a4a6ecbb dockerfile: initial 2015-03-19 23:39:31 -04:00
Justin Li da46ef8c8a tracker: Return announcing peer if there are no others to avoid an empty peers field 2015-02-28 00:56:45 -05:00
Jimmy Zelinskie ac2fcade1e tracker: record announce/scrape stats in handlers
This deduplicates code tracking the stats code tracking announces and
scrapes for each protocol. The down side is that it isn't aware of any
failures writing responses, but it was already being called before the
write to a response for HTTP.
2015-02-26 09:03:52 -05:00
Jimmy Zelinskie 9b4999c0cf stats/udp: nop on nil DefaultStats 2015-02-25 21:56:58 -05:00
Jimmy Zelinskie 5af37be85c udp: fix renaming ipbuf->ipbytes 2015-02-25 21:56:37 -05:00
Jimmy Zelinskie 8deef98874 udp: style nitpicks 2015-02-25 21:47:01 -05:00
Justin Li 14a6278de0 udp: Use net.IP inputs for connection ID generation
Add enum for action IDs

Remove unnecessary length check
2015-02-23 21:30:45 -05:00
Justin Li 3d28f281fb udp: Add constructor for ConnectionIDGenerator, return buffer to pool on socket timeout 2015-02-22 16:58:43 -05:00
Jimmy Zelinskie 2e678ac806 Merge pull request #57 from chihaya/completed-seeder
Remove impossible code for 'completed' event
2015-02-21 16:04:50 -05:00
Justin Li 7512f50731 udp: Add basic UDP tests 2015-02-21 14:35:21 -05:00
Justin Li 105edf21f1 udp: Add channel to communicate when socket has opened, set read timeout to 0 on Stop() 2015-02-21 14:02:00 -05:00
Justin Li 669128c83a tracker: Pass listen address into tracker.Server.Serve() 2015-02-21 13:16:21 -05:00
Justin Li b6c1b3838b tracker: Remove impossible code for 'completed' event 2015-02-21 13:00:23 -05:00
Justin Li f98c675bc7 udp: Add comments to pass lint 2015-02-21 00:21:14 -05:00
Justin Li ac04761e40 readme: Add note about 64-bit being required 2015-02-20 21:00:22 -05:00
Justin Li 4c3cd6cc0a udp: Rotate connection ID generation IVs every hour 2015-02-20 15:38:27 -05:00
Justin Li afb22c3df6 udp: Add basic logging and more comments 2015-02-20 14:08:46 -05:00
Justin Li d3d35b4655 udp: Send the announce interval in seconds 2015-02-20 13:42:14 -05:00
Justin Li 92f3c62456 tracker: Add common interface to start and stop servers 2015-02-20 13:39:19 -05:00
Justin Li 0d33210901 udp: Clean up connection ID checking 2015-02-20 12:52:49 -05:00
Justin Li 9526df74ad udp: Implement scrapes 2015-02-20 12:35:31 -05:00
Justin Li be5720dadd deps: Update bencode to pick up uint16 fix 2015-02-20 12:29:02 -05:00