Commit graph

  • f51478b470 Uninstaller scripts for *nix. Adam Ierymenko 2013-11-06 15:04:05 -05:00
  • 93427b8cb6 Installer work, add .pid file writing on *nix systems to main.cpp. Adam Ierymenko 2013-11-06 14:43:47 -05:00
  • 5d7fea2047 Delete some obsolete Windows false starts. Adam Ierymenko 2013-11-06 13:35:06 -05:00
  • 35fe5ea166 file2lz4c for making installer binaries Adam Ierymenko 2013-11-06 12:06:42 -05:00
  • bbe5a6f5d1 Add signupdate command to idtool. Adam Ierymenko 2013-11-06 11:39:07 -05:00
  • 6b8c90bffd Upgrade LZ4, remove extraneous files, put tap-mac into ext/ to declutter root. Adam Ierymenko 2013-11-06 11:01:34 -05:00
  • 9455b1cc81 Comments, change .nfo to .sig for uploads, clean some unused code from Utils. Adam Ierymenko 2013-11-06 10:38:19 -05:00
  • 9fdec3acfc More updater work... coming along. Adam Ierymenko 2013-11-05 17:08:29 -05:00
  • f189b9b6e9 Merge branch 'adamierymenko-dev' of shub-niggurath.zerotier.com:/git/ZeroTierOne into adamierymenko-dev Adam Ierymenko 2013-11-04 17:31:12 -05:00
  • 6c63bfce69 File transfer work, add identities for validation of updates. Adam Ierymenko 2013-11-04 17:31:00 -05:00
  • d398c0aed2 Remove tap stuff from makefile. Adam Ierymenko 2013-11-01 20:40:51 -04:00
  • ac4e657aaa Updater work in progress... Adam Ierymenko 2013-11-01 20:39:31 -04:00
  • ae138566a9 Updater code, work in progress... Adam Ierymenko 2013-11-01 12:38:38 -04:00
  • e4044eeb70 Finish stubbing out FILE_ stuff. Adam Ierymenko 2013-10-28 17:25:12 -04:00
  • d5fdfaea56 Fix signed/unsigned compare warning. Adam Ierymenko 2013-10-28 16:54:35 -04:00
  • d92da40bff VERSION 0.6.2: Mac users should 'sudo make install-mac-tap' again. 0.6.2 Adam Ierymenko 2013-10-28 16:32:17 -04:00
  • 5750cf6b72 New cthulhu.zerotier.com supernode IP address. Adam Ierymenko 2013-10-28 16:24:55 -04:00
  • 7015017686 Make Makefile for Mac use clang options instead of old GCC options, and fix a nasty but obvious bug I introduced into Utils::getSecureRandom. Adam Ierymenko 2013-10-28 15:53:40 -04:00
  • 12b297a712 Put default MTU in tap back to 2800, clean up tun-related files and other things from the original pre-fork tap code base that we will never use. Adam Ierymenko 2013-10-28 15:18:06 -04:00
  • d290306bb3 Update binary build of tap. Adam Ierymenko 2013-10-28 13:23:56 -04:00
  • 60ac1b77c5 Fix for GitHub issue #25 Adam Ierymenko 2013-10-28 13:22:23 -04:00
  • e514fe2bff Change install-mac-tap rule. Adam Ierymenko 2013-10-28 09:34:36 -04:00
  • 148619f0ba Make tap build on OSX 10.9, though not in a way that is easy for users. Instead package binaries. Adam Ierymenko 2013-10-28 09:33:32 -04:00
  • 17778a36ba Clean up secure random, add packet definitions for update distribution facility. Adam Ierymenko 2013-10-27 07:26:50 -04:00
  • df28cd88b8 docs: we no longer use MS loopback Adam Ierymenko 2013-10-26 07:39:07 -04:00
  • 942cc0ca21 Certificate of membership works now... had to fix multicast propagation so COM is pushed with multicast, which makes tremendous sense in retrospect. Adam Ierymenko 2013-10-25 14:51:55 -04:00
  • 010616e3ae Add some more TRACE output for certs. Adam Ierymenko 2013-10-25 13:43:04 -04:00
  • 1505e8dd50 Fix netconf init and identity transfer. Adam Ierymenko 2013-10-25 13:04:42 -04:00
  • 5901972958 More tying up of certificate of membership stuff in the client. Adam Ierymenko 2013-10-24 16:57:26 -04:00
  • bbcd76ecd0 Netconf updates -- actually issue COM, and log attempts to access networks in NetworkActivity using the new authenticated flag in the new DB schema. Adam Ierymenko 2013-10-24 16:19:53 -04:00
  • 3de76fcab1 Make network autoconf a little more frequent to tighten up expiration times. Adam Ierymenko 2013-10-21 16:11:29 -04:00
  • d496304bbf Put back rest of selftest. Adam Ierymenko 2013-10-21 15:59:22 -04:00
  • 719dd2870d Self-test for certificate of membership. Adam Ierymenko 2013-10-21 15:47:33 -04:00
  • 2f00ae4fd7 Version 0.6.1: minor bug fix, DBM removal 0.6.1 Adam Ierymenko 2013-10-21 14:22:02 -04:00
  • 5e71e07f59 Add persistent identity caching for use on supernodes. Activate by just making an iddb.d directory in the ZeroTier home folder. Also clean up some obsolete cruft from makefiles. Adam Ierymenko 2013-10-21 14:12:00 -04:00
  • 40e4f39181 Peers are now dumped on shutdown in a persistence cache and reloaded on startup, which is good enough for clients right now. Supernodes will get something else for long-term authoritative identity caching. Adam Ierymenko 2013-10-21 11:15:47 -04:00
  • 6e217dfcb0 Get rid of DBM, which technically is a case of YAGNI. Supernodes will need a way to save identities, but that can be a different feature. Regular clients do not really need a permanent cache (yet). When/if we do need one we can do it then. Until then it only caused problems. Adam Ierymenko 2013-10-21 10:29:44 -04:00
  • bbfd43e036 VERSION 0.6.0 BETA: please upgrade! 0.6.0 Adam Ierymenko 2013-10-20 16:14:27 -04:00
  • 70655cc3f7 Docs and auto-update of Earth network ID. Adam Ierymenko 2013-10-20 16:00:41 -04:00
  • c89cdcc3fd Blech... moving on! Adam Ierymenko 2013-10-20 15:54:32 -04:00
  • 1ed8a22d19 And then it turns out to be too slow on a slower 32-bit machine... we do want to do tablets eventually. Adam Ierymenko 2013-10-20 15:46:36 -04:00
  • bad043729f Yet another revision of this algo... yeesh... and update to supernode IDs. I think I am gonna go with this one. Seems memory-hard enough to me. I am probably procrastinating by obsessing over it. Adam Ierymenko 2013-10-20 15:31:32 -04:00
  • 3c5c3280ff Fix an endian-non-neutrality bug in new hashcash identity algo. Adam Ierymenko 2013-10-20 11:04:58 -04:00
  • 8c9b73f67b Make Salsa20 variable-round, allowing for Salsa20/12 to be used for Packet encrypt and decrypt. Profiling analysis found that Salsa20 encrypt was accounting for a nontrivial percentage of CPU time, so it makes sense to cut this load fundamentally. There are no published attacks against Salsa20/12, and DJB believes 20 rounds to be overkill. This should be more than enough for our needs. Obviously incorporating ASM Salsa20 is among the next steps for performance. Adam Ierymenko 2013-10-18 17:39:48 -04:00
  • 37e3bc3467 Bump version.h to version 0.6.0... almost there! Adam Ierymenko 2013-10-18 16:59:15 -04:00
  • 8d3dc3a44b Add commented out gprof makefile options to Linux build. Adam Ierymenko 2013-10-18 16:51:05 -04:00
  • fbf6ab5d4d Bug fixes: inverted sense bug, printf format bug. Adam Ierymenko 2013-10-18 16:27:07 -04:00
  • e13d4df9ab Forgot to set defaults if multicast parameters are unset. Adam Ierymenko 2013-10-18 15:50:31 -04:00
  • fb7d9b1029 Oops we needed _r in there... Adam Ierymenko 2013-10-18 15:00:55 -04:00
  • 5ef758bbd4 Eliminate unused private field (compiler warning). Adam Ierymenko 2013-10-18 14:27:37 -04:00
  • ca93b4a1ac Clean up some stuff, including a few spots where exceptions were not being handled correctly. Adam Ierymenko 2013-10-18 14:16:53 -04:00
  • 03b909603a Clean up the awful Network::Config mess and break that out into NetworkConfig. Adam Ierymenko 2013-10-18 13:20:34 -04:00
  • 5a8f213c23 Work in progress... Adam Ierymenko 2013-10-18 12:01:48 -04:00
  • b10871cedc More work in netconf cleanup. Adam Ierymenko 2013-10-18 11:01:41 -04:00
  • 9f107dbd4e Work in progress on cleaning up netconf mess in node code... Adam Ierymenko 2013-10-18 09:48:02 -04:00
  • e6eb65be00 Netconf support for ARP and NDP caching TTLs. Adam Ierymenko 2013-10-17 16:49:31 -04:00
  • dd7758e33e Add multicast trace receiver to attic/. Another run of multicast trace reveals fairly nice behavior. It looks like the traffic jams are the fault of ARP, which results from a gaggle of hosts trying to send ping replies. ARP caching will help with that quite a bit. Adam Ierymenko 2013-10-17 16:27:46 -04:00
  • d0dbd869c9 Increase verbosity of multicast tracing and fix tap build problem / GitHub Issue #19 Adam Ierymenko 2013-10-17 15:20:43 -04:00
  • 9ece65da23 Fix some old column names in netconf. Adam Ierymenko 2013-10-17 13:52:39 -04:00
  • 7701e25a45 Merge branch 'adamierymenko-dev' of shub-niggurath.zerotier.com:/git/ZeroTierOne into adamierymenko-dev Adam Ierymenko 2013-10-17 13:08:09 -04:00
  • 797bba04dd Get rid of not used and maybe never to be used Filter code. Adam Ierymenko 2013-10-17 13:07:53 -04:00
  • f7bf9da881 Compile fix for netconf. Adam Ierymenko 2013-10-17 11:22:03 -04:00
  • ce14ba9004 Take the 0.6.0 opportunity to add flags to a few protocol verbs and do a bit more cleanup. Also fix it so certificates wont be accepted unless they are newer than existing ones. Adam Ierymenko 2013-10-17 06:41:52 -04:00
  • 555471200c Add DISTINCT to queue query. Adam Ierymenko 2013-10-17 05:40:04 -04:00
  • 7e7e28f5f7 Add support for pushing network config refresh hints from a MEMORY queue table. That ways it will be possible for network changes to take effect almost immediately across all active peers. Adam Ierymenko 2013-10-17 05:37:01 -04:00
  • 46f868bd4f Lots of cleanup, more work on certificates, some security fixes. Adam Ierymenko 2013-10-16 17:47:26 -04:00
  • 58fa6cab43 Auto-pushing of membership certs on: MULTICAST_FRAME,FRAME,MULTICAST_LIKE and on receipt of MULTICAST_LIKE. Adam Ierymenko 2013-10-07 17:00:53 -04:00
  • 4d594b24bc Automagically push netconf certs -- Network support. Adam Ierymenko 2013-10-07 16:13:52 -04:00
  • b4ae1adfbf Break out certificate of membership into its own class. Adam Ierymenko 2013-10-07 15:29:03 -04:00
  • dcbc9c8ddd Rename error code for no membership certificate. Adam Ierymenko 2013-10-07 15:21:40 -04:00
  • 430882327e Couple of small fixes, works again with new ID code. Adam Ierymenko 2013-10-07 15:00:38 -04:00
  • 2fa2796f2a Another tweak, hopefully final, to reduce variance on identity generation times. Adam Ierymenko 2013-10-07 14:31:13 -04:00
  • 343b7f44fc Old algo for ID derivation was not in fact memory-hard since Salsa20 is seekable, so take two. Adam Ierymenko 2013-10-07 12:48:27 -04:00
  • 0c8614b9c6 Add a second arg to idtool generate to make generating both secret and public easier, add new supernode identities after generating them, fix known good and bad IDs in selftest. Adam Ierymenko 2013-10-07 09:36:20 -04:00
  • 5fa7a92048 Allocate genmem[] since its too big for the stack on some systems. Adam Ierymenko 2013-10-06 05:28:25 -04:00
  • bc715fbd51 Make new identity hashcash algo memory hard, and tweak generation time a bit. Current hashcash cost should be overkill for what we need but still tolerable to users. Adam Ierymenko 2013-10-05 14:15:59 -04:00
  • a31c54b44b Remove an obsolete column from Node table in netconf. Adam Ierymenko 2013-10-05 10:45:23 -04:00
  • 4267e7da93 Remove a whole bunch of now-unnecessary cruft from Topology and PacketDecoder. Adam Ierymenko 2013-10-05 10:19:12 -04:00
  • 0e43e5e8f2 Rest of work on new hashcash based identity scheme. Adam Ierymenko 2013-10-05 07:00:55 -04:00
  • b0187f4472 Hashcash-based identity, work in progress... committing to test speed on other boxes. Adam Ierymenko 2013-10-05 06:00:47 -04:00
  • 588a47be89 Some API improvements to C25519 in preparation for that thing I woke up thinking about at 4am. Adam Ierymenko 2013-10-05 05:26:38 -04:00
  • ea4e1136dd Flesh out membership certificate with signature, better serialize/deserialize, and rename parameter to qualifier to make better conceptual sense. Adam Ierymenko 2013-10-04 12:24:21 -04:00
  • ca6c0fad08 VERSION 0.5.0 - alpha users must rebuild and restart! 0.5.0 Adam Ierymenko 2013-10-03 15:57:44 -04:00
  • 0ab7b6d014 docs Adam Ierymenko 2013-10-03 15:48:26 -04:00
  • bb4a96c630 Add more info to remote multicast trace (debug facility). Adam Ierymenko 2013-10-03 14:53:15 -04:00
  • c7590634e8 Eliminate a lot of redundant WHOIS requests, clean up WHOIS clutter in TRACE, flesh out multicast tracing a bit. Adam Ierymenko 2013-10-03 14:38:07 -04:00
  • 58538500f2 Clean up some routine stuff like pings, and stop keeping links open forever even if there are no frames passing between them. Adam Ierymenko 2013-10-02 16:12:10 -04:00
  • b8a9b42993 docs Adam Ierymenko 2013-10-02 14:06:23 -04:00
  • 2cfa76fa8b Multicast propagation is now working from non-supernodes, and working quite well. Time for some more simulation before 0.5.0! Adam Ierymenko 2013-10-02 13:50:42 -04:00
  • 929ed5d8b8 Merge branch 'adamierymenko-dev' of /Users/api/Code/local-ZeroTierOne into adamierymenko-dev Adam Ierymenko 2013-10-01 17:19:36 -04:00
  • 4b6ec872c7 More multicast fixes. Adam Ierymenko 2013-10-01 17:19:24 -04:00
  • 676f391ccf Multicast debug changes. Adam Ierymenko 2013-10-01 16:31:46 -04:00
  • 3443b203e4 Each peer now tracks the last time it announced multicast LIKEs independently and does so frequently enough to prevent expires. Also add a multicast debug facility for use on the testnet. Adam Ierymenko 2013-10-01 16:01:36 -04:00
  • 1a76455986 Fix for multicast propagation to prevent buildup of frames ping-ponging between supernodes. Adam Ierymenko 2013-09-30 17:10:34 -04:00
  • e72a1de0d5 Fix bug in next hop selection. Adam Ierymenko 2013-09-30 16:31:22 -04:00
  • 20832a0562 Send reset of OK(HELLO) in both places where it gets composed. Adam Ierymenko 2013-09-30 14:55:10 -04:00
  • 9db7939d38 Make new multicast depth and prefix bits parameters configurable. Adam Ierymenko 2013-09-30 13:51:56 -04:00
  • 4ecb9369b5 Fix for multicast propagation -- supernodes must always keep propagating. Also fix mac-tap build on new version of Xcode CL tools. Must use old llvm-g++ instead of clang for i686 -mkernel. Adam Ierymenko 2013-09-30 11:05:35 -04:00
  • 141b858737 Self-test fixes for new packet armor/dearmor functions that combine old encrypt and MAC functions. Adam Ierymenko 2013-09-27 16:25:35 -04:00
  • 0dca9964bf Whew, it builds! Adam Ierymenko 2013-09-27 16:03:13 -04:00