Commit Graph

1025 Commits

Author SHA1 Message Date
Adam Ierymenko
e77e224171 bin2c warning removed 2014-09-03 12:25:28 -07: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
Adam Ierymenko
644db7a04a Let people build installers for any machine type on Linux, just canonicalize the x86 and x86_64 types. 2014-08-27 20:15:41 -04:00
Adam Ierymenko
00b16f6aa6 Fix for GitHub issue #110 -- failure to bind IPv6 now non-fatal 2014-08-27 20:09:56 -04:00
Adam Ierymenko
1952db5069 Only enable SSE Salsa20 on x86 and x86_64 Linux 2014-08-27 20:01:24 -04:00
Adam Ierymenko
6f8364ba59 VERSION 0.9.2:
The primary focus of this version is better integration with the
Microsoft Windows operating system.

Virtual networks should now be detected as "real" networks. For
each network, a message box should pop up the first time the network
is detected and classified allowing the user to choose its services
and security designation. On Windows 7 this is "work," "home," or
"public." On Windows 8 it's a simple choice of whether or not to
enable file and printer sharing and other services.

Several bugs have been fixed. Among these are a Windows threading
issue, several minor threading deadlock issues that could manifest
if rapidly adding and removing networks, and a command line interface
issue. The network list now shows the network MAC address as well,
a UI oversight in previous versions. A vectorized SSE implementation
of Salsa20 is now included for improved encrypt/decrypt performance.

The sending of low-TTL "firewall opener" packets has been disabled
in this version, since they may not be necessary and may harm NAT
traversal in some configurations. We will measure the effectiveness
of NAT traversal and see if this change improves performance in the
field.

Finally, this version obsoletes both the Tokyo and Sydney supernodes
in favor of a single larger supernode in Singapore. This decision was
made on the basis of bandwidth costs-- both Tokyo and Sydney are
significantly more expensive. We'd like to keep the basic service free,
so keeping bandwidth costs for relaying low is important. Since NAT
traversal works well and is constantly being improved, most users will
not see a speed decrease from this. Some Chinese users may see
improved performance since Singapore may be closer than Tokyo to many
Chinese cities.

The next major releases will focus on better Macintosh platform integration,
further improvements to NAT traversal, and UI improvements.
2014-08-22 12:05:56 -07:00
Adam Ierymenko
eadff71d37 Another fix to Network life cycle. 2014-08-21 18:07:27 -07:00
Adam Ierymenko
af62a6cade Forgot to uncomment secret debug #define of death. 2014-08-21 17:49:46 -07:00
Adam Ierymenko
de4e29288d Fix for crazy Windows threading bug... repeatedly adding and removing a network now doesn't leave networks in limbo. 2014-08-21 17:49:05 -07:00
Adam Ierymenko
44d58ee871 Change 1.1.1.1 pseudo-IP used for default route hack to 25.255.255.254, since 1.1.1.1 is from a now-in-use IPv4 block while 25.0.0.0/8 is still unrouted. It can be changed in the future without impacting anything, since Windows keys off the MAC not the IP to classify networks. 2014-08-21 08:26:39 -07:00
Adam Ierymenko
9d5819ff44 Version bump to 0.9.2 -- preparing for release... 2014-08-20 18:29:27 -07:00
Adam Ierymenko
08d7fe0432 Fix for GitHub issue #102 2014-08-20 12:36:11 -07:00
Adam Ierymenko
9f2571cc01 Some UI fixes for Windows. 2014-08-20 10:22:30 -07:00
Adam Ierymenko
b4b2e2ed9f ... 2014-08-19 18:21:21 -07:00
Adam Ierymenko
17ebd0afc7 Disable service management in UI -- installer should automatically start service and this is annoying for testing purposes. 2014-08-19 18:14:50 -07:00
Adam Ierymenko
351b7f3a09 UI stuff and sign .dmg on build. 2014-08-19 17:42:17 -07:00
Adam Ierymenko
721625d512 Add MAC to listnetworks, and some other make stuff. 2014-08-19 14:11:02 -07:00
Adam Ierymenko
282114e96c Makefile changes, and make Topology::getBestSupernode() return the "next" supernode if I am a supernode. Also some comment cleanup. 2014-08-19 10:09:21 -07:00
Adam Ierymenko
95d123cfc2 Do HttpClient refactoring for Windows. 2014-08-18 14:34:04 -07:00
Adam Ierymenko
f5cbb45ab9 Increase sleep/wake detection threshold... might want to switch to using native interfaces to really detect this in the future since this is not 100% reliable. 2014-08-18 10:13:25 -04:00
Adam Ierymenko
b7b9b9c0b7 Add "make debug" to make building debug one-offs easier (Linux). 2014-08-18 10:07:03 -04:00
Adam Ierymenko
715afc0314 Default to built-in root topology if signature check fails (instead of exiting) 2014-08-16 14:01:25 -07:00
Adam Ierymenko
f281886bfd Small thread safety fix in HttpClient. 2014-08-16 13:32:33 -07:00
Adam Ierymenko
4f0fcc582e Refactor HttpClient a bit. 2014-08-16 09:08:52 -07:00
Adam Ierymenko
aa59cfd545 Web request part of supernode resync (not quite done, needs test) 2014-08-15 23:37:35 -04:00
Adam Ierymenko
f696299cfc docs 2014-08-15 12:59:49 -04:00
Adam Ierymenko
b0719eacf9 Add encrypt/decrypt to attic. 2014-08-15 12:59:07 -04:00
Adam Ierymenko
c2187c8759 (1) distribute default root-topology in new dictionary format, (2) bump peer serialization version to force obsolescence of old supernodes, (3) stop outputting a log message every time we poll for software updates 2014-08-14 19:52:22 -04:00
Adam Ierymenko
56296f96db Regenerate root topology dictionary with field fix. 2014-08-14 18:54:53 -04:00
Adam Ierymenko
be6b61b1bc Accept supernode dictionaries in Topology, also fix (unused) field name in one of these. 2014-08-14 18:06:18 -04:00
Adam Ierymenko
f8d4611d15 (1) Tweak LAN locator beacon frequencies, (2) Windows virtual networks
now show up as *real* networks and prompt the user to set their
location and firewall status (public, private, home/work, etc.).

