summaryrefslogtreecommitdiff
path: root/node/Switch.cpp
AgeCommit message (Collapse)Author
2014-03-26Add TCP channel support for supernode list, make Peer pick the first path if ↵Adam Ierymenko
all paths are equally dead.
2014-03-25Apply multicast rate limits on a network to ourselves and do not send ↵Adam Ierymenko
multicasts that would exceed limits, for GitHub issue #55
2014-03-20Fix blocking socket issues in new socket I/O code.Adam Ierymenko
2014-03-19IPC changes and SocketManager changes all build!Adam Ierymenko
2014-03-18More ripping out of old condition stuff.Adam Ierymenko
2014-02-16Boring stuff: update dates in copyrights across all files.Adam Ierymenko
2014-02-06More Windows service work... it builds! Now to do a new installer and test. ↵Adam Ierymenko
Also fix a Windows compile warning in Switch.cpp.
2014-02-03Yank a code path it turns out we probably don't want.Adam Ierymenko
2014-01-30Take TRACE back out of Mac makefile, fix a few decode little things.Adam Ierymenko
2014-01-30Bunch of fixes to startup, pinging, and choice of route. Also some TRACE ↵Adam Ierymenko
updates.
2014-01-29More work on connection reset stuff...Adam Ierymenko
2014-01-29Alternate order of packet emission in unite().Adam Ierymenko
2014-01-28Yank PROBE stuff since it's not used and was a premature addition to the ↵Adam Ierymenko
protocol.
2014-01-27Make EthernetTap creation occur in a background thread in Network since it's ↵Adam Ierymenko
a time consuming operation on Windows. This fixes one of the last remaining Windows problems.
2014-01-21Several things:Adam Ierymenko
(1) Add a bunch of tedious type casts to eliminate unnecessary compiler warnings on Windows X64 builds. (2) Some EthernetTap work to integrate Windows custom IOCTL for multicast group lookup (not done quite yet). (3) Dump some more info in selftest to make sure our Windows path lookup functions are returning sane results.
2013-12-31Fix several things:Adam Ierymenko
(1) The changes to path learning in the two previous releases were poorly thought out, and this version should remedy that by introducing PROBE. This is basically a kind of ECHO request and is used to authenticate endpoints that are not learned via a valid request/response pair. Thus we will still passively learn endpoints, but securely. (2) Turns out there was a security oversight in _doHELLO() that could have permitted... well... I'm not sure it was exploitable to do anything particularly interesting since a bad identity would be discarded anyway, but fix it just the same.
2013-12-24Fix for GitHub issue #20 (untested)Adam Ierymenko
2013-10-25Certificate of membership works now... had to fix multicast propagation so ↵Adam Ierymenko
COM is pushed with multicast, which makes tremendous sense in retrospect.
2013-10-18Clean up the awful Network::Config mess and break that out into NetworkConfig.Adam Ierymenko
2013-10-17Get rid of not used and maybe never to be used Filter code.Adam Ierymenko
2013-10-17Take the 0.6.0 opportunity to add flags to a few protocol verbs and do a bit ↵Adam Ierymenko
more cleanup. Also fix it so certificates wont be accepted unless they are newer than existing ones.
2013-10-16Lots of cleanup, more work on certificates, some security fixes.Adam Ierymenko
2013-10-07Auto-pushing of membership certs on: MULTICAST_FRAME,FRAME,MULTICAST_LIKE ↵Adam Ierymenko
and on receipt of MULTICAST_LIKE.
2013-10-03Eliminate a lot of redundant WHOIS requests, clean up WHOIS clutter in ↵Adam Ierymenko
TRACE, flesh out multicast tracing a bit.
2013-10-02Clean up some routine stuff like pings, and stop keeping links open forever ↵Adam Ierymenko
even if there are no frames passing between them.
2013-10-02Multicast propagation is now working from non-supernodes, and working quite ↵Adam Ierymenko
well. Time for some more simulation before 0.5.0!
2013-10-01Each peer now tracks the last time it announced multicast LIKEs ↵Adam Ierymenko
independently and does so frequently enough to prevent expires. Also add a multicast debug facility for use on the testnet.
2013-09-30Make new multicast depth and prefix bits parameters configurable.Adam Ierymenko
2013-09-30Fix for multicast propagation -- supernodes must always keep propagating. ↵Adam Ierymenko
Also fix mac-tap build on new version of Xcode CL tools. Must use old llvm-g++ instead of clang for i686 -mkernel.
2013-09-27Whew, it builds!Adam Ierymenko
2013-09-17Make network multicast breadth/depth parameters configurable on a per-net basis.Adam Ierymenko
2013-09-17Get rid of onSent(), which was never used consistently anyway.Adam Ierymenko
2013-09-16New crypto integrated -- going to be testing new identity address generation ↵Adam Ierymenko
algo a bit more before finalizing.
2013-09-16Integrating new crypto, work still in progress...Adam Ierymenko
2013-09-12Get a default rate that works for multicast.Adam Ierymenko
2013-09-07Apply multicast rate limits to my own multicasts. Will run locally and on a ↵Adam Ierymenko
variety of system types to test the result of this.
2013-08-28Check network ethernet type whitelist instead of hard-coded ethernet types.Adam Ierymenko
2013-08-26ZeroTierOne for Windows binary project, builds and runs and mostly works but ↵Adam Ierymenko
still some issues with tap.
2013-08-21Huge convoluted logic de-tangling in multicast propagation, supernodes now ↵Adam Ierymenko
do random propagation for more efficient coverage with less bias in sparse graph cases.
2013-08-12Windows compiles! (w/Visual Studio 2012) That's about all it does, but it's ↵Adam Ierymenko
a start.
2013-08-12More Windows port work.Adam Ierymenko
2013-08-07Fix a bug and wow, it works.Adam Ierymenko
2013-07-29More work on network membership certs, and it builds now. Still in heavy ↵Adam Ierymenko
development.
2013-07-25Sane-ify Address, get rid of goofy union thingy.Adam Ierymenko
2013-07-13Cleanup, comments, regularize TRACE messages.Adam Ierymenko
2013-07-13Compile fixes, integration of fast PRNG.Adam Ierymenko
2013-07-12Bunch of little bug fixes in newly refactored code.Adam Ierymenko
2013-07-12Several bug fixes in newly refactored code.Adam Ierymenko
2013-07-11A bit more minor cleanup before testing.Adam Ierymenko
2013-07-11It builds now. The Switch object has been put on a diet. Now to test on the ↵Adam Ierymenko
testnet before merge to master.