summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2015-07-28Add TRACE for NAT-t debugging.Adam Ierymenko
2015-07-28Try another NAT traversal improvement.Adam Ierymenko
2015-07-28Nuke some abandoned code.Adam Ierymenko
2015-07-28Enable SO_NO_CHECK if available to skip UDP checksum on packet send for ↵Adam Ierymenko
slight performance improvement. We do our own cryptographically secure authentication so UDP checksum is worthless.
2015-07-28Merge branch 'master' into adamierymenko-devAdam Ierymenko
2015-07-28Merge pull request #215 from nelsonjchen/patch-2Adam Ierymenko
Update Application Mac Menu. Small MacGap leftover.
2015-07-27Fix to NAT escalation sequence.Adam Ierymenko
2015-07-27Fix IP scoping bug, and disable remotely reported surface push... not ↵Adam Ierymenko
helping. :(
2015-07-27Fix infinite loop typo.Adam Ierymenko
2015-07-27Push remote surface as reported by peers along with known interface direct ↵Adam Ierymenko
paths to assist with (some) NAT traversal. (trying this, may back out if not effective)
2015-07-27Eliminate some aggressive port scanning NAT-t behavior that has proven ↵Adam Ierymenko
ineffective.
2015-07-24Fix leaving of networks to actually call Network::destroy().Adam Ierymenko
2015-07-24Apply same Linux compiler-picker logic to Mac.Adam Ierymenko
2015-07-24Add version to log.Adam Ierymenko
2015-07-23(1) Fix updating of network revision counter on member change.Adam Ierymenko
(2) Go back to timestamp as certificate revision number. This is simpler and more robust than using the network revision number for this and forcing network revision fast-forward, which could cause some peers to fall off the horizon when you don't want them to.
2015-07-23Fix for make-linux: detect whether CC/CXX were explicitly overridden, and if ↵Adam Ierymenko
not then use the gcc/clang selection logic. Otherwise ?= breaks this.
2015-07-23Add a rate limiting circuit breaker to the network controller to prevent ↵Adam Ierymenko
flooding attacks and race conditions.
2015-07-23Eliminate some poorly thought out optimizations from the netconf/controller ↵Adam Ierymenko
interaction, and go ahead and bump version to 1.0.4. For a while in 1.0.3 -dev I was trying to optimize out repeated network controller requests by using a ratcheting mechanism. If the client received a network config that was indeed different from the one it had, it would respond by instantlly requesting it again. Not sure what I was thinking. It's fundamentally unsafe to respond to a message with another message of the same type -- it risks a race condition. In this case that's exactly what could happen. It just isn't worth the added complexity to avoid a tiny, tiny amount of network overhead, so I've taken this whole path out. A few extra bytes every two minutes isn't worth fretting about, but as I recall the reason for this optimization was to save CPU on the controller. This can be achieved by just caching responses in memory *there* and serving those same responses back out if they haven't changed. I think I developed that 'ratcheting' stuff before I went full time on this. It's hard to develop stuff like this without hours of sustained focus.
2015-07-22Update Application Mac Menu. Small MacGap leftover.Nelson Chen
Hide ZeroTier One, not MacGap. Just a papercut.
2015-07-22Add a Log table to log queries for debugging and security logging. No JSON ↵Adam Ierymenko
API support for querying the log yet, but will probably come via /network/###/member/###/log/... or something.
2015-07-22Merge pull request #212 from keesbos/fixAdam Ierymenko
Fix for output of empty (no members) network
2015-07-21Fix to member listing: I wanted an object with member IDs as keys and member ↵Adam Ierymenko
revisions as values, not an array.
2015-07-21List members in the form of a hash of member ID and member revision so code ↵Adam Ierymenko
can quickly detect which members have changed.
2015-07-21Remove "members" from Network record and instead enumerate members via ↵Adam Ierymenko
specific query to /network/nwid/member sub-path. More RESTful, scalable, and compatible with how OnePoint code works.
2015-07-21Fix IP auto-assign bug due to missing subnet routes.Adam Ierymenko
2015-07-21Report controllerInstanceId in all objects so that controller resets can be ↵Adam Ierymenko
easily detected by whatever is using the service.
2015-07-20Fix bug in rules JSON output.Adam Ierymenko
2015-07-20Proper handling of NULL entry for etherType in rules table.Adam Ierymenko
2015-07-20Fix string overwrite bug.Adam Ierymenko
2015-07-20Get rid of false foreign key in Relay.Adam Ierymenko
2015-07-17sp.Adam Ierymenko
2015-07-17IP assignment pool range bug fix.Adam Ierymenko
2015-07-17Fix some SQL and make instanceId more robustly random.Adam Ierymenko
2015-07-17Fix bad JSON in response.Adam Ierymenko
2015-07-17Add a concept of an "instanceId" to the controller, which the OnePoint can ↵Adam Ierymenko
use to determine whether it is the same running database instance it already knows.
2015-07-16Fix addLocalInterfaceAddress call in OneService on WindowsGrant Limberg
2015-07-16Add memberRevision stuff to JSON output, and update docs.Adam Ierymenko
2015-07-16Add a concept of a member revision counter to networks. This can be used to ↵Adam Ierymenko
select all members that have been added or changed since a given point.
2015-07-14Networks don't need their ID as a default name.Adam Ierymenko
2015-07-14Don't allow zero as a network number.Adam Ierymenko
2015-07-13Workaround for uclibc missing map::operator==()Adam Ierymenko
2015-07-13Add additional TRACE output in pushDirectPaths.Adam Ierymenko
2015-07-13Clean up some YAGNI issues with implementation of GitHub issue #180, and ↵Adam Ierymenko
make best path choice aware of path rank.
2015-07-13Merge branch 'adamierymenko-dev' of ↵Adam Ierymenko
http://git.int.zerotier.com/zerotier/zerotierone into adamierymenko-dev
2015-07-13Fixes to PUSH_DIRECT_PATHS.Adam Ierymenko
2015-07-13ZT_TRACE build fix.Adam Ierymenko
2015-07-13Put back legacy code to listen for LAN announcements to support same network ↵Adam Ierymenko
location with pre-1.0.4 clients.
2015-07-13Disable HTTP test in selftest since it works, and GitHub issue #207.Adam Ierymenko
2015-07-08Add build def ZT_NO_TYPE_PUNNING, which when defined disables type punning ↵Adam Ierymenko
code that might cause unaligned access errors on architectures that care (e.g. Android/ARM)
2015-07-07Implement ERROR_UNWATNED_MULTICASTAdam Ierymenko