The hack used to achieve #2 should not be examined by children or those
suffering from epilepsy or heart conditions.
2014-08-12 17:20:34 -07:00
Adam Ierymenko
f25bd41a03 Some fixes to firewall config code. 2014-08-08 15:53:27 -07:00
Adam Ierymenko
fe3ad5e2cc Fix a Windows bug in refactored tap code, and always make sure we have a firewall exception rule on startup. 2014-08-08 14:57:13 -07:00
Adam Ierymenko
502ea66f15 Kill ugly old getSecureRandom() and replace with simple wrapper for Windows CAPI and *nix /dev/urandom, and some build fixes. 2014-08-08 11:53:55 -07:00
Adam Ierymenko
673aab5ba2 Fix an oversight in signed dictionaries: the timestamp and signing identity should themselves be part of the signature. Also include the raw dictionary in addition to the bin2c version in root-topology/ 2014-08-08 12:46:00 -04:00
Adam Ierymenko
77457cbff1 Windows compile fixes, compiler warning fix, unfreed memory fix in main.c (though it would not have mattered since program exits immediately after). 2014-08-07 19:08:41 -07:00
Adam Ierymenko
db0d17cebb Change topology URL to something prettier. 2014-08-07 20:27:05 -04:00
Adam Ierymenko
dd58006d65 Rename topology/ to be more descriptive, and some more updates. 2014-08-07 20:21:07 -04:00
Adam Ierymenko
f0ebb0b0f1 More root topology stuff. 2014-08-07 20:14:24 -04:00
Adam Ierymenko
8c9d3146df make clean fix 2014-08-07 18:46:04 -04:00
Adam Ierymenko
117f977ce3 mktopology for making new signed topology root server dictionaries 2014-08-07 18:45:11 -04:00
Adam Ierymenko
d8e5d9d6e8 Singapore supernode -- its baaaack 2014-08-07 21:19:34 +00:00
Adam Ierymenko
1f5feb75fb LinuxEthernetTap refactor. 2014-08-07 20:40:23 +00:00
Adam Ierymenko
05031ff938 Linux build stuff. 2014-08-07 13:05:17 -04:00
Adam Ierymenko
adfb71fa6b Compile for for TRACE, remove old TESTNET cruft. 2014-08-07 08:49:43 -07:00
Adam Ierymenko
37341048a9 Silence kextload/kextunload output, error handling improvements. 2014-08-07 08:41:57 -07:00
Adam Ierymenko
b3491f9de1 ifdef out Unix-only output redirect function on Windows 2014-08-07 06:36:46 -07:00
Adam Ierymenko
80fc584923 Fix for GitHub issue #97 2014-08-07 06:35:54 -07:00
Adam Ierymenko
b7389995f4 Make install scripts also symlink zerotier-idtool script, and doc updates. 2014-08-07 06:25:01 -07:00
Adam Ierymenko
92d9ad4a7f Some tap interface changes and integration into main.cpp for *nix systems. 2014-08-06 16:24:30 -07:00