Commit Graph

772 Commits

Author SHA1 Message Date
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
gardners
c448eab720 fixed audio handling for the most part.
aliasing noise and/or buffer underrun noise is present.
2012-05-11 14:11:58 +09:30
gardners
2ea218b567 fast-audio getting closer to working.
Figured out how to make buffer time very short
(set record rate high works, setting buffer size does not).
Of course this means we need to downsample and upsample.
2012-05-11 13:28:24 +09:30
gardners
81c2a926a3 working on getting short-circuit audio working. 2012-05-11 13:28:24 +09:30
Andrew Bettison
e746557a08 Fix bug in overlay_gettime_ms()
The sequence start time was only getting set in overlay_interface_init(), which
was not always called, or was called after overlay_gettime_ms() had already
been used.

Added FATALF(), FATAL() and FATAL_perror() macros.

Removed a bunch of debug statements no longer needed in monitor.c and server.c.
2012-05-11 10:38:46 +09:30
gardners
14f9d8001b and even better fix again, since this one builds on both linux and
android.
2012-05-11 08:18:58 +09:30
gardners
c70646039d better fix for redefined symbols 2012-05-11 08:17:37 +09:30
gardners
51966737a6 fix build problem on unbuntu (ifreq gets redefined) 2012-05-11 08:16:15 +09:30
gardners
7b82ccbd7b work on bypass-audio.
CALLSTATUS monitor message has gained a field, thus changing
API for java side.
2012-05-11 08:14:00 +09:30