Adam Ierymenko
|
c61e9c0ef9
|
Prevent "software laser" in legacy multicast support. Already hotpatched in supernodes.
|
2014-11-13 14:21:06 -05:00 |
|
Adam Ierymenko
|
1bd5a1ebcd
|
Make selftest build and run on FreeBSD 10 with gmake
|
2014-11-04 11:20:38 -08:00 |
|
Adam Ierymenko
|
0e84eb3852
|
Back off default multicast limit just a little.
|
2014-10-29 18:25:24 -07:00 |
|
Adam Ierymenko
|
5484cf4309
|
More cleanup, and fix a bug in Multicaster::gather()
|
2014-10-29 16:24:19 -07:00 |
|
Adam Ierymenko
|
22d8aa4dc9
|
Moderate efficiency improvement on multicast gather result parsing, and go ahead and keep track of total known peers.
|
2014-10-29 15:26:32 -07:00 |
|
Adam Ierymenko
|
95f421024a
|
Code cleanup, and fix some unsafe pointer handling in Network.
|
2014-10-29 13:57:37 -07:00 |
|
Adam Ierymenko
|
5bb854e504
|
Fix a nasty bug introduced in packet fragmentation a while back during refactoring, and a few other things related to multicast.
|
2014-10-28 17:25:34 -07:00 |
|
Adam Ierymenko
|
4dec598fb8
|
Make multicast gather slightly more aggressive, and add total to list command in testnet.
|
2014-10-28 15:33:10 -07:00 |
|
Adam Ierymenko
|
3d85a615fb
|
NULL dereference on still-initializing node bug fix in status query commands, and doc updates.
|
2014-10-28 14:17:39 -07:00 |
|
Adam Ierymenko
|
934a575a74
|
Testnet seems to work a bit better now...
|
2014-10-27 18:23:10 -07:00 |
|
Adam Ierymenko
|
fe7b429866
|
...
|
2014-10-27 17:32:37 -07:00 |
|
Adam Ierymenko
|
3857116724
|
More testnet work.
|
2014-10-24 16:35:06 -07:00 |
|
Adam Ierymenko
|
4fbb098daa
|
Testnet work... getting there!
|
2014-10-23 16:46:09 -07:00 |
|
Adam Ierymenko
|
0a195e7bc0
|
Some work on simulated net...
|
2014-10-22 09:52:29 -07:00 |
|
Adam Ierymenko
|
ae228ade8c
|
Starting on simulated socket manager.
|
2014-10-21 17:00:25 -07:00 |
|
Adam Ierymenko
|
2436e22f46
|
More work on abstracting socket manager.
|
2014-10-21 15:18:50 -07:00 |
|
Adam Ierymenko
|
128a131070
|
About halfway there in refactoring to support pluggable SocketManager.
|
2014-10-21 14:26:10 -07:00 |
|
Adam Ierymenko
|
6bc9a938cf
|
Move socket manager implementation into osnet/
|
2014-10-21 11:25:31 -07:00 |
|
Adam Ierymenko
|
0e47f13f14
|
Simplify locking semantics some more to address a deadlock.
|
2014-10-21 10:42:04 -07:00 |
|
Adam Ierymenko
|
7c0f5e97e1
|
Don't need to check peer version for every item in txQueue since there is only one peer.
|
2014-10-19 15:20:19 -07:00 |
|
Adam Ierymenko
|
8730d30575
|
Now for some clang compile fixes...
|
2014-10-19 13:07:50 -07:00 |
|
Adam Ierymenko
|
74f36f5dc0
|
Windows build fixes.
|
2014-10-19 12:56:39 -07:00 |
|
Adam Ierymenko
|
a8bd8fff93
|
Make several changes to eliminate potential deadlock or recursive lock conditions, and add back rescan of multicast groups on network startup.
|
2014-10-14 16:38:27 -07:00 |
|
Adam Ierymenko
|
a94b0e6a43
|
Get rid of rescanMulticastGroups() in Network thread since this can deadlock... the fact that this can happen is probably bad design.
|
2014-10-14 15:58:03 -07:00 |
|
Adam Ierymenko
|
7a37326cc0
|
Fix sleeper bug that probably did nothing in setSupernodes().
|
2014-10-14 14:59:17 -07:00 |
|
Adam Ierymenko
|
42d644a57e
|
More fixes to legacy support, and to a potential issue on quit.
|
2014-10-14 12:37:35 -07:00 |
|
Adam Ierymenko
|
2416491cbc
|
Permanently retire peers.persist, but make iddb.d always enabled instead since identities are what we really want to cache.
|
2014-10-13 14:12:51 -07:00 |
|
Adam Ierymenko
|
6e23986bb3
|
Another build fix.
|
2014-10-13 13:09:02 -07:00 |
|
Adam Ierymenko
|
52314dcdf6
|
GitHub issue #111
|
2014-10-13 11:47:14 -07:00 |
|
Adam Ierymenko
|
05309037a8
|
Yank potentially costly support for TTL out of UdpSocket since we dont use this anymore.
|
2014-10-13 09:37:17 -07:00 |
|
Adam Ierymenko
|
6316011024
|
Make crypto and compression build optimized in debug, and also try disabling peers.persist -- might ship this way as it seems more trouble than its worth.
|
2014-10-12 11:42:49 -07:00 |
|
Adam Ierymenko
|
8b0846d077
|
Delete bunch of commented out code.
|
2014-10-11 16:53:21 -07:00 |
|
Adam Ierymenko
|
0d017c043f
|
Stop persisting last announcement time since Multicaster is volatile. Also some more legacy multicast fixes.
|
2014-10-11 16:26:02 -07:00 |
|
Adam Ierymenko
|
c2aac69a9f
|
Fixes to legacy peer support.
|
2014-10-11 15:49:31 -07:00 |
|
Adam Ierymenko
|
e071c05f1b
|
Add a sanity limit to legacy multicast repeater function in supernode-mode nodes, and change netconf-master to issue multicast limit (ml) instead of old p5 stuff.
|
2014-10-10 14:59:07 -07:00 |
|
Adam Ierymenko
|
03dc823ad7
|
(1) Back off a little on default max multicast limit since 128 is pretty bandwidth heavy, (2) add a little to default multicast rate limit since new MC algo is fairerererer, (3) decided not to involve netconf masters in multicast so take that out of list of who gets LIKEs.
|
2014-10-10 12:55:06 -07:00 |
|
Adam Ierymenko
|
1774e615a1
|
<= MTU
|
2014-10-10 09:09:56 -07:00 |
|
Adam Ierymenko
|
56f8f8aa24
|
Return self in GATHER requests if self is a member of multicast group, and reinstate legacy support.
|
2014-10-09 18:32:05 -07:00 |
|
Adam Ierymenko
|
4941c8a1f3
|
New multicast bug fixes, TRACE improvements, and temporarily disable legacy multicast for debugging purposes.
|
2014-10-09 17:58:31 -07:00 |
|
Adam Ierymenko
|
d5e0f7e3e4
|
Reorg multicast packet, and a whole bunch of refactoring around the pushing of certificates of membership.
|
2014-10-09 12:42:25 -07:00 |
|
Adam Ierymenko
|
620e64c58f
|
Supernode propagation of legacy multicast frames was brokezored.
|
2014-10-09 09:03:12 -07:00 |
|
Adam Ierymenko
|
3f15752f73
|
Add IPv4 address assignment to ffffffffffffffff test network.
|
2014-10-07 14:34:00 -07:00 |
|
Adam Ierymenko
|
87f1b1b1e3
|
Bug fix in new multicast frame handler, handling of old "P5" multicast frames in new way.
|
2014-10-06 13:16:16 -07:00 |
|
Adam Ierymenko
|
ab22feba9a
|
Bump version to 1.0.0, add legacy support code to Multicaster to not send new frame to known-to-be-old peers.
|
2014-10-05 10:34:25 -07:00 |
|
Adam Ierymenko
|
10c196df50
|
Send a VERB_P5_MULTICAST_FRAME to the supernode for each multicast -- for now. This will allow supernodes to echo these down to pre-1.0.0 peers.
|
2014-10-04 13:46:29 -07:00 |
|
Adam Ierymenko
|
2c8321be1f
|
Pull logic to always send new multicasts to supernode since we need to do that differently, re-add support for active bridges, and remove some gratuitous use of std::set where not needed.
|
2014-10-04 13:15:02 -07:00 |
|
Adam Ierymenko
|
62da7e67b6
|
Add some rate limiting to implicit gathers, and always send multicasts to at least one supernode so they can broadcast to old peers (temporary).
|
2014-10-03 22:30:10 -07:00 |
|
Adam Ierymenko
|
e7c81ef34e
|
Turns out that needed to be a list after all. Also clean up Multicaster::gather().
|
2014-10-03 22:03:19 -07:00 |
|
Adam Ierymenko
|
3f7e7e8a88
|
Do not multicast to self.
|
2014-10-03 18:42:41 -07:00 |
|
Adam Ierymenko
|
496109fdcc
|
Announce multicast group changes on network rescanMulticastGroups()
|
2014-10-03 18:27:42 -07:00 |
|
Adam Ierymenko
|
aad344bb84
|
Add test network support to Network.
|
2014-10-03 16:14:34 -07:00 |
|
Adam Ierymenko
|
351db7f1a0
|
Plumb injectPacketFromHost through to API.
|
2014-10-03 14:49:11 -07:00 |
|
Adam Ierymenko
|
67aa23530b
|
More work on adding testnet and user-mode capabilities for local network simulation.
|
2014-10-03 11:59:50 -07:00 |
|
Adam Ierymenko
|
96fa3f7550
|
Work on in-place testnet support.
|
2014-10-02 16:33:08 -07:00 |
|
Adam Ierymenko
|
1109046782
|
Last steps before test: parse OK(MULTICAST_GATHER) and OK(MULTICAST_FRAME)
|
2014-10-02 13:50:37 -07:00 |
|
Adam Ierymenko
|
49dc47ff38
|
Make multicast gathering a bit smarter.
|
2014-10-02 11:35:37 -07:00 |
|
Adam Ierymenko
|
dee86e2448
|
But since we are now using middle 3 bits we can assign sane values for the cipher suite enum.
|
2014-10-02 11:13:53 -07:00 |
|
Adam Ierymenko
|
17da733f97
|
Gotta support old encrypted flag, move cipher spec to middle 3 bits... due to some shortsighted design early-on. In the future this can die once there are no old peers.
|
2014-10-02 11:08:59 -07:00 |
|
Adam Ierymenko
|
23836d4c11
|
Change "encrypted" flag to full cipher suite selector. Go ahead and reserve AES256-GCM which might be added in the future.
|
2014-10-02 10:54:34 -07:00 |
|
Adam Ierymenko
|
e53d208ea4
|
Improve security posture by eliminating non-const data() accessor from Buffer.
|
2014-10-02 10:06:29 -07:00 |
|
Adam Ierymenko
|
e8c5495b61
|
Yes, zero my secret key data. Yes I really, really mean it.
|
2014-10-02 09:08:31 -07:00 |
|
Adam Ierymenko
|
28646eee0a
|
A bit more IncomingPacket cleanup... almost ready to test, just need OK() handling.
|
2014-10-01 16:29:52 -07:00 |
|
Adam Ierymenko
|
e1882b614b
|
Some cleanup, Multicaster now sends multicasts as it gets additional members.
|
2014-10-01 14:05:25 -07:00 |
|
Adam Ierymenko
|
ae082c3cb8
|
Yay... now everything compiles! Getting close to testing on this. Still have not added backward compatibility support for relaying of multicasts to 0.9.X clients yet but that will be easy. Will test with heterogenous 1.0.0 clients only first.
|
2014-10-01 12:41:48 -07:00 |
|
Adam Ierymenko
|
ea6124dd2f
|
IncomingPacket builds!
|
2014-09-30 17:33:20 -07:00 |
|
Adam Ierymenko
|
b41437780b
|
Add origin to new MULTICAST_FRAME, move security check for certs into Network to remove redundant code and bug-proneness, more work on IncomingPacket...
|
2014-09-30 17:26:34 -07:00 |
|
Adam Ierymenko
|
2659427864
|
Multicaster needs to be global, not per-network, and a bunch of other stuff.
|
2014-09-30 16:28:25 -07:00 |
|
Adam Ierymenko
|
8607aa7c3c
|
Everything in for new multicast except IncomingPacket parsing...
|
2014-09-30 08:38:03 -07:00 |
|
Adam Ierymenko
|
ed0ba49502
|
A few more revisions to new multicast verbs.
|
2014-09-26 14:18:25 -07:00 |
|
Adam Ierymenko
|
2d41055bdc
|
Some Network code cleanup.
|
2014-09-26 12:23:43 -07:00 |
|
Adam Ierymenko
|
027060dad1
|
Most of new multicast code builds... now on to packet parsing.
|
2014-09-25 22:13:31 -07:00 |
|
Adam Ierymenko
|
0778332747
|
.
|
2014-09-25 22:08:52 -07:00 |
|
Adam Ierymenko
|
9e186bbd89
|
.
|
2014-09-25 15:57:43 -07:00 |
|
Adam Ierymenko
|
050a0ce85d
|
.
|
2014-09-25 15:08:29 -07:00 |
|
Adam Ierymenko
|
6c87f9f765
|
Rename MulticastTopology to Multicaster -- same name as old multicast controller but different code. More descriptive though.
|
2014-09-24 14:02:16 -07:00 |
|
Adam Ierymenko
|
81b12b6826
|
Rename the ubiquitous _r pointer to RuntimeEnvironment to RR just to be a little more consistent about using _ to denote private member variables.
|
2014-09-24 13:53:03 -07:00 |
|
Adam Ierymenko
|
431476e2e4
|
Some more multicast algo work...
|
2014-09-24 13:45:58 -07:00 |
|
Adam Ierymenko
|
557801a09e
|
Rename PacketDecoder to much more descriptive IncomingPacket
|
2014-09-24 09:04:09 -07:00 |
|
Adam Ierymenko
|
9180a30986
|
.
|
2014-09-24 09:01:58 -07:00 |
|
Adam Ierymenko
|
61d0f27d2a
|
Make MulticastTopology have its own mutex.
|
2014-09-23 10:26:30 -07:00 |
|
Adam Ierymenko
|
c49e253e21
|
.
|
2014-09-22 15:03:16 -07:00 |
|
Adam Ierymenko
|
954f9cbc13
|
Yet more WIP on mulitcast algo...
|
2014-09-22 13:18:24 -07:00 |
|
Adam Ierymenko
|
d9abd4d9be
|
Work on defining new direct broadcast multicast algorithm.
|
2014-09-18 18:28:14 -07:00 |
|
Adam Ierymenko
|
4708231046
|
Fix for GitHub issue #122 and other fixes
|
2014-09-18 10:01:30 -07:00 |
|
Adam Ierymenko
|
6b76cac6cf
|
Back off from thrashing shutdownIfUnreadableCheck, fix bug in control service.
|
2014-09-17 14:19:58 -07:00 |
|
Adam Ierymenko
|
2762db8408
|
More work on control bus refactor...
|
2014-09-17 12:54:39 -07:00 |
|
Adam Ierymenko
|
73dd9d3b74
|
Make sure open() has third argument
|
2014-09-16 08:58:49 -07:00 |
|
Adam Ierymenko
|
8d2e20ede6
|
Get rid of __align stuff in Salsa20 -- not portable, does not seem to help much on newer chips.
|
2014-09-16 08:53:18 -07:00 |
|
Adam Ierymenko
|
5c1c70a604
|
cleanup
|
2014-09-16 08:19:39 -07:00 |
|
Adam Ierymenko
|
fb22ef053b
|
Move rest of NodeControl stuff out of node/ and into control/
|
2014-09-15 16:32:55 -07:00 |
|
Adam Ierymenko
|
13aba7640b
|
refactoring for SDK
|
2014-09-15 09:43:57 -07:00 |
|
Adam Ierymenko
|
1d37204a37
|
Refactoring in progress... pardon our dust...
|
2014-09-12 16:57:37 -07:00 |
|
Adam Ierymenko
|
6b4346d1ac
|
work in progress on API refactor
|
2014-09-10 17:16:40 -07:00 |
|
Adam Ierymenko
|
4e9280fc7a
|
Rip out dead "firewall opener" code, replace in pipeline with anti-symmetric-NAT tactics.
|
2014-09-05 16:23:24 -07:00 |
|
Adam Ierymenko
|
d02ecfb288
|
IP assignment and change cleanup -- leave IPs that were never configured via ZT static assignment alone.
|
2014-09-05 15:35:09 -07:00 |
|
Adam Ierymenko
|
3afc629ac5
|
Bit of network config parser cleanup.
|
2014-09-05 14:56:11 -07:00 |
|
Adam Ierymenko
|
7d4b6767eb
|
Old-school GCC build fix -- make sure __GCC__ is defined
|
2014-09-05 17:48:59 +00:00 |
|
Adam Ierymenko
|
93f9b4392d
|
Enable configuration of multicast algorithm parameters in netconf
|
2014-09-04 14:25:07 -07:00 |
|
Adam Ierymenko
|
6df9546742
|
Fix for missing broadcast address on Linux Ethernet taps.
|
2014-09-04 13:36:25 -04:00 |
|
Adam Ierymenko
|
dcea212e40
|
Add noupdate flag in root topologies, add ability for mktopology to read from a template.
|
2014-09-03 11:56:36 -07:00 |
|