Commit Graph

4229 Commits

Author SHA1 Message Date
akwizgran e8660c13ca Use a single NetLayer instance for all connections. 2012-02-07 09:58:13 +00:00
akwizgran 9acaccb557 Minutes were invented in Java 1.6, apparently. 2012-02-07 01:33:48 +00:00
akwizgran 5656dc8df8 Another unit test for the Tor plugin. 2012-02-06 23:41:30 +00:00
akwizgran fbf5c78f91 Factory and unit test for the Tor plugin; moved slow tests into their
own ant target.
2012-02-06 23:18:35 +00:00
akwizgran ec6f60b065 Tor plugin using Silvertunnel's Netlib (untested). 2012-02-06 22:30:07 +00:00
akwizgran 6da30ca486 Plan B: Remove error correction and reliability layers and the
consequent distinction between segments and frames.
2012-02-06 16:03:09 +00:00
akwizgran 899ec5e19e Use a SortedMap for efficient insertions. 2012-01-24 14:40:45 +00:00
akwizgran 3d4b5e6282 Make room for the ack header. 2012-01-24 09:28:28 +00:00
akwizgran ffe3bafce4 Tests and bugfixes for IncomingReliabilityLayerImpl. 2012-01-23 17:06:57 +00:00
akwizgran 9f1e3dea21 Incoming reliability layer with support for reordering (untested). 2012-01-21 18:48:24 +00:00
akwizgran 48ceaaea2a Renamed a couple of classes. 2012-01-20 23:28:17 +00:00
akwizgran 3a77ba9aaf Allow the transport to specify the maximum segment length. 2012-01-20 23:06:51 +00:00
akwizgran 13eff752da Keep a stack of free segments to reduce allocations. 2012-01-20 20:05:26 +00:00
akwizgran 337c1c8ac4 Unit tests for IncomingErrorCorrectionLayerImpl. 2012-01-20 19:56:18 +00:00
akwizgran 114ca203d8 Tests and bugfixes for XOR encoder and decoder. 2012-01-20 19:09:27 +00:00
akwizgran 74dd4e277f Tests and bugfixes for XorErasureDecoder. 2012-01-20 17:02:17 +00:00
akwizgran 2b737e7e53 Test and bugfixes for XorErasureEncoder. 2012-01-20 16:29:22 +00:00
akwizgran f10af33b6f Outgoing error correction layer (untested). 2012-01-20 16:07:07 +00:00
akwizgran e46ef15afb Incoming error correction layer (untested). 2012-01-20 15:37:33 +00:00
akwizgran 5a4505cb71 Fixed the frame reordering window. 2012-01-20 11:26:10 +00:00
akwizgran 92b67d9881 Removed a redundant method. 2012-01-19 23:34:58 +00:00
akwizgran e43ffe1ab4 Frame reordering window. 2012-01-19 23:26:26 +00:00
akwizgran 02c516492f Moved connection window size to TransportConstants. 2012-01-19 22:13:26 +00:00
akwizgran aabb8fb5b3 Split the functionality of ConnectionWriterImpl into layers. 2012-01-19 20:51:45 +00:00
akwizgran 12393581f9 Split the functionality of ConnectionReaderImpl into layers. 2012-01-19 19:52:15 +00:00
akwizgran 1f39bfef78 Distinguish between recoverable and unrecoverable errors. 2012-01-19 19:27:04 +00:00
akwizgran 7eaa1f176f Removed a println. 2012-01-19 18:51:55 +00:00
akwizgran f53cc88b8f Reduced the visibility of a class. 2012-01-17 21:51:33 +00:00
akwizgran 249c82d30e Renamed frame cipher -> segment cipher, frame key -> segment key. 2012-01-17 21:44:28 +00:00
akwizgran 6085b70b85 Factory methods for segmented connection writers. 2012-01-17 20:29:30 +00:00
akwizgran dbeb7a207e Added factory methods for segmented connection readers. 2012-01-17 20:21:26 +00:00
akwizgran 87e1c42bf8 Converted the outgoing encryption layer from frames to segments. 2012-01-17 17:37:38 +00:00
akwizgran f6ed6dd60b Converted incoming encryption layer from frames to segments. 2012-01-17 16:45:25 +00:00
akwizgran 8c0020873c Updated transport constants and renamed some test classes. 2012-01-17 14:56:30 +00:00
akwizgran 9bd0b60dec Renamed some classes. 2012-01-17 13:19:40 +00:00
akwizgran 79814bd406 Segmented plugin interfaces should extend general plugin interfaces. 2012-01-17 13:02:20 +00:00
akwizgran b2cab71637 Decryption code for tagging every segment. 2012-01-13 16:58:41 +00:00
akwizgran 0d06ad8bd8 Unit tests for tagging every segment. 2012-01-13 15:56:53 +00:00
akwizgran 07f8607c04 Initial support for tagging every segment (untested). 2012-01-13 15:50:43 +00:00
akwizgran ac136d3732 Pass segments rather than frames to/from segmented plugins. 2012-01-13 15:05:42 +00:00
akwizgran d0e402062a Unit tests for segmented encrypter and decrypter. 2012-01-13 13:06:43 +00:00
akwizgran 90e54d94e6 Encrypter and decrypter for segmented transports (untested). 2012-01-13 11:54:55 +00:00
akwizgran ab9b05448d APIs for segmented transports. 2012-01-13 10:53:23 +00:00
akwizgran f6cad10868 Frame-at-a-time decryption. 2012-01-12 18:41:43 +00:00
akwizgran f55f98f506 Frame-at-a-time encryption. 2012-01-11 17:50:24 +00:00
akwizgran 99caec9448 Refactoring.
Unidirectional transports and connections are now called
simplex rather than batch. Bidirectional transports and connections
are now called duplex rather than stream.
2012-01-11 17:00:47 +00:00
akwizgran 1499e061c1 Callback should not be null. 2012-01-11 16:17:14 +00:00
akwizgran 3e61adb623 Avoid making alien calls with locks held. 2011-12-10 19:21:00 +00:00
akwizgran cbc5fd1bb4 If the reader detects a clean close, let the writer finish and close
cleanly.
2011-12-10 16:53:04 +00:00
akwizgran f2de23854e Added BoundedExecutor and documented executor policies. 2011-12-10 00:59:29 +00:00