Adam Ierymenko
c863ff3f02
A bunch of comments and cleanup, including some to yesterday's direct path pushing changes. Move path viability check to one place, and stop trying to use link-local addresses since they are not reliable.
2015-07-07 08:54:48 -07:00
Adam Ierymenko
f398952a6c
Revert some bad docs in Packet -- I think we will still use that. Also rename addMembershipCertificate to more security-descriptive validateAndAddMembershipCertificate, give it a return value, and drop unused force parameter.
2015-07-07 08:14:41 -07:00
Adam Ierymenko
6da9d2d36f
Remove debug printf().
2015-07-06 17:23:22 -07:00
Adam Ierymenko
f881cdd767
Add new .h file to VS build, and Windows side of local interface address enumeration.
2015-07-06 17:22:37 -07:00
Adam Ierymenko
84ba365c77
Fix bug in direct path push send.
2015-07-06 17:20:41 -07:00
Adam Ierymenko
cac55105c3
Fix a regression.
2015-07-06 16:40:23 -07:00
Adam Ierymenko
a87cd2d094
Unix side of local interface address awareness for GitHub issue #180 .
2015-07-06 16:32:34 -07:00
Adam Ierymenko
235f4762b7
Plumbing for local interface addresses -- GitHub issue #180
2015-07-06 15:51:04 -07:00
Adam Ierymenko
79e9a8bcc2
Almost everything for GitHub issue #180 except direct path map setup.
2015-07-06 15:28:48 -07:00
Adam Ierymenko
fad9dff2db
Almost all of GitHub issue #180
2015-07-06 15:05:04 -07:00
Adam Ierymenko
1632aec102
Check Network::isAllowed() always on multicast send.
2015-07-06 14:53:27 -07:00
Adam Ierymenko
255320e2a6
pushDirectPaths() implementation
2015-07-06 14:39:28 -07:00
Adam Ierymenko
93bb934d4e
Some cleanup, docs, and Path -> Path > RemotePath refactor.
2015-07-06 14:08:13 -07:00
Adam Ierymenko
feddd946f9
For curiosity add Salsa20/8 to benchmarks.
2015-07-06 13:51:25 -07:00
Adam Ierymenko
6bfbc43e3c
Include COM with EXT_FRAME in bridged case.
2015-07-06 12:46:27 -07:00
Adam Ierymenko
35b5dcf89d
Kill debug line.
2015-07-06 12:39:20 -07:00
Adam Ierymenko
9743db3538
docs
2015-07-06 12:37:37 -07:00
Adam Ierymenko
e5f7c55c54
Documentation in Packet, more work on path push, and clean up ancient legacy support code in Switch.
2015-07-06 12:34:35 -07:00
Adam Ierymenko
f19c3c51d3
Revert slow non-SSE Salsa20 modification since it did not fix Android/ARM issue. Also update Salsa20 comments and clean up a bit.
2015-07-02 09:00:00 -07:00
Adam Ierymenko
7c9949eea3
For @glimberg -- a *possible* fix to the alignment headaches on Android/ARM. If this works we should find a define that can be used to enable it there since it will slow things down on non-x86 other architectures.
2015-07-01 12:29:23 -07:00
Adam Ierymenko
0cbbcf2884
Rename VERB_CMA to the more descriptive VERB_PHYSICAL_ADDRESS_PUSH
2015-06-29 16:01:01 -07:00
Adam Ierymenko
dbee1b38b3
Fix semantics of std::unique() to actually remove duplicates (hidden memory leak?)
2015-06-29 10:21:28 -07:00
Adam Ierymenko
3f71afd0fb
Put multicast txQueue back to list.
2015-06-26 14:26:35 -07:00
Kees Bos
8a68624dae
Fix cert verification check for self signed signatures
2015-06-26 07:22:13 +02:00
Adam Ierymenko
57c7992c78
GitHub issue #191 - kill intra-network multicast rate limits (which were not well supported or easily configurable anyway) -- this is really left over from the old collaborative multicast propagation algorithm. New algorithm (in for a while) has been sender-side replication in which sender "pays" all bandwidth, which intrinsically limits multicast.
2015-06-26 12:36:45 -07:00
Adam Ierymenko
c287ae4d1d
Redo conversion of _networks to a vector. Just use a simple linear search and put the nwid in a pair with the pointer so linear search can be done without pointer chasing. This should be the fastest option for anything less than dozens of networks, and should save memory over the old map.
2015-06-26 11:38:31 -07:00
Moritz Warning
def9cf2a6a
replace vector::erase, was missed in a previous commit (ref #186 )
2015-06-23 00:09:15 +02:00
Adam Ierymenko
4aa8449fe1
Merge branch '_networks_vector' of https://github.com/mwarning/ZeroTierOne into adamierymenko-dev
2015-06-22 10:34:55 -07:00
Moritz Warning
787608b568
use _network function to reduce source code complexity
2015-06-20 16:34:19 +02:00
Moritz Warning
2b04ac5e9b
replace _networks map by vector
...
_networks is usually quite small, using binary search on a vector might be faster comapred to std::map.
This is especially true when using uClibc++, which uses a list.
2015-06-20 16:25:21 +02:00
Adam Ierymenko
7bae95836c
Root server terminology cleanup, and tighten up a security check by checking full identity of peers instead of just address.
2015-06-19 10:23:25 -07:00
Adam Ierymenko
be4f08a548
Merge pull request #186 from mwarning/txQueue_vector
...
replace txQueue list by vector for faster memory access and less allo…
2015-06-18 15:42:12 -07:00
Moritz Warning
0073d0f694
replace txQueue list by vector for faster memory access and less allocations
2015-06-19 00:28:51 +02:00
Adam Ierymenko
87bb0086de
Almost certain fix for GitHub issue #184 on -dev
2015-06-17 12:46:12 -07:00
Adam Ierymenko
a9a390a930
Apply @marning suggested SSE auto-detect to make builds easier on non-x86 platforms: aa2fd044cb
2015-06-01 19:43:06 -07:00
Adam Ierymenko
aab17d9f1f
Kill obsolete amSupernode method -- we now have no differing behaviors.
2015-06-01 19:18:26 -07:00
Adam Ierymenko
ecb6a1d84f
docs
2015-06-01 19:12:20 -07:00
Adam Ierymenko
5341e32729
Fix to GitHub issue #140 -- network preferred relays. Also go ahead and allow RENDEZVOUS from regular peers.
2015-06-01 19:05:27 -07:00
Adam Ierymenko
960ceb4791
Rest of GitHub issue #140 implementation.
2015-06-01 17:50:44 -07:00
Adam Ierymenko
318c2f025b
Call it _relays since there might be other kinds later.
2015-06-01 17:09:37 -07:00
Adam Ierymenko
5bc89034bc
Always ping / contact network preferred relays (if any).
2015-06-01 16:53:58 -07:00
Adam Ierymenko
b3b9af0dd8
Fix for GitHub issue #170
2015-06-01 11:56:15 -07:00
Adam Ierymenko
5e3c6d9e0d
Some nodeJS work, and apply fix from GitHub issue #166 plus a small optimization to avoid repeated calls to _allMulticastGroups().
2015-05-25 14:21:05 -07:00
Adam Ierymenko
af1d29cc6f
Remove obsolete method.
2015-05-25 11:54:32 -07:00
Adam Ierymenko
d8783b14eb
Build fix.
2015-05-22 15:46:06 -07:00
Adam Ierymenko
6867922d9e
typo
2015-05-22 15:33:33 -07:00
Adam Ierymenko
9774f789f2
TCP fallback tunneling is now working. That hurt more than expected.
2015-05-22 14:52:23 -07:00
Adam Ierymenko
cdec05af24
One second delay between NAT-t events.
2015-05-22 13:12:14 -07:00
Adam Ierymenko
196f27f1f0
Add delay to NAT-t escalation stuff to try to address GitHub issue #167
2015-05-22 13:11:55 -07:00
Adam Ierymenko
d9006712f6
Completely factor out "desperation" from the core. I thought of a significantly simpler way to move all of this logic entirely into the containing service, liberating the core from any concern over the nature of its pipe to the outside world.
2015-05-21 15:58:26 -07:00