Commit Graph

780 Commits

Author SHA1 Message Date
Andrew Bettison
96916c053c Fix some vararg bugs in logMessage() et al 2012-05-19 14:04:30 +09:30
Andrew Bettison
2f4d1eb720 "strbuf.h" API for assembling fixed-sized string buffers 2012-05-19 14:02:03 +09:30
Andrew Bettison
0f65028a0b Clean up keyring_open_with_pins() error reporting 2012-05-19 10:38:29 +09:30
Andrew Bettison
5ae14ad7bc Fix bugs in rhizome_opendb()
Was calling exit() instead of returning -1 on error, which was causing
the serval app to exit in the JNI "start" command if rhizome could not
create its db file.

Use DEBUGF() instead of fprintf(stderr) in many places.

confValueGet() was not stripping \r\n off end of returned string.

rhizome_set_datastore_path() was keeping the pointer it was given (from
conValueGet()'s rotor) instead of making a strdup() copy.
2012-05-18 18:55:52 +09:30
gardners
80e013739d improved error message reporting. 2012-05-18 17:08:45 +09:30
gardners
29cc9749b2 build non-dlsym-magiced servaldsimple binary for gdb on phones. 2012-05-18 17:08:19 +09:30
gardners
e38275067a more fixes and cleanups for dna lookup. 2012-05-18 13:44:15 +09:30
gardners
c9a58937ca other bug fixes and cleanups for "dna lookup" 2012-05-18 12:55:56 +09:30
gardners
4ddb7a5572 fixed bug in overlay_gettime_ms() (start time was 32bits not 64bits,
so strange behaviour resulted, breaking dna number lookup).
2012-05-18 12:55:15 +09:30
gardners
e870c35422 Added very crude multi-hop route determination. 2012-05-17 17:08:59 +09:30
Andrew Bettison
9b18a2fee4 Fix compile error: change #ifdef 0 to #if 0 2012-05-17 17:01:02 +09:30
Andrew Bettison
5e11067c72 Add 'service' column to "rhizome list" output 2012-05-17 17:00:14 +09:30
Andrew Bettison
9a51c76dfb Insist on 'service' field in all manifests
The "rhizome file add" command assumes service=file if no manifest supplied
or the manifest lacks a service field.

The "rhizome extract manifest" command includes the service in its CLI output.
2012-05-17 17:00:14 +09:30
gardners
1171e60704 added backtrace function, which sadly doesn't work on android. 2012-05-17 16:36:23 +09:30
gardners
844a480ae7 more trying to reuse socket addresses when stuck. 2012-05-17 13:14:16 +09:30
gardners
fa8825a3ec try to reuse interface binding socket addresses instead of failing. 2012-05-17 13:14:16 +09:30
Andrew Bettison
2434d51bee Remove "rhizome add authored file" command
Now "rhizome add file" takes SID and PIN args, and if SID is empty, an
unauthored bundle (no BK field) is created

Updated dna_rhizome test cases
2012-05-17 12:01:25 +09:30
gardners
e64469d3e9 removed some debugging. 2012-05-17 11:51:26 +09:30
gardners
231058a218 fixed rhizome transfer bugs. 2012-05-17 11:39:12 +09:30
gardners
76663d1b9e fixed sqlite handle leaks when advertising rhizome manifests. 2012-05-17 11:14:10 +09:30
gardners
a811dbcab8 fixed some (but not all) rhizome database handle leak bugs in
rhizome advertisement code.
2012-05-17 11:14:10 +09:30
Andrew Bettison
1f44fd315e Improve rhizome_find_duplicate()
Detected inconsistency does not cause failure with error message, instead a
warning is issued and the inconsistent row is skipped.
2012-05-16 16:29:41 +09:30
Andrew Bettison
ebbae38cdd Update dna_rhizome test script
Manifests no longer carry 'first_byte' and 'last_byte' fields
2012-05-16 16:05:29 +09:30
Andrew Bettison
6cdd5dc054 Fix and improve rhizome_find_duplicate()
Now matches version number if supplied
Performs more consistency checks, and reports failures as errors
2012-05-16 15:58:06 +09:30
gardners
09e0cc5030 removed deprecated first_byte and last_byte manifest fields. 2012-05-16 15:56:39 +09:30
gardners
74e0d69cb9 fixed various bugs with rhizome manifest extraction. 2012-05-16 15:55:03 +09:30
gardners
1a3d13d59e some debugging stuff. 2012-05-16 15:41:41 +09:30
gardners
bc8a028b28 increased bytes_to_hex() rotor count to allow more uses in
a single printf().
2012-05-16 15:41:41 +09:30
gardners
8980b13bbf fixed BK calculation bug. now calculates BK correctly. 2012-05-16 15:41:41 +09:30
gardners
d51545b87a fixed some bugs with BK handling. keyring gets loaded when
adding authored bundle so that we can lookup RS.
BK variable name case harmonised.
2012-05-16 15:41:41 +09:30
Andrew Bettison
33f7ea7103 Add three optional args to "rhizome list" command
service, sender_sid, recipient_sid - not yet implemented
2012-05-16 13:47:58 +09:30
gardners
d2949f1b05 Made VoMP audio packet stuffing limit configurable and larger
so that we can test preemptive audio retransmission before we
implement any codecs.
2012-05-16 11:52:22 +09:30
Andrew Bettison
2c1b42413a Make NaCl ge25519() kludge compile on Debian Linux 2012-05-16 11:22:10 +09:30
gardners
39be8a0b75 added new command line option for adding rhizome bundle with authorship
so that it includes a BK.
All good, except the BK isn't being added. Yet to find out why.
2012-05-15 22:15:13 +09:30
gardners
0eafc34970 BK encoding and decoding complete, but untested. 2012-05-15 20:04:41 +09:30
gardners
8020401cf0 removed creation of keypairs table that is being deprecated in favour
of BK fields in manifest.
2012-05-15 17:26:34 +09:30
gardners
525d3c4154 substantial work towards implementing BK field in rhizome manifests. 2012-05-15 17:24:25 +09:30
gardners
17370b3464 added comment for starting work on handling BK fields in manifests. 2012-05-15 15:44:49 +09:30
Andrew Bettison
f90b21ec78 Implement rhizome config options
rhizome.datastore_path - if not set, reverts to serval instance path
rhizome.enable - if not set, defaults to true
2012-05-15 12:56:10 +09:30
Andrew Bettison
7087afc404 Refactor main() into main.c
Now dna.c only contains code for the old command line
2012-05-15 11:09:21 +09:30
Andrew Bettison
cecb09f46a Add test for debug.all config option 2012-05-15 09:49:40 +09:30
Andrew Bettison
d11258cefc Overhaul debug flags
Config debug flags are now represented as individual items, eg:
   servald config set debug.verbose yes
   servald config set debug.rhizome yes
instead of aggregated, eg:
   servald config set debug verbose,rhizome  <-- no longer works

Added a debug flag "debug.all" that can be set and cleared, over which
individual flag sets/clears take priority.

Slimmed down dna.c by moving some globals and functions to the files where they
are used.

Default command line (help message) is now the new style, not the deprecated
style.
2012-05-14 18:37:32 +09:30
Andrew Bettison
b02e9b9ac4 Overhaul rhizome datastore path code
Create datastore directory and all parent dirs if it does not exist
More robust error checking and buffer overflow protection
New mkdirs() and mkdirsn() functions
2012-05-14 18:37:32 +09:30
gardners
67e6c7ae2a fixed 10 pounds of potatoes in 5 pound sack (FUBAR) bug. 2012-05-14 16:24:58 +09:30
gardners
ed488a12c2 more debugging for Jeremy 2012-05-14 16:16:06 +09:30
gardners
d74afa9ac2 added some debugging to help solve the non-responsive issue that
Jeremy found.
2012-05-14 15:52:15 +09:30
gardners
f0b72955d1 preparation for nacks for retransmission. 2012-05-14 15:44:36 +09:30
gardners
ae44826d7e improved debug message when rejecting an unsigned or incorrectly
signed manifest.
2012-05-12 07:36:39 +09:30
gardners
0b5a9665b2 first cut code for sending monitor socket announcements when
rhizome bundles are received.
2012-05-12 07:24:52 +09:30
gardners
cd65e47be1 fixed segfault bug in rhizome fetch.
(serval-node/import directory needs to exist to fetch files,
 maybe the code should just make the directory if not present)
2012-05-11 19:07:27 +09:30