Commit Graph

2104 Commits

Author SHA1 Message Date
Jeremy Lakeman
5914bc92ce Use a directory service as a default route 2012-09-19 09:50:29 +09:30
Jeremy Lakeman
23f1110120 Add optional ping counter 2012-09-19 09:48:12 +09:30
Jeremy Lakeman
6d31aa52e7 Use the correct public key when a new keyring is created 2012-09-18 13:43:00 +09:30
Jeremy Lakeman
7c73ca7a78 Finish test and implementation of directory service 2012-09-18 12:30:15 +09:30
Jeremy Lakeman
e854409e0b Start dna helper immediately (it's convenient for starting another service) 2012-09-18 12:24:33 +09:30
Jeremy Lakeman
09dd9332f8 Implement simple tree structure for directory information 2012-09-17 15:42:30 +09:30
Jeremy Lakeman
ac4567d48a Merge remote-tracking branch 'origin/master' into sid_handling 2012-09-17 15:38:05 +09:30
Andrew Bettison
9d8707a0ad Fix broken 'dnaprotocol' tests
Explicitly create identities in 'dnaprotocol' fixtures because
start_servald_instances() no longer does it.

The create_single_identity() function was not setting NAMEA, NAMEB, etc.  when
they contained a space, because of shell misquoting.
2012-09-17 15:30:05 +09:30
gardners
f0472abf43 added new rhizome direct sources to android build process. 2012-09-14 11:26:40 +02:00
Jeremy Lakeman
f845a18312 Send DNA lookup requests to configured directory service 2012-09-14 17:04:36 +09:30
Jeremy Lakeman
456bf3fdca Tidy up source port checking 2012-09-14 17:04:35 +09:30
Andrew Bettison
7452c215e2 Fix bug in 'keyring list' command
Revealed by recent rhizomeprotocol test improvements.  Was always printing
empty DID and name fields.
2012-09-14 16:23:32 +09:30
Andrew Bettison
87133cb2de Improve testdefs: foreach_instance() function
The 'rhizomeprotocol' tests now use create_single_identity() in fixtures (which
tests the 'keyring list' command).

Use foreach_instance() function in various places, and replace functions that
used to loop over instances with functions that work on the current instance.
2012-09-14 16:09:28 +09:30
Andrew Bettison
e994626429 Refactor test definitions
Move create_rhizome_identities() from testdefs_rhizome.sh to
create_identities() in testdefs.sh

Rename create_identity() in testdefs.sh to create_single_identity(), uses
create_identities() to do its work.
2012-09-14 15:04:05 +09:30
Jeremy Lakeman
337d428f44 Reconstruct encryption / signature flags 2012-09-14 14:41:17 +09:30
gardners
692eb2cdc9 added BAR list comparison code for Rhizome direct.
Now returns series of "I have [newer]"'s and "Please send me"'s,
consisting of a 1 byte ID (0x01 or 0x02 respectively), followed
by the 64bit BID prefix from the BAR.  As with all of Rhizome
Direct at present, the geo bounding box is ignored for now.
2012-09-14 12:10:14 +08:00
Jeremy Lakeman
8c49e0e486 Fix logic for periodically sending full SID's 2012-09-14 12:25:40 +09:30
Jeremy Lakeman
ac8d9b93e6 Add stub directory service 2012-09-14 11:50:45 +09:30
Jeremy Lakeman
7b8885fd96 Rework mdp port bindings to use subscriber struct 2012-09-14 11:49:01 +09:30
Jeremy Lakeman
6483d9e0ae Split client mdp functions so they can be built separately 2012-09-14 11:47:48 +09:30
Jeremy Lakeman
a73b9ee7f7 Update unicast addresses if they change 2012-09-14 11:42:58 +09:30
Andrew Bettison
45e3d1d078 Add more debug to Rhizome fetch code
To help investigate issue #16, 'rhizomeprotocol' test case 1 failing on
Solaris.
2012-09-13 14:43:47 +09:30
Andrew Bettison
1f4688db99 #16 Fix 'rhizomeops' tests that fail on Solaris 2012-09-13 14:08:52 +09:30
Andrew Bettison
3f4ee701ec Artefacts created by libtoolize -c -i
Replaces symbolic links created from previous libtoolize -i (without -c) which
of course do not work across all platforms.
2012-09-12 15:21:50 +09:30
Jeremy Lakeman
9f35395b2c Prevent segfault if address lookup fails 2012-09-11 15:41:15 +09:30
Jeremy Lakeman
58fae14ef2 Bind to interface address so unicast packets can be received & always bind to INADDR_ANY 2012-09-11 15:20:44 +09:30
gardners
6553050566 rhizome direct enquiry request now gets back enquiry response,
and realises that it needs to process it.  It does not yet
process it. #9
2012-09-11 14:34:58 +09:30
gardners
9a5dbbd14f rhizome direct http transport now asks for response to enquiry when
enquiry received by server.  Generating responses to enquiries not
yet implemented. #9
2012-09-11 13:09:40 +09:30
gardners
bb0be86db3 fixed content-disposition problems. Request now gets accepted.
Need to write code to handle it now, and send cursor fill back
the otherway. #9
2012-09-11 09:34:41 +09:30
gardners
0e04dde28c changed rhizome direct POST URI paths to /rhizome/import and
/rhizome/enquiry.  Also fixed bug with content-length header
line when forming /rhizome/enquiry request.  post multipart
data is still malformed in some way. #9
2012-09-11 09:28:11 +09:30
gardners
e8009ac94a rhizome direct http transport sends request, and receives http
reply (including if error).  Doesn't capture the reply body yet. #9
2012-09-11 09:04:38 +09:30
gardners
e4896cd028 now tries to open connection to rhizome direct server using
http transport.  #9
2012-09-11 06:56:04 +09:30
gardners
4f5f2c2444 work towards http transport working for rhizome direct. #9 2012-09-10 20:22:14 +09:30
Jeremy Lakeman
fbe9980199 Add explicit flag for unicast peers 2012-09-10 10:55:12 +09:30
Jeremy Lakeman
f2bae4361e Improve logging and failure handling 2012-09-10 10:31:01 +09:30
gardners
872b88f744 fixed hanging bug. still gets bundles showing up in query
results even though size bin is wrong. That bug doesn't stop
us for now, but should be sorted out.
rhizome_direct_http_dispatch() can now be implemented
(synchronously for now will be fine).
2012-09-10 09:22:44 +09:30
gardners
dd01f7939d further work on rhizome direct dispatching etc.
For some reason finds the same manifest several times (size bin
filtering seems to not be working right).
Also sync doesn't realise it has finished, and so doesn't return
when done.
2012-09-10 09:16:27 +09:30
gardners
d796a482b7 refactored rhizome direct code to separate http transport specific
code from general rhizome direct BAR buffer gathering and processing.
2012-09-09 13:50:09 +09:30
gardners
1d4c865a35 fixed bugs in cursor range pickling. #9 2012-09-09 09:15:52 +09:30
gardners
f0c4bfd7bf fixed cursor range reporting bugs. #9 2012-09-09 09:06:38 +09:30
gardners
27fc7a44d0 rhizome direct cursor operations now include pickled cursor range
in output buffer (but doesn't yet report the range correctly). #9
2012-09-09 08:58:47 +09:30
gardners
0207d8e541 added cursor limit pickling, restoration functions. cursor
functions now try to honour these. Not yet tested. #9
2012-09-09 08:30:38 +09:30
gardners
53228f078e rhizome direct now has a cursor function to iterate through all
bundles in the rhizome database in an appropriate priority order
(currently small before big). #9
2012-09-08 20:26:18 +09:30
gardners
3e4b20f5df rhizome_direct_get_bars() now allows selections to be based on
size of associated data in a bundle, so that we can synchronise
small things first.  Also preliminary work on making a general
cursor-type wrapper function for get_bars() so that it is easy
for any rhizome direct transport driver to iterate over the
known bundles in a rhizome datastore. #9
2012-09-08 20:00:14 +09:30
gardners
b13c23de6a rhizome_direct_get_bars() now sets bid_high correctly. #9 2012-09-08 09:35:58 +09:30
gardners
89b09563a3 Wrote function to get a range of BARs from the Rhizome database
for use in Rhizome Direct synchronisation requests. #9
2012-09-08 07:55:57 +09:30
gardners
446adaa868 Added note regarding new architecture to existing comment. #1 2012-09-08 07:55:32 +09:30
gardners
6d725535f9 starting work on the actual synchronisation code for rhizome direct. 2012-09-07 22:53:16 +09:30
Daniel O'Connor
f8d5b066c0 Create #! line correctly (no need to escape !).
Many more tests pass now.
2012-09-07 15:42:20 +09:30
Jeremy Lakeman
3cfcfb3728 Parse mdp payloads from the middle of a frame 2012-09-07 13:45:57 +09:30