Commit Graph

39 Commits

Author SHA1 Message Date
gardners
6397fa70d9 overlay interface file descriptors now marked close-on-exec so that
if we get a sigabort or segmentation violation and restart ourselves,
we don't wind up with stuck/lost sockets.
2012-02-23 11:57:46 +10:30
gardners
5cc6079c0f Move from recvfrom() to recvmsg() so that we can get packet TTLs on
reception.  Other changes associated with overlay mesh.
2012-02-05 16:15:19 +10:30
gardners
f862ba0af6 Rhizome file transfer via http getting close
(send side needs to send file body)
2012-01-13 17:21:06 +10:30
gardners
7bcc852279 Fixed bug with non-blocking call to connect() for integrated http client.
Cleaned up some debugging stuff.
2012-01-12 17:02:22 +10:30
gardners
bf9f8559f1 Various debug fiddles and conversion from select() to poll()
(although poll() still doesn't let us monitor ordinary files
which is silly.)
2012-01-12 16:47:24 +10:30
gardners
cb174a71f6 fixed queue management bugs. 2012-01-10 18:31:14 +10:30
gardners
44c0765981 Various debugging code cleanups.
Fixed some address resolution bugs (for when sender address is not
fully known).
There is still a bug in dequeuing packets though it seems.
2012-01-10 17:21:26 +10:30
gardners
800f8d41eb Revamped debug/verbosity control to use flags for functions of interest
instead of general verbosity ramp.
2012-01-10 15:56:40 +10:30
gardners
3b6ce80f7e Fixed cpu eating bug due to time calculation based on wrong epoch. 2012-01-10 14:11:54 +10:30
gardners
9156a68c7f Added 2nd implementation of serval packet decoder for aiding debugging
of packet formation and decoding.
Fixed time calculation bug (duplicate time functions based off different
epochs).
Various debugging fiddles and tweaks.
2012-01-10 14:05:26 +10:30
gardners
23ee957169 Various minor tweaks to debugging and related things.
Fixed major memory handling error in neighbour structure allocation.
2012-01-09 16:28:44 +10:30
gardners
ba645687f6 Progress towards overlay mode advertising rhizome bundles.
(but some evil memory corruption error if overlay mode and
rhizome are both enabled.)
2012-01-09 04:57:13 +10:30
gardners
0868e30caa Fixed issues with recognition of valid packet formats. 2012-01-09 04:30:23 +10:30
gardners
f0d5cd172e Fixed responding to legacy requests from overlay mode. 2012-01-09 04:19:52 +10:30
gardners
16fb3a3f61 Added missing GPL license statements. 2011-12-21 20:25:05 +10:30
gardners
8aa57edee3 Added code to add node advertisements to interface tick packets.
Looks like it works.  No code to decode it yet.
2011-09-13 04:52:52 +09:30
gardners
26f0b36fa1 Added framework for advertising node reachability. 2011-09-13 03:33:45 +09:30
gardners
a91c5d29c3 added code to display overlay mesh route table (incomplete)
fixed bug with recording routes from packets with unresolvable addresses.
2011-09-12 23:49:55 +09:30
gardners
b6ce25ab24 Believe I have found and stemmed the memory corruption bug, although
the trigger (poor packet header decoding/address extraction) remains.
2011-09-07 11:26:26 +09:30
gardners
7947485705 Android JNI/NDK build bug fixes suggested by Kris. 2011-09-05 15:01:14 +09:30
gardners
67e822f1ff Fixed timing out of queued frames. 2011-09-05 13:19:00 +09:30
gardners
37c0955494 More little fixes, especially initialising of overlay_buffers in
overlay_payload structures.
2011-09-05 12:34:54 +09:30
gardners
cbb1939241 Fixed various compiler warnings.
Change overlay_frame payload to use an overlay_buffer structure for
consistency and ease of payload construction.
Added some sanity checking to peer score calculation.
Getting closer to being able to TX acks to selfannouncements.
Other little things to accomplish these.
2011-09-05 12:19:53 +09:30
gardners
1d6d744067 More work towards overlay mesh.
Added single byte append to overlay_buffer type.
Added source interface to self-announce packets.
Probably other stuff, too.
2011-09-04 06:36:39 +09:30
gardners
32a5f03073 Various single-instance variable processing fixes for DNA.
Further work on overlay mesh routing.
2011-08-29 16:20:27 +09:30
gardners
857bf9c11e All interfaces now use a common synchronised tick-clock so that we can
more easily keep track of node reachability.
2011-08-20 19:06:15 +09:30
gardners
b075b51c43 Merged overlay_payload and overlay_frame structures to just overlay_frame
which is now used for both encapsulation and decapsulation.
Improved payload length encoding scheme to be shorter for most payload
lengths.
selfannouncement frames now get directed to stub functions for
implementation.
2011-08-17 10:52:17 +09:30
gardners
cf778e1efd Various further work on overlay mesh.
Now resolves some kinds of abbreviated address, and queues up
the need to remind peers of abbreviation schemes it does not support.
2011-08-15 12:51:00 +02:00
gardners
9d4666f9d4 Work towards address abbreviation framework. 2011-08-14 17:58:27 +02:00
gardners
0cf6e545c4 Fixed select() problems with dummy interfaces and EOF reporting.
Dummy interfaces now work.
Supressed lots of debug messages.
2011-08-14 10:36:39 +02:00
gardners
ec1fe22e93 Added support for using a dummy interface to allow testing of multiple mesh
nodes on the same machine.  Also handly for linking to unusual interfaces
such as the UHF radio dongles we are planning.
2011-08-13 13:17:49 +02:00
gardners
c8229c8517 More work towards handling overlay or DNA packets.
handling of sender address and sockets to use is still a big fat mess
and likely to be broken.
2011-08-12 21:34:38 +02:00
gardners
7e30d62b79 Cleaned up various compiler warnings. Added packet parser framework for
handling overlay frames.
2011-08-12 21:05:11 +02:00
gardners
9108fd5c59 Broadcast on each interface now works, at least for OSX. 2011-08-12 09:58:25 +02:00
gardners
b8e8a78828 Revamped interface management code for overlay mode.
Now just specify list of interfaces and their characteristics.
Addresses get configured automatically.
2011-08-12 09:47:29 +02:00
gardners
5f1f510be5 overlay mesh now sends basic self-announcements. 2011-08-12 08:34:56 +02:00
gardners
2ff8541049 Woot! overlay mode now emits regular tick frames on interfaces it knows about.
Still doesn't know about broadcast properly or a pile of other things, oh, and
the frames are completely empty, but none the less, we are now sending frames.
2011-08-09 12:45:24 +08:00
gardners
92768cdcd0 core of overlay mode getting closer.
Compiles. With -N start to try to send regular packets.
2011-08-08 22:41:46 +08:00
gardners
6e172c76c9 Fixed broadcast address discovery to work on Mac.
Fixed Linux assumptions.
Added parsing of overlay mesh interface specification from command line.
Separated overlay mesh code out into several files.
Overlay mesh is still far from working, but the infrastructure is coming together.
2011-08-08 16:11:05 +09:30