summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-08-09Tweak default multicast rate limits.Adam Ierymenko
2013-08-09Add a concept of debt to RateLimiter, save a bit of RAM.Adam Ierymenko
2013-08-08Add RateLimiter for rate limiting multicast, not tested yet.Adam Ierymenko
2013-08-08Back off a little on multicast propagation depth. Eventually this will be a ↵Adam Ierymenko
network parameter.
2013-08-08Actually report a meaningful network status instead of always OKAdam Ierymenko
2013-08-08Generalize unlink to OS-dep code in Utils, just a little prep for Windows port.Adam Ierymenko
2013-08-08Move template parameter in Thread to a more logical scope location.Adam Ierymenko
2013-08-070.4.0: MAJOR CHANGE TO NETWORK IDS AND NETWORK MEMBERSHIP (please upgrade!)Adam Ierymenko
In keeping with the wild west alpha phase of this software, this version is a major departure from 0.3.0 and an upgrade is required. The protocol hasn't changed much, but the system of network membership, network IDs, and network configuration bootstrapping has changed dramatically. The mechanism for network autoconfiguration is now in-band, via the ZeroTier protocol itself, rather than using an HTTP API. This simplifies the code and allows us to use a consistent system of encryption and authentication. To accomodate this change, network IDs now contain in their most significant 40 bits the ZeroTier address of a node responsible for overseeing the addressing of participating network members. The remaining bits are free, so each network controller (netconf node) can control up to 2^24 networks. The code for the netconf service is in /netconf-service, but for ordinary users there's not much need to look at it or use it. It's just there to be open source. The system for network membership tracking is also revamped. For open networks like Earth this doesn't matter, but for closed networks membership is now driven by something called a membership certificate that is signed by the controlling node in the network. There's still work to be done here, so private network support isn't fully baked yet. But public open networks work fine. Nodes still join "Earth" by default. The ID for Earth has changed from 1 to 6c92786fee000001 (hex). This means that old 0.3.0 clients and older will not be able to communicate with 0.4.0 as their network IDs will not match. The new certificate-based network membership system scales better than the old HTTP API system and will support some pretty amazing features. Stay tuned! For now just update and relaunch. You should get the same IPv4 address you had before. The second big change is zerotier-cli. Try running it as root (or after copying the auth file to the path it tells you about when you first run it) with 'help' as a command.
2013-08-07Make cli try to read auth token from global home if possible (unix-like systems)Adam Ierymenko
2013-08-07Go back to release build.Adam Ierymenko
2013-08-07Add code to automatically join Earth if no network memberships are defined.Adam Ierymenko
2013-08-07Fix a bug and wow, it works.Adam Ierymenko
2013-08-06More detail and output improvements to command bus "listpeers," and a little ↵Adam Ierymenko
cleanup.
2013-08-06Bit of comment and if nesting cleanup in PacketDecoder.Adam Ierymenko
2013-08-06Network constructor deuglification, remove unused old encrypt/decrypt ↵Adam Ierymenko
methods from Identity.
2013-08-06Bunch more debugging and loop closing on new netconf.Adam Ierymenko
2013-08-06Whole bunch of stuff: netconf, bug fixes, tweaks to ping and firewall opener ↵Adam Ierymenko
timing code.
2013-08-05CLI communication now working.Adam Ierymenko
2013-08-05CLI now actually sends commands... :PAdam Ierymenko
2013-08-05CLI debugging, got rid of nasty old Thread class and replaced with newer ↵Adam Ierymenko
cleaner portable idiom.
2013-08-05Poll for network autoconf, and a few other documentation changes.Adam Ierymenko
2013-08-05Documentation improvements and some very minor pre-emptive security stuff.Adam Ierymenko
2013-08-03Scratch that... more work wiring up netconf. Got to handle OK.Adam Ierymenko
2013-08-03Merge my adamierymenko-dev into the new master that incorporates Raspberry ↵Adam Ierymenko
Pi build changes in order to keep everything in sync.
2013-08-03Merge pull request #14 from paulfurley/12-libcrypto-armv4Adam Ierymenko
openssl static library for ARM, and ARM build scripts -- works on Raspberry Pi
2013-08-03Link against libdl to enable use of dlopen etc in libcrypto.aPaul Furley
2013-08-03Fixed typo in symlink, v61 vs v6lPaul Furley
2013-08-03libcrypto.afor linux-armv4Paul Furley
2013-08-03Symlink linux-armv61 to linux-armv4Paul Furley
2013-08-03Added linux-armv4 openssl build scriptPaul Furley
2013-08-02Netconf wired up, ready to test.Adam Ierymenko
2013-08-02Replace fork() with vfork() in tap config, faster.Adam Ierymenko
2013-08-02Netconf service itself works, time to integrate.Adam Ierymenko
2013-08-01netconf service workAdam Ierymenko
2013-08-01Rename netconf-plugin subdir.Adam Ierymenko
2013-08-01Netconf service code, interacts with our MySQL database.Adam Ierymenko
2013-07-31Local service plugin stuff... work in progress.Adam Ierymenko
2013-07-31Remove suicidalThread hack from Thread.Adam Ierymenko
2013-07-31Change mind again... dump Http. Launcher will do this and will use libcurl. ↵Adam Ierymenko
Also fix some format string errors.
2013-07-31Little bit of protocol changes before implementation of new verbs.Adam Ierymenko
2013-07-30Call clean on all networks periodically, generalize Topology clean cycle to ↵Adam Ierymenko
an overall clean cycle.
2013-07-29More work on network membership certs, and it builds now. Still in heavy ↵Adam Ierymenko
development.
2013-07-29Fix a bunch of errors due to minor method signature changes, still a work in ↵Adam Ierymenko
progress.
2013-07-29Network membership certificate work in progress... does not build yet.Adam Ierymenko
2013-07-27remove obsolete packtoolAdam Ierymenko
2013-07-27makekeypair utilityAdam Ierymenko
2013-07-27Add skeleton of certificate-based private network authentication. Also ↵Adam Ierymenko
remove some old code.
2013-07-27Remove JsonCPP from authors, no longer used.Adam Ierymenko
2013-07-27Revert removal of Http. Witness my indecisiveness.Adam Ierymenko
2013-07-27Add simple key=value dictionary, sorta like java.util.Properties.Adam Ierymenko