Commit Graph

700 Commits

Author SHA1 Message Date
akwizgran
79aee8141a Logging for modem plugin. 2012-11-30 12:11:49 +00:00
akwizgran
7afd2d8f74 Don't accept an unreasonably large window size. 2012-11-27 15:38:55 +00:00
akwizgran
80543984be Use whole buffers for reads and writes. 2012-11-27 15:16:56 +00:00
akwizgran
705b87b97c Writes to the reliability layer should be asynchronous.
The flow control window will limit the amount of buffered data.
2012-11-27 14:51:34 +00:00
akwizgran
f8210e1b13 Wake any readers that are waiting for data when the modem hangs up. 2012-11-27 14:40:21 +00:00
akwizgran
4869a8034b Removed unnecessary synchronization. 2012-11-27 00:09:33 +00:00
akwizgran
116e194185 Replace the modem instance if an exception occurs. 2012-11-27 00:05:25 +00:00
akwizgran
14f2fd1995 Code cleanup, fixed potential NullPointerException if never connected. 2012-11-27 00:00:52 +00:00
akwizgran
a0c015352d Reliability layer for the modem plugin (untested). 2012-11-26 23:54:17 +00:00
akwizgran
38a8799a7c Removed stack traces. 2012-11-26 23:53:15 +00:00
akwizgran
f487d4f48a Don't allow input or output streams to be used after hanging up. 2012-11-26 22:26:07 +00:00
akwizgran
4f37cb0837 The not operator is quite important. 2012-11-26 21:26:35 +00:00
akwizgran
2a293b5018 Use a fresh receive queue for each call.
This prevents a caller from getting stale data and/or a stale EOF marker
if a previous caller didn't consume the queue.
2012-11-26 16:16:36 +00:00
akwizgran
98f1f26fcf Give names to threads for debugging purposes. 2012-11-26 14:48:10 +00:00
akwizgran
721a6b8950 First pass at a modem plugin. 2012-11-26 14:09:18 +00:00
akwizgran
6cc8463209 First pass at a modem plugin (unfinished). 2012-11-24 13:35:23 +00:00
akwizgran
d706363866 Removed unnecessary throws declarations. 2012-11-24 13:35:04 +00:00
akwizgran
dc932764ec You can't use an AtomicBoolean as a semaphore. 2012-11-24 12:32:45 +00:00
akwizgran
9a3157c3e6 Removed unnecessary locking. 2012-11-24 11:46:49 +00:00
akwizgran
eb237e5bb0 Expose transport ID through plugin factory so it's available earlier. 2012-11-24 11:13:12 +00:00
akwizgran
d90b4f4bc5 Allow Plugin.start() to fail gracefully; removed unnecessary locking. 2012-11-24 10:50:20 +00:00
akwizgran
66c155e41c Moved blocking operations off the serial port's event thread. 2012-11-23 22:41:12 +00:00
akwizgran
f40abf1a18 Safer not to create a new queue for each connection (race condition). 2012-11-23 22:36:47 +00:00
akwizgran
61f4dce408 Try to leave the serial port in a reusable state if an exception occurs. 2012-11-23 18:00:34 +00:00
akwizgran
91cb3ce7a9 Modem implementation using jSSC (untested). 2012-11-23 17:49:04 +00:00
akwizgran
7f1b01bee1 Skeleton of modem plugin. 2012-11-22 14:06:14 +00:00
akwizgran
e5f7ab7a2d Disable the Tor plugin by default. 2012-11-21 16:49:01 +00:00
akwizgran
eb8ea1a324 Upgraded JNA platform jar to 3.5.1. 2012-11-21 15:23:50 +00:00
akwizgran
df4e153837 Accidentally conflated two identically named fields. 2012-11-21 15:03:07 +00:00
akwizgran
a84df182e1 Updated JNA to 3.5.1. 2012-11-20 16:45:45 +00:00
akwizgran
71ee618a11 Patched Netlib to track changes in Bouncy/Spongy Castle.
Netlib was assuming that PEMReader would return a specific class when
parsing a public key; the latest version returns a different class.

Also patched the descriptor parser to accept fingerprint lines with or
without the opt keyword.
2012-11-20 16:28:39 +00:00
akwizgran
e416f3ba23 Updated Spongy Castle libs, added scpkix lib required by Silvertunnel. 2012-11-20 15:09:50 +00:00
akwizgran
9d57ff1177 Patched Netlib to use SC rather than BC and removed GeoIP database. 2012-11-16 19:07:50 +00:00
akwizgran
5c4ae3f7ad Upgraded Netlib to 0.14. 2012-11-16 18:14:39 +00:00
akwizgran
7811f09854 Moved unfinished plugin code to sandpit repo. 2012-11-16 17:23:05 +00:00
akwizgran
267a105539 Moved some work off the UI thread and fixed a potential memory leak. 2012-11-15 01:31:08 +00:00
akwizgran
a5cedbfc75 Removed the Add Another Contact button. 2012-11-15 01:30:35 +00:00
akwizgran
fe74f765ee Hide the soft keyboard after entering invitation/confirmation codes. 2012-11-15 01:04:30 +00:00
akwizgran
5298977015 Refactored invitation code to allow the UI to save & restore its state.
Android UI elements can be destroyed and recreated at any time, and they
can only store serialisable state, so references to long-running tasks
have to take the form of serialisable handles. This is pretty ugly -
it's easy to create memory leaks if you don't clean up stale
handle/reference mappings - but it's less ugly than the common solution
of using static variables to hold references.
2012-11-15 00:45:32 +00:00
akwizgran
3e8c6081ef Use an unlimited read timeout for TCP sockets. 2012-11-15 00:09:05 +00:00
akwizgran
e8a4d77864 Android Bluetooth code cleanup. 2012-11-13 15:44:49 +00:00
akwizgran
18cd0c5f34 Android Bluetooth sockets will fail to connect during discovery. 2012-11-13 15:30:17 +00:00
akwizgran
3355851e35 No point having public ID fields on package-private classes. 2012-11-13 14:17:29 +00:00
akwizgran
29751dcf6f Interface may be null if there are no suitable network interfaces. 2012-11-13 13:52:08 +00:00
akwizgran
eb4e7da354 Interface may be null if there are no suitable network interfaces. 2012-11-13 13:46:43 +00:00
akwizgran
f69f6b3d43 A real working implementation of the invitation protocol. 2012-11-13 12:26:33 +00:00
akwizgran
54ca7decbf Added a missing accessor method to CryptoComponent. 2012-11-13 11:53:31 +00:00
akwizgran
eedfa592d2 Stub implementation of the invitation protocol (works on Android). 2012-11-13 11:08:47 +00:00
akwizgran
514bec5101 Requesting focus doesn't have the expected effect. 2012-11-13 11:07:46 +00:00
akwizgran
e1fb603d6b Keep the service running until the JVM shuts down. 2012-11-13 11:07:20 +00:00