Jeremy Lakeman
f76dc67c75
Fix next tick calculation for unicast destinations
2015-06-15 15:35:07 +09:30
Jeremy Lakeman
5aeb9b960d
Move config to a thread local
2015-06-15 14:14:41 +09:30
Andrew Bettison
6febcc350d
Replace RESTful newsince polling with triggers
...
Remove the 'api.restful.newsince_poll_ms' config option, no longer
needed.
2015-06-02 02:23:06 +09:30
Andrew Bettison
ed1acca0ed
Fix 'rhizomerestful' and 'rhizomejava' newsince-arrival tests
...
Use POST /restfule/rhizome/insert REST request to add bundles instead of
CLI 'rhizome file add', to avoid database locking storm and prepare for
replacing polling with trigger-based wakeup in newsince requests.
2015-06-02 02:23:06 +09:30
Andrew Bettison
858a7fc577
Refactor: define extract_http_header() in testdefs.sh
...
Also http_unquote_string()
2015-06-02 02:23:06 +09:30
Andrew Bettison
45c6b9ecfa
Refactor: set $CR and $HT in testdefs.sh
...
Fix some bugs in test scripts that used $CR without setting it
2015-06-02 02:23:06 +09:30
Andrew Bettison
51f21f3183
Fix http server pause: could stop polling too early
...
A paused http server should only stop polling on output once all
existing buffered output has been sent
2015-06-02 02:23:06 +09:30
Andrew Bettison
008f296026
Generic trigger functions "trigger.h"
2015-06-02 02:23:06 +09:30
Jeremy Lakeman
a3de276999
Allow SIGIO to unblock poll() without dying
2015-06-01 16:46:21 +09:30
Andrew Bettison
d5b96b9931
Fix 'meshms' and 'meshmsjava' newsince-arrival tests
...
Failed because of a database locking storm between the three waiting
newsince REST requests (which polled the database) and the concurrent
'meshms send' CLI commands. Changed to use REST requests instead of CLI
for 'meshms send'.
2015-05-25 16:46:43 +09:30
Jeremy Lakeman
9c5cac6565
Add missing file
2015-05-25 16:44:51 +09:30
Jeremy Lakeman
f98f33ef82
Release mdp socket in config sync
2015-05-25 11:49:48 +09:30
Jeremy Lakeman
51ed6162dd
Add support for running and stopping servald from a JVM thread
...
fdpoll will now run a callback when about to sleep / woke up.
A new Java interface to indicate server started / sleeping / waking up.
An android implementation may allow the CPU to sleep.
If there's a java exception the server will try to shutdown.
Calling servald stop is currently undefined.
2015-05-25 11:46:37 +09:30
Andrew Bettison
106f5d04d9
Fix 'msp' test failures: different netcat versions
...
The "traditional" variant of nc(1) ("netcat") (installed by default on
Debian and Ubuntu) behaves differently from the OpenBSD variant, causing
two 'msp' tests to fail. Added -q options to nc(1) invocations to make
tests pass with either variant.
2015-05-18 17:20:01 +09:30
Andrew Bettison
f4df768041
Improve test framework: report stderr/stdout of execute within fork
...
So that if execute() is used within a forked process and if that process
is terminated prematurely, the log will show what the execute'd command
was doing
2015-05-18 17:17:29 +09:30
Andrew Bettison
c560374da5
Quieten some stderr ephemera in test logs
2015-05-18 17:15:18 +09:30
Jeremy Lakeman
d5e0835f21
Add explicit timeout parameter to mdp trace for slow links
2015-05-11 15:47:35 +09:30
Jeremy Lakeman
b75c926ee3
Relax ack timing
2015-05-11 15:47:35 +09:30
Andrew Bettison
30f4a398ea
Merge RESTful Rhizome journal append into development
...
Support for appending to Rhizome journals using the RESTful API
2015-04-13 16:59:06 +09:30
Andrew Bettison
979854ae0b
Test that Rhizome RESTful append rejects non-journals
2015-04-13 16:24:05 +09:30
Andrew Bettison
5120e50dd7
Suppress Rhizome add de-duplication for journals
2015-04-13 16:24:05 +09:30
Andrew Bettison
0f8141af95
Test RESTful Rhizome journal append with shared payload
...
When an append produces a payload that is already in the store,
the append must succeed, and the returned status codes should
indicate that the payload already existed
2015-04-13 16:24:05 +09:30
Andrew Bettison
53e4e5be5f
Improve 'rhizomerestful' journal append test case
...
Add asserts for the returned status codes
2015-04-13 14:43:52 +09:30
Andrew Bettison
f602674ea5
RESTful Rhizome add/insert always return HTTP 201
...
The 200 status is reserved to indicate a well-formed and
legal request but the bundle was not added because the
store rejected it.
2015-04-13 14:39:51 +09:30
Andrew Bettison
7734e24006
/restful/rhizome/append on existing journal
...
Refactor Rhizome insert/append logic into functions used by both CLI and
RESTful API. Improve RESTful diagnostic messages.
2015-03-30 18:24:12 +10:30
Andrew Bettison
214dad421b
Rename 'rhizomerestful' journal test cases
2015-03-30 18:21:31 +10:30
Andrew Bettison
86c3c7312c
Better support for Rhizome logging status enums
...
Provide functions that return non-NULL even on invalid enum
values
2015-03-30 18:19:26 +10:30
Andrew Bettison
dbe0cf862f
Remove 'debug.manifests' option
...
Use existing 'debug.rhizome_manifest' instead
Improve format of manifest alloc/free log messages
2015-03-30 18:19:26 +10:30
Jeremy Lakeman
fea91f3f82
Use configured reachable timeout for network links, read dummy files even when not ticking
2015-03-30 17:38:40 +10:30
Jeremy Lakeman
943bca3bea
Add transmit timeout config per network destination for low bandwidth links
2015-03-30 14:15:08 +10:30
Jeremy Lakeman
e680ccb0ec
Update test_cli to match recent config changes
2015-03-30 13:50:23 +10:30
Jeremy Lakeman
13bb8a558d
Re-route packets on retransmision if the route has changed
2015-03-30 11:27:37 +10:30
Andrew Bettison
99ff49d502
/restful/rhizome/insert reject out-of-order parameters
...
Must have the 'bundle-secret', 'bundle-author' and 'bundle-id'
parameters before the 'manifest' part
2015-03-28 05:09:38 +10:30
Andrew Bettison
ccf4824605
Add 'manifest-id' parameter to /restful/rhizome/insert
2015-03-28 05:09:38 +10:30
Andrew Bettison
da22816784
Add 'rhizome add file --bundle=BID' option
...
A convenience to re-use an existing manifest, instead of having
to extract the manifest, erase some fields, then pass the result
back into the 'rhizome add file' command
2015-03-28 05:09:38 +10:30
Andrew Bettison
b17848a438
Improve 'rhizomeops' test fixtures
...
Use extract_stdout_manifestid() instead of extract_stdout_keyvalue()
2015-03-28 05:09:37 +10:30
Andrew Bettison
dbea301ce2
Rhizome test defs support 'tail' field
2015-03-28 05:09:37 +10:30
Andrew Bettison
7f564e4dcf
Make strn_to_xxx() functions consistent
...
All strn_to_xxx() functions should take a 'size_t len' parameter
All functions that take a 'const char **endp' parameter should
be named parse_xxx(), and should also have a 'ssize_t len' parameter
which can be -1 to indicate a null-terminated string
2015-03-28 04:53:09 +10:30
Andrew Bettison
5c933cc5b3
Add cli_optional_bid()
2015-03-28 04:39:53 +10:30
Andrew Bettison
59b1c08e52
Rename cli_manifestid() to cli_bid()
2015-03-28 04:39:37 +10:30
Andrew Bettison
adc050a8cb
Add API comment to cli_arg() in "cli.h"
2015-03-28 04:37:38 +10:30
Andrew Bettison
987ec00183
Improve 'rhizomeops' test speed
...
Only create the identities needed, not five in every test
2015-03-25 00:55:37 +10:30
Andrew Bettison
16355df04b
Fix failing 'rhizomejava' test
...
Handle missing payload-status headers in Java test client
2015-03-23 23:26:09 +10:30
Andrew Bettison
705dbeff09
Fix bug in rhizome_write_open_journal()
...
Was treating PAYLOAD_STATUS_NEW as an error
2015-03-23 17:40:08 +10:30
Andrew Bettison
015b4a0b07
Refactor and improve "journal append"
...
Distinguish between fatal and user-supplied-input errors, return
error descriptive text in a strbuf to allow dynamic content, apply
user-supplied field assgnments/deletions _after_ copying existing
manifest fields, use exit status 4 (invalid manifest) when applying
journal append to a non-journal or vice versa
2015-03-23 17:38:46 +10:30
Andrew Bettison
73a4191547
Improve manifest field copy/unset logging
...
Add __whence arguments to all field copy and unset functions
2015-03-23 17:32:57 +10:30
Andrew Bettison
5b7cfb8afb
crypto_sign_compute_public_key() return void not int
...
It can never fail, so no need to check return value for -1
2015-03-23 17:31:06 +10:30
Jeremy Lakeman
b048e8874f
Reschedule alarm when tick_ms config changed
2015-03-23 13:35:22 +10:30
Jeremy Lakeman
f7dbe06836
Rearrange interface config to support unicast settings
2015-03-23 13:35:22 +10:30
Andrew Bettison
655b94eb3c
Fix failing 'rhizomeops' tests
2015-03-19 03:21:27 +10:30