Adam Ierymenko
923c325a40
Add another private-testnet root topology debug option using 10.0.0.1 as the supernode.
2014-10-06 13:19:04 -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
13fc20b0ee
Add inject (undocumented in help) to NodeControlService.
2014-10-03 15:59:49 -07:00
Adam Ierymenko
351db7f1a0
Plumb injectPacketFromHost through to API.
2014-10-03 14:49:11 -07:00
Adam Ierymenko
6ab7b1b915
Add local-testnet clean script, and make a really ugly hacky fix in main.c for the -q option. (All that personality stuff needs to be rewritten. Yuck.)
2014-10-03 13:41:52 -07:00
Adam Ierymenko
f853bc6a86
Fix root topology override
2014-10-03 13:19:13 -07:00
Adam Ierymenko
d7189dd6c7
.
2014-10-03 13:06:13 -07:00
Adam Ierymenko
5fc3c0812a
run-local-testnet script
2014-10-03 13:02:36 -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
2a58c3fb98
Root topology testnet stuff... will ship this so people can easily run the local testnet app.
2014-10-03 09:36:39 -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
d37c3ad30f
VERSION 0.9.3: unreleased update with some fixes for Pi users
...
This version is being tagged and bagged, despite the fact that it's not
going to be released and won't be merged into master until 1.0.0 is ready.
It contains several Linux build fixes, a fix for a unix domain socket resource
leak, and build fixes for the Raspberry Pi.
2014-09-18 13:40:58 -07:00
Adam Ierymenko
4708231046
Fix for GitHub issue #122 and other fixes
2014-09-18 10:01:30 -07:00