Commit Graph

3612 Commits

Author SHA1 Message Date
Jeremy Lakeman
4e50b1716c Test reachable bit flags about ourself 2016-09-20 15:04:28 +09:30
Jeremy Lakeman
275c99bc4e Add cli option for changing an entry pin 2016-09-20 10:00:02 +09:30
Andrew Bettison
2f61c447a9 Add a new rhizomerestful test case: update a bundle to empty payload 2016-09-19 14:30:04 +09:30
Andrew Bettison
9a5ee2eded Update INSTALL.md dates and compiler versions 2016-09-19 13:46:51 +09:30
Andrew Bettison
0657e27dea Fix a failing meshmsrestful test
On OS-X, "sed" is BSD sed(1); must use $SED instead to get GNU sed(1).
2016-09-15 17:17:34 +09:30
Andrew Bettison
fc8fce5595 Improve build-libsodium.sh 2016-09-15 16:55:59 +09:30
Jeremy Lakeman
ecb79d818f Refactor storage of binary values to enable reuse 2016-09-13 15:25:39 +09:30
Andrew Bettison
b94d2f7007 Minor improvements to README.md 2016-09-13 10:44:12 +09:30
Andrew Bettison
2c0b8a5ef4 Change #include "sodium.h" to <sodium.h> 2016-09-12 15:25:08 +09:30
Andrew Bettison
21679e3865 Fix rhizomeprotocol test on OS-X 2016-09-12 15:09:46 +09:30
Andrew Bettison
11b091a33b Update doco for OS-X installation and development 2016-09-12 15:09:46 +09:30
Andrew Bettison
c45e92b731 Fix OS-X build with libsodium
Add a new 'build-libsodium.sh' script and instructions in
doc/Development.md.  Update the configure.in script to check for
libsodium headers and library, and print helpful messages if not
present.
2016-09-12 15:09:41 +09:30
Andrew Bettison
43bd0bd33f Fix a failing keyring test
The in-memory identity creation test was failing intermittently because
the server only creates the in-memory identity on the first tick, and
under load the server sometimes does not tick for a while, leading to a
race with the "servald id self" command.

The test case now waits for the server to emit a tick before running the
"id self" command.  This necessitated a new DEBUG() statement and a new
debug flag 'overlaytick'.

Also disabled Rhizome for all the keyring tests, as unnecessary Rhizome
DB creation was slowing down the fixtures.
2016-09-06 15:00:21 +09:30
Andrew Bettison
2cfdafdb56 Add some MDP client DEBUG trace statements 2016-09-06 13:31:38 +09:30
Andrew Bettison
7f0fef2209 Fix an intermittent server test failure
The quit-on-monitor-client-disconnect test was non-deterministic
depending on load (eg, other concurrently running tests).  Under load,
it was likely that the server did not process the "monitor quit" command
before checking for disconnect, so the server did not terminate.

The fix was to make the monitor interface read and process all queued
input from the client before checking for HUP or ERR condition on the
socket.  With this fix, the "sleep 1" kludges before and after the echo
"monitor quit" to the console command are no longer needed.

In the process the monitor interface code was modernised: eg, now it
calls read_nonblock() instead of read(2).
2016-09-06 12:33:29 +09:30
Andrew Bettison
64286bd5e6 Absorb ENOTRECOVERABLE in read_nonblock()
Already absorbs EINTR and EAGAIN.  The monitor interface ignores this
error code for reasons unexplained, and now that it uses read_nonblock()
instead of read(), this preserves its behaviour.
2016-09-06 12:07:00 +09:30
Andrew Bettison
0869470d96 Add DEBUG_cli_parsed() statements to monitor commands 2016-09-06 11:19:45 +09:30
Andrew Bettison
fc47bc541f Fix the DEBUG_cli_parsed() macro
Was logging a blank line instead of "parsed `key`=`value`..."
2016-09-06 11:18:59 +09:30
Andrew Bettison
c3a94a7ac3 Formalise dependency on libsodium
./configure now fails if libsodium is not present.
Added libsodium to the list of dependencies in INSTALL.md.
Add a Debian apt-get command to doc/Development.md.
2016-09-05 17:04:22 +09:30
Jeremy Lakeman
05da181541 Return PAYLOAD_STATUS_NEW if file is now missing from the store 2016-09-05 15:13:09 +09:30
Jeremy Lakeman
7beab7e5d8 Bias rhizome transfer based on route to recipient 2016-09-05 15:12:36 +09:30
Jeremy Lakeman
73b151a3e4 Remove unused variable 2016-09-05 12:31:22 +09:30
Jeremy Lakeman
67b9aeeb4e Add simple meshmb find command 2016-08-29 11:06:53 +09:30
Jeremy Lakeman
6a0b7a1da6 Allow for arbitrary extra manifest fields on broadcast messages 2016-08-24 16:33:39 +09:30
Jeremy Lakeman
e13b9c3c94 Reduce redundant reading of message ply's 2016-08-23 14:28:13 +09:30
Jeremy Lakeman
ce36e6f2c6 Fix assert on DB lock while flushing data 2016-08-22 11:13:29 +09:30
Jeremy Lakeman
b2eb3a2199 Begin broadcast messaging service 2016-08-16 15:04:15 +09:30
Jeremy Lakeman
97fd66faf7 Don't assert if file not found 2016-08-16 12:23:20 +09:30
Jeremy Lakeman
9697b0991b Tweak message ply internals 2016-08-16 12:22:23 +09:30
Jeremy Lakeman
b6256ea89a Add identity_t type & rename signing key api to identity. 2016-08-16 12:22:13 +09:30
Jeremy Lakeman
dc7226b6a5 Remove file hash command 2016-08-16 12:22:13 +09:30
Jeremy Lakeman
c5d6579397 Add cli option to include text of last received message 2016-08-10 11:20:12 +09:30
Jeremy Lakeman
8ee7245881 Add Subscriber constructor 2016-08-08 15:24:01 +09:30
Jeremy Lakeman
30167ce4ed Add meshms newsince support for starting with an empty conversation 2016-08-02 13:29:31 +09:30
Jeremy Lakeman
83b6ecb453 Roll an in memory identity when the keyring is empty 2016-08-02 11:01:32 +09:30
Jeremy Lakeman
96b7cfa46f Silently discard conversation list from a future / unknown software version 2016-08-02 10:38:38 +09:30
Jeremy Lakeman
c3ca00fe56 Add signing key (not populated yet) to meshms java api 2016-08-02 10:23:53 +09:30
Jeremy Lakeman
2bbccf728f Generate a hashcode to detect when the number of unread messages has changed 2016-08-02 10:23:53 +09:30
Jeremy Lakeman
c9c2a65a0a Return unique id for each message 2016-08-01 11:41:09 +09:30
Jeremy Lakeman
9e1b996232 Allow json readers to be closed from another thread 2016-08-01 11:41:09 +09:30
Jeremy Lakeman
3b7e8abb99 Support compiling with Java version 5 2016-07-25 16:59:01 +09:30
Jeremy Lakeman
baa50aaadb Get byte values from abstract id 2016-07-25 16:54:11 +09:30
Jeremy Lakeman
51947dc6cb Allow for bundles with no name in java api 2016-07-25 16:54:11 +09:30
Jeremy Lakeman
a854105598 Support rhizome newsince request on an empty store 2016-07-25 16:54:11 +09:30
Jeremy Lakeman
94cf79f0f3 Improve resilience to database locking issues 2016-07-25 16:54:11 +09:30
Jeremy Lakeman
619c17a191 Refactor meshms cli to separate c file 2016-07-25 16:54:11 +09:30
Jeremy Lakeman
df6688c496 Add signing key to restful keyring API 2016-07-25 16:54:11 +09:30
Jeremy Lakeman
dbded493c1 Refactor meshms ply handling into separate source file 2016-07-25 16:54:11 +09:30
Jeremy Lakeman
a71c7ce698 Add signing key to routing messages 2016-07-25 15:50:52 +09:30
Jeremy Lakeman
d028818c0b Detect combined identities & transmit them more efficiently 2016-07-25 15:50:43 +09:30