Commit Graph

125 Commits

Author SHA1 Message Date
Matt Joiner 28c1536daf bencode: When decoding a dict, if the final key is missing its value, don't treat that as an error.
I think I'm swayed here by the robustness principle/Postel's Law.
2015-10-02 00:13:43 +10:00
Matt Joiner 87158e594a Derp 2015-09-20 21:09:55 +10:00
Matt Joiner 8949375bd6 bencode: Decode very large integers as big.Int if they overflow int64 2015-09-20 21:08:42 +10:00
Matt Joiner a101f9bcbd bencode: Remove trailing bytes checks, this broke the peer protocol and should be a new API 2015-08-23 19:24:29 +10:00
Matt Joiner 577ea21793 Revert "bencode: Trailing bytes on Unmarshal is an error"
This reverts commit ad73a0ea89.
2015-08-23 19:10:22 +10:00
Matt Joiner 0403d4185d bencode: Simplify parse_int 2015-08-23 17:51:24 +10:00
Matt Joiner ad73a0ea89 bencode: Trailing bytes on Unmarshal is an error 2015-08-23 17:47:01 +10:00
Matt Joiner 2ccbaa4e79 bencode: Don't allow extraneous trailing 'e's 2015-08-23 17:45:59 +10:00
Matt Joiner baf389aa8c bencode: Add tests for Unmarshalling trailing bytes, and extraneous 'e' 2015-08-23 16:13:30 +10:00
Matt Joiner 4fbbc0dd41 bencode: Fuzz 2015-08-23 15:59:49 +10:00
Matt Joiner 4f293ca75b Several trivial fixes 2015-06-28 16:39:04 +10:00
Matt Joiner d3c5a4f92c bencode: gofmt 2015-04-30 00:36:25 +10:00
Matt Joiner 916c9c822a Decoding bools has been wrong all along, always set to true 2014-12-01 23:28:47 -06:00
Matt Joiner cdfba7a1ac Expose SyntaxError reason with a proper error 2014-11-18 22:08:08 -06:00
Matt Joiner 7e2c384bd5 Fix buffer reuse bug and some formatting. 2014-03-20 01:54:18 +11:00
nsf d0429086be Add more comments to the bencode library. Implement UnmarshalerError. 2012-06-30 22:26:20 +06:00
nsf 0b385a409b Add first bits of "torrent" library (.torrent file manipulation).
Add missing testdata for bencode also.
2012-06-28 02:26:56 +06:00
nsf e553531a10 Fix bugs, implement missing bits. Made a mess, can't describe properly. 2012-06-28 02:21:26 +06:00
nsf 110956d936 Fix Marshaler case. 2012-06-24 17:10:53 +06:00
nsf 69d1e17b80 Add MarshalBencode test. 2012-06-24 17:10:27 +06:00
nsf 8db0c29da9 Add bufio.Writer error handling, move Flush to the internal code. 2012-06-24 16:59:04 +06:00
nsf 27b64a002c Add a couple of decode tests, fix empty slice bug. 2012-06-22 19:34:26 +06:00
nsf f8f98eb7cd Add missing interface definitions. 2012-06-22 19:34:04 +06:00
nsf 57c1403300 Uncomment defer recover statement. 2012-06-20 19:34:10 +06:00
nsf a68e4a6f5a Initial commit. 2012-06-20 19:21:32 +06:00