Michael Bridgen
540f84af3d
Merge branch 'weave-362' of https://github.com/inercia/weave into pr392
2015-02-24 16:43:56 +00:00
rade
b53a2c772c
Merge pull request #414 from bboreham/411_closed_connections
...
Add 'finished' chan to stop callers blocking on closed connection
2015-02-24 11:23:36 +00:00
Bryan Boreham
78d2a3e466
Add 'finished' chan to stop callers blocking on closed connection
2015-02-24 10:48:52 +00:00
Alvaro Saurin
c575023681
zettio/weave#362 - command line arg for using a specific fallback DNS server
2015-02-23 13:17:54 +01:00
Alvaro Saurin
419138ec6a
zettio/weave#362 - use a WaitGroup for the TCP/UDP goroutines: otherwise, WeaveDNS server just quits
2015-02-23 13:17:54 +01:00
Alvaro Saurin
ea1c3e8219
zettio/weave#362 - fix: = instead of :=
2015-02-23 13:17:54 +01:00
Alvaro Saurin
f8b3c86498
zettio/weave#362 - properly test the TCP-retry mechanism by creating fallback servers that return truncated responses with UDP but not with TCP
2015-02-23 13:17:54 +01:00
Alvaro Saurin
3de924fa2f
zettio/weave#362 - moved Check*() to common
2015-02-23 13:17:54 +01:00
Alvaro Saurin
5dd475b2e5
zettio/weave#362 - fix DNSServer initialization
...
removed a couple of goroutines spawns...
2015-02-23 13:17:54 +01:00
Alvaro Saurin
ef72d65aa4
zettio/weave#362 - use for fallback queries the same protocol clients have used for querying us.
2015-02-23 13:17:54 +01:00
Alvaro Saurin
9c7ffd9b81
zettio/weave#362 - improve the unit tests for the TCP server by checking if we get all the responses with TCP when a previous UDP query resulted in a truncated response.
2015-02-23 13:17:54 +01:00
Alvaro Saurin
bf88ed8d96
zettio/weave#362 - unit test for TCP requests to our DNS server
2015-02-23 13:17:54 +01:00
Alvaro Saurin
c81769cc9a
zettio/weave#362 - implement a graceful shutdown
2015-02-23 13:17:54 +01:00
Alvaro Saurin
c1f9c8bc10
zettio/weave#362 - new constructor for creating a DNS server with a given config
...
fix unit tests by using the new constructor
2015-02-23 13:17:54 +01:00
Alvaro Saurin
3be5600383
zettio/weave#362 - reorganize the DNS server code, so it looks like the mDNS server, with a proper class with Start() and so...
...
Listen on TCP on port 53 by default
2015-02-23 13:17:54 +01:00
rade
e485e68946
Merge pull request #409 from achanda/patch-2
...
Ignore vagrant directory
2015-02-22 08:55:41 +00:00
Abhishek Chanda
d930f5c54a
Ignore vagrant directory
2015-02-21 23:21:43 -08:00
Bryan Boreham
2817638ef9
Merge pull request #396 from achanda/patch-2
...
LGTM.
2015-02-17 12:39:16 +00:00
Abhishek Chanda
ed2d0d56a5
Enable code coverage reports
...
This will make the test print code coverage report once done in each directory
2015-02-14 16:30:32 -08:00
Michael Bridgen
a6f1435444
Only fetch the assert script if it's not present
2015-02-11 14:36:00 -08:00
Matthias Radestock
9f9949b80c
update copyright notices (year & entity)
2015-02-06 23:14:38 +00:00
Matthias Radestock
94c7b60983
Merge remote-tracking branch 'upstream/master'
2015-02-04 16:51:15 +00:00
Matthias Radestock
e2818f883c
refactor: move and simplify handshake logic
2015-02-04 16:49:57 +00:00
Michael Bridgen
59cd5a13da
Merge branch 'pr361'
2015-02-04 16:35:29 +00:00
Michael Bridgen
1f9e321097
Merge branch '360_dns_buffer' of https://github.com/bboreham/weave into pr361
2015-02-04 16:35:14 +00:00
Matthias Radestock
f01d9ce092
explain why create-bridge is undocumented
2015-02-04 16:00:35 +00:00
Bryan Boreham
04a7aa1405
Use buffer size 4096 on advice from a DNS expert
2015-02-04 14:58:21 +00:00
Matthias Radestock
2f5b586e68
typo
2015-02-03 15:14:14 +00:00
Matthias Radestock
9c3d509b10
cosmetics
...
suggested by linter
2015-02-03 14:46:35 +00:00
Matthias Radestock
b42766fb81
'docker tag' with '-f' so we can easily re-do failed releases
2015-02-03 14:20:04 +00:00
Matthias Radestock
af2206e156
add 0.9.0 release change log
v0.9.0
2015-02-03 13:19:43 +00:00
Bryan Boreham
e325c35c10
Merge pull request #381 from rade/380_prevent_premature_peer_topology_gc
...
LGTM. Fixes #380
2015-02-03 10:39:08 +00:00
Bryan Boreham
458ef12da6
Use a larger buffer than the default, so that more queries will succeed
2015-02-02 13:26:44 +00:00
Bryan Boreham
e5a08a505d
Change DNS fallback test to use a locally-run server to generate long responses reliably
2015-02-02 13:24:37 +00:00
Bryan Boreham
9ae3f4c692
Only read /etc/resolv.conf once
2015-02-02 13:16:05 +00:00
Matthias Radestock
b722f9d9dd
Merge branch 'master' into 380_prevent_premature_peer_topology_gc
2015-02-01 19:26:00 +00:00
Matthias Radestock
08c34e4bb9
refactor: rename a method
2015-02-01 19:25:31 +00:00
Matthias Radestock
ed65023021
only include established connections in route calculation
...
except for reachability analysis in gc
2015-02-01 19:13:51 +00:00
Matthias Radestock
7834057b2e
cosmetic: remove duplicate comment
2015-02-01 17:52:07 +00:00
Matthias Radestock
f25696c245
prevent premature gc of peers from topology
...
Topology gossip can be received on a connection before that connection
has been marked as 'established'. If we do not include unestablished
connections in topology gossip, then parts of the topology can be
removed by gc, since they are deemed unreachable, which can cause
subsequent incremental topology gossips to be rejected due to them
containing references to peers that have been removed by the gc.
Including unestablished connections in topology gossip requires:
- removing the check for 'established' connections in the encoding of
peers for topology gossip,
- adding the 'established' flag to the internal representation of
remote connections,
- adding the 'established' flag to to encoding of connections in
topology gossip,
- treating the *addition* of a connection as an update to the local
peer.
The latter entails
- bumping the peer version on connection addition (as well as on
marking 'established' as previously),
- bumping the peer version *unconditionally* on connection deletion
(rather than only when the connection was 'established', as
previously),
- moving the initial sending of complete topology on the connection,
and the broadcasting of a topology update containing the two peers
at the ends of the connection, from the connection 'established'
logic to the connection addition logic,
- broadcasting just an topology update for the local peer when a
connection gets marked as 'established',
- broadcasting a topology update for the local peer *unconditionally*
when a connection is removed (rather than only doing this when the
connection was 'established', as previously).
2015-02-01 16:52:39 +00:00
Matthias Radestock
b43e5debb1
gofmt
2015-02-01 16:50:43 +00:00
Matthias Radestock
2d135f3da0
prevent premature peer gc
...
Caused by a race between adding the connection to our map and
receiving a topology gossip on it.
We remove the race by making AddConnection synchronous and invoking it
prior to entering the tcp receive loop.
Fixes #367 .
2015-01-31 22:29:07 +00:00
Matthias Radestock
5892cae5d0
set the hostname on the test VMs
...
which makes it easier to see where you are when ssh'ed in
2015-01-31 17:12:20 +00:00
Matthias Radestock
5967d5de20
make it easier to set up more than 2 VMs for testing
2015-01-31 16:55:45 +00:00
Matthias Radestock
8f18df7a43
cosmetic: improve comment
2015-01-31 11:38:29 +00:00
Matthias Radestock
2dee5abccc
cosmetic
2015-01-31 11:35:46 +00:00
Matthias Radestock
65d0c8b4ce
log unknown peer received in topology gossip
2015-01-31 11:31:45 +00:00
Matthias Radestock
de45a85162
tweak error handling in topology update application
...
- simplify
- abort early
2015-01-31 10:35:36 +00:00
rade
99770c564b
Merge pull request #377 from sttts/expose-hide-without-ethtool
...
Also avoid calling ethtool in expose and hide
2015-01-29 23:26:30 +00:00
Matthias Radestock
bb134154a8
banish non-posix sed regexps
...
Fixes #371 .
2015-01-29 21:39:11 +00:00