Commit Graph

233 Commits

Author SHA1 Message Date
8764642878 Major fixes and improvements to the network module, fixing problems where objects where requested multiple times or not at all in some situations. 2016-01-16 08:47:50 +01:00
549c8854ed Refactoring: renamed 'security' to 'cryptography' 2016-01-10 13:38:32 +01:00
de0100e14f Merge branch 'feature/server-pow' into develop 2016-01-10 12:22:57 +01:00
fad3e07871 Some changes needed for POW server and some general improvements 2015-12-21 15:13:48 +01:00
61788802c5 Some POW improvements 2015-12-18 16:42:17 +01:00
51bf3b8bd2 Fixed tests 2015-12-12 11:05:13 +01:00
ab6a3c56dd The POW callback is now a service and its state stored.
The proof of work engine therefore just has to remember its initial hash making server based POW easier.
2015-12-08 20:27:32 +01:00
991a0e5f86 Some improvements for custom message handling 2015-12-02 17:45:50 +01:00
99266712fa Some extensions for server POW 2015-11-28 20:27:05 +01:00
2fae90c433 Some code for sending acknowledgements
- some of it isn't tested
- somehow the ack part seems to be empty, even though the flag should be set
2015-11-08 19:29:26 +01:00
1f05a52f05 Improvements
- Massively reduced logging, especially at debug level
- Optimizations to reduce system load
- Use bootstrapping to find stable nodes
2015-11-08 10:14:37 +01:00
2a8834e3c6 Timeout might have been too short for Travis CI
(or there is an actual problem with concurrency)
2015-10-30 20:05:55 +01:00
c9c0806e0d Attempt to disconnect on thread interrupt 2015-10-29 12:34:29 +01:00
9c2d8589bf Improved POW test 2015-10-28 16:56:09 +01:00
b496f81b20 Fixed POWEngine and improved test.
(Locks can't be released from a different thread, we need to use a semaphore)
2015-10-27 07:50:20 +01:00
36fe780766 The nonce is now set over a callback method in the POW engine. This should make some POW implementations easier. 2015-10-26 09:49:49 +01:00
bdc8e025c1 Connections are now severed after a configurable time (12h by default) or when a limit is exceeded (150 by default) 2015-10-24 12:08:23 +02:00
a398b072b5 (probably) fixed another concurrency problem in the tests 2015-10-19 15:14:25 +02:00
fb300c8731 Fixed possible ConcurrentModificationException 2015-10-19 15:08:11 +02:00
1e605f56a5 Added method to retrieve all properties 2015-10-18 18:22:49 +02:00
3f1b41a2c1 Merge branch 'develop' of github.com:Dissem/Jabit into develop 2015-10-15 18:04:55 +02:00
ac70a4b632 We probably shouldn't leave the bitmessage node running after the test is finished 2015-10-15 17:59:32 +02:00
4913a21b11 Fixed NetworkHandlerTest 2015-10-15 15:34:04 +02:00
d39342b12f Update .travis.yml
Travis seems to use Java 7 by default, probably because it's defined in the base `build.gradle`. This causes a problem for modules that use Java 8.
2015-10-15 08:21:41 +02:00
409100ab20 Work-around for parsing problem
(and made code more robust for different parsing problems)
2015-10-14 22:56:46 +02:00
ddaa52f416 Merge branch 'feature/threaded-connections' into develop 2015-10-14 20:38:37 +02:00
511b3c1754 Connections now use two separate threads for writing and listening
- this should avoid dead locks, specifically when connecting to Jabit :/
- also, Java 8 features are now allowed in modules not needed by Android clients
2015-10-14 18:37:43 +02:00
117ac3ca73 Fixed some problems and added cleanup on shutdown 2015-10-12 12:44:13 +02:00
3d1bd7227b Updated H2 version 2015-10-12 12:42:11 +02:00
ea1419eda1 Synchronisation API - added option to wait for the synchronization to finish 2015-10-08 13:12:39 +02:00
f9ff22bebe Synchronisation API and related refactorings / improvements
-> lets you synchronize with the Bitmessage network without staying connected
2015-10-07 21:50:41 +02:00
c3fdee79ca Some bugfixes and added findMessages by sender 2015-09-29 07:13:27 +02:00
7fb837645f Synchronisation now shouldn't fail if the trusted host has no new messages
- fixed tests for Gradle builds
- fixed SerializationTest
2015-09-25 23:35:31 +02:00
d67c932fb2 Added synchronization code and unit test.
Synchronisation fails if the trusted host has no new messages - this needs to be fixed (but shouldn't be an issue for real world applications)
2015-09-24 08:09:20 +02:00
f89d1a342e Fixed a few problems:
- some bugs that creeped in when I moved security into its own adapter
- improved some DB code as it doesn't work in Android anyway
- all entities should be serializable (very useful in Android)
2015-08-28 13:48:01 +02:00
4911c268c2 Changed repositories to work with SQLDroid, which seems to have very limited support for blobs, at least it didn't work when I used stream. 2015-08-05 19:55:53 +02:00
b8546e28af Moving "Security" to a separate port, so there can be a Bouncycastle and a Spongycastle implementation. (BC doesn't work on Android, SC can't be used on Oracle's JVM) 2015-08-05 19:52:18 +02:00
6542bd1451 now the build should work for anyone (esp. travis) 2015-07-04 11:13:35 +02:00
070cde699e Version 0.2.1-SNAPSHOT bump - minor changes so anyone should be able to build and I can easily upload to maven central 2015-07-04 10:26:02 +02:00
bef9ea716e Merge branch 'release/0.2.0' into develop 2015-07-03 14:48:34 +02:00
c557eafc36 Merge branch 'release/0.2.0' 2015-07-03 14:48:33 +02:00
c1ca1d856d Version 0.2.0 bump 2015-07-03 14:47:25 +02:00
6fbb3f850d There are some instances where an inventory item is requested and therefore saved twice. This shouldn't be logged as an error. 2015-07-03 14:46:55 +02:00
6f50c200ee Added import/export to the demo app
- discovered private key length was wrong - fixed
- as things are broken anyway, refactored flyway migrations - you'll need to delete ~/jabit.*.db
2015-07-03 11:28:06 +02:00
65fdd7d408 Dropped obsolete table and set lower POW target for test (there is no need) 2015-07-03 09:04:35 +02:00
7f4c67f43e Removing IV of received objects from requested objects list (I forgot that one) 2015-07-03 07:56:18 +02:00
2c4d95af2f smarter network code, fixed various issues
- deciding on the stream at creation time is just silly - it should be done based on the identities (this part is TODO)
- changed NodeRegistry so it doesn't store nodes - this should help to connect faster
- inventory items shouldn't be advertised to nodes that are already aware of them (issue #13)
- objects shouldn't be requested more than once (issue #9)
2015-07-01 06:57:30 +02:00
c8960df2b3 issues #11 and #12 - import and export for Wallet Import Format 2015-06-27 07:52:28 +02:00
884171fe18 issue #15: fixed socket timeouts and connection shutdown - no exceptions should be thrown if the network node is being shut down, although it can take up to 5 seconds = max(READ_TIMEOUT, CONNECT_TIMEOUT) 2015-06-24 22:56:17 +02:00
fb25852bac Removed docs into another repo - they don't have much to do with Jabit
(If you must: https://git.dissem.ch/chrigu.meyer/thesis/)
2015-06-24 06:55:25 +02:00