Andrew Bettison
43bd0bd33f
Fix a failing keyring test
...
The in-memory identity creation test was failing intermittently because
the server only creates the in-memory identity on the first tick, and
under load the server sometimes does not tick for a while, leading to a
race with the "servald id self" command.
The test case now waits for the server to emit a tick before running the
"id self" command. This necessitated a new DEBUG() statement and a new
debug flag 'overlaytick'.
Also disabled Rhizome for all the keyring tests, as unnecessary Rhizome
DB creation was slowing down the fixtures.
2016-09-06 15:00:21 +09:30
Jeremy Lakeman
83b6ecb453
Roll an in memory identity when the keyring is empty
2016-08-02 11:01:32 +09:30
Jeremy Lakeman
ade7428687
Don't overrun MDP MTU
2016-05-23 15:38:40 +09:30
Jeremy Lakeman
76be37a04e
Add API for msp from within the daemon
2016-05-09 11:10:50 +09:30
Jeremy Lakeman
d0da910b19
Avoid undefined behaviour as highlighted by clang
2016-01-27 16:27:47 +10:30
Jeremy Lakeman
c3ca8770ea
Squelch logging due to unacked packet timeout
2015-11-30 14:22:45 +10:30
Jeremy Lakeman
79e8a94792
Add route_link.h
2015-09-28 11:58:48 +09:30
Jeremy Lakeman
deb1027024
Ignore duplicate link layer packets, eg bluetooth names
2015-08-03 11:12:39 +09:30
Andrew Bettison
7d9a5faa4e
Move if(config.debug.xxx) tests into DEBUGF()
...
Original DEBUG() and DEBUGF() macros renamed to _DEBUG() and _DEBUGF()
New DEBUG() and DEBUGF() macros, first argument is flagname
New DEBUGF2(foo, bar, ...) macro does if(config.debug.foo||config.debug.bar) test
Replace almost all config.debug.xxx references to IF_DEBUG(xxx)
2015-07-13 16:00:05 +09:30
Jeremy Lakeman
e97f7c4e29
Fix vomp stun tests
...
- Don't trust stun responses about 3rd parties
- Only ack neighbour links via 1hop destinations (not multi-hop routes)
- Don't override network destinations that were manually supplied
2015-06-22 14:50:28 +09:30
Jeremy Lakeman
2e618547c9
Fix ack's of seq numbers 32<x<64 old
2015-06-22 10:43:54 +09: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
13bb8a558d
Re-route packets on retransmision if the route has changed
2015-03-30 11:27:37 +10:30
Jeremy Lakeman
f7dbe06836
Rearrange interface config to support unicast settings
2015-03-23 13:35:22 +10:30
Jeremy Lakeman
4440cf3af0
Allow for different routes per packet destination
2014-09-23 14:54:22 +09:30
Jeremy Lakeman
75d488b339
Add new debug flag to show what payloads are being included in network packets
2014-06-28 20:17:26 +09:30
Jeremy Lakeman
a9545ea004
Display where packets came from in debug messages
2014-06-26 16:47:23 +09:30
Jeremy Lakeman
b94378ae97
Remove unused debug flags
2014-05-26 14:01:34 +09:30
Jeremy Lakeman
5b6ae35a73
Only use the best rtt calculation once per ack
2014-05-12 13:44:50 +09:30
Jeremy Lakeman
89f6d533cd
Don't report error when dropping a packet due to no peers
2014-03-27 13:31:43 +10:30
Jeremy Lakeman
6045eb10e8
Reduce spam of link state packets
2014-01-09 15:06:34 +10:30
Jeremy Lakeman
5f2c6e364a
Refactor interface addresses to use new socket_address struct
2014-01-09 15:01:38 +10:30
Jeremy Lakeman
8d80cf55f2
Fix printf formats
2013-12-16 15:19:15 +10:30
Andrew Bettison
ebc3133f5c
Change overlay_buffer fields from int to size_t
...
Fixes many -Wsign-compare warnings
2013-12-10 17:03:30 +10:30
Andrew Bettison
30b2059608
Fix -Wunused-parameter warnings
...
New UNUSED(param) macro suppresses the warning for a specific parameter
In some cases, removed the unused parameters. In others, used the
parameter in a DEBUGF() or assert() statement to document the intent.
2013-12-09 18:22:18 +10:30
Andrew Bettison
9b64bb87e0
Uniform copyright notices
...
Added some missing copyright/license block comments
2013-12-04 17:15:36 +10:30
Jeremy Lakeman
d45470ce81
Refactor radio link for better encapsulation
2013-11-27 13:13:08 +10:30
Andrew Bettison
97ce07b76c
Improve MDP debug logging
2013-11-26 15:33:54 +10:30
Andrew Bettison
a9ccd38adc
Improve overlay buffer ob_xxx() primitives
...
All ob_append_xxx(b,...) functions return void
ob_makespace() returns 1 if successful, 0 if not
Add ob_overrun(b) predicate to check for overrun after any number of
appends
2013-11-26 15:33:54 +10:30
Andrew Bettison
a95ef79139
Use sid_t everywhere
...
Remove stowSid() at last
Change API of tohex() and strbuf_tohex(), to pass string length instead of
binary byte count. This allows odd numbers of hex digits to be produced.
Remove alloca_tohex_sid(); replace with alloca_tohex_sid_t()
New alloca_tohex_sid_t_trunc() macro
2013-10-09 18:54:21 +10:30
Jeremy Lakeman
3f123e1875
Send the next packet via stream interface ASAP
2013-09-12 16:14:01 +09:30
Jeremy Lakeman
9d7e37cc5e
Pass ownership of final packet buffer to broadcast_ensemble
2013-09-11 11:13:33 +09:30
gardners
33ad9ae0bc
Split debugging info related to ACK's and packet retransmissions
2013-09-10 14:53:12 +09:30
gardners
0cbebedc77
Add tx throttling for packet radios
...
avoids missing data due to lack of flow control.
2013-09-10 11:53:38 +09:30
Jeremy Lakeman
8935db4184
Only ack soon if we have been asked to
2013-08-30 17:38:29 +09:30
Jeremy Lakeman
bf4269e98e
Adjust retransmission delay based on measured RTT
2013-08-29 15:28:20 +09:30
Jeremy Lakeman
9374c4f823
Use int for signed value to fix android portability
2013-08-13 15:16:17 +09:30
Jeremy Lakeman
a516af616e
Improve reliability
...
- don't drop packets that haven't been resolved yet on incoming acks
- statistically drop unicast packets during tests
2013-08-12 16:38:37 +09:30
Jeremy Lakeman
9a50d8a9ef
Route mulit-hop via unicast links
2013-08-09 16:37:54 +09:30
Jeremy Lakeman
55657623aa
Detect unicast links
2013-08-09 12:18:14 +09:30
Jeremy Lakeman
81afc42d8b
Major refactor to packet queuing and delivery in preparation for unicast link tracking.
...
Unicast tests broken
2013-08-09 09:37:08 +09:30
Jeremy Lakeman
d47d1b1684
Split network destination structure from interface structure
2013-08-05 14:35:49 +09:30
Jeremy Lakeman
49e0286b43
Reduce packet header size for point-to-point links
...
- new interface.x.point_to_point config
- disable local echo for point to point dummy interfaces
- add ME and YOU sid abbreviation codes after learning other sid
2013-07-16 15:38:00 +09:30
Jeremy Lakeman
a73814571d
Only send one packet per alarm with single encapsulation
2013-07-15 15:29:14 +09:30
Jeremy Lakeman
3855ff35c4
Clean up string formatting for 64bit compilation
2013-07-15 09:59:24 +09:30
Jeremy Lakeman
ac734b3161
Prevent trying to send packets that are too large
2013-07-11 12:20:12 +09:30
Jeremy Lakeman
88d88e685c
Improve backward compatibility for broadcasts & packet retries
2013-07-08 16:01:58 +09:30
Jeremy Lakeman
becf199804
Make sure we can keep our fetch queues full by syncing more BARs
2013-07-02 13:34:23 +09:30
Jeremy Lakeman
d3a13f8d2c
Fix stupid bug, test was backwards
2013-06-03 16:04:08 +09:30