Adam Ierymenko
477feee8a3
Some work on CIRCUIT_TEST, and a significant speedup to Poly1305.
11 years ago
Adam Ierymenko
9dc2ef5549
Rename some stuff in Phy since it can be used with any stream socket.
11 years ago
Adam Ierymenko
9a723be263
Add socketpair support to Phy.
11 years ago
Adam Ierymenko
da9a720c3f
Hash table bug fix, and add copy constructor and assignment operator for principle of least surprise.
11 years ago
Adam Ierymenko
4838cbc350
Unix domain sockets in Phy<>
11 years ago
Adam Ierymenko
3947807b1f
A simple and fast Hashtable, tested but not yet integrated with anything.
11 years ago
Adam Ierymenko
40d5c79b62
Enable SO_NO_CHECK if available to skip UDP checksum on packet send for slight performance improvement. We do our own cryptographically secure authentication so UDP checksum is worthless.
11 years ago
Adam Ierymenko
d78e3bb307
Disable HTTP test in selftest since it works, and GitHub issue #207 .
11 years ago
Adam Ierymenko
feddd946f9
For curiosity add Salsa20/8 to benchmarks.
11 years ago
Adam Ierymenko
a9a390a930
Apply @marning suggested SSE auto-detect to make builds easier on non-x86 platforms: aa2fd044cb
11 years ago
Adam Ierymenko
61021fc778
BackgroundResolver test.
11 years ago
Adam Ierymenko
2810cd7c15
Build fixes for G++, building without SQLite3 present, and warning removal.
11 years ago
Adam Ierymenko
e94518590d
First stab of PFS design work with PKC security -- may not implement in 1.0.3 but stubbing out.
11 years ago
Adam Ierymenko
f5848972f9
Windows now builds and runs selftest correctly, and fixed a Windows (and possibly other platforms) issue in Phy<>.
11 years ago
Adam Ierymenko
86c87875a7
OSUtils::resolve()
11 years ago
Adam Ierymenko
60f05518aa
(1) now builds and works on Linux, (2) fix a threading problem causing carsh on shutdown, (3) cleanup in selftest, re-enable Phy and Http tests.
11 years ago
Adam Ierymenko
740121504f
Add a timestamp to netconf cache, fix some SQL queries in NC.
11 years ago
Adam Ierymenko
53cbe485f0
Some cleanup, and bite the bullet and go ahead and write a simple Http client. Need a cross-platform built-in one to do cli right.
11 years ago
Adam Ierymenko
6369c264e2
Rename netconf to controller and NetworkConfigMaster to NetworkController for consistency.
11 years ago
Adam Ierymenko
5572b7ffb6
Simplify Phy<> to get rid of more indirections.
11 years ago
Adam Ierymenko
a61acf36d2
osnet -> osdep
11 years ago
Adam Ierymenko
fe94c9460b
Phy is a better name than Wire, and other cleanup.
11 years ago
Adam Ierymenko
3c1a59fa24
Wire selftest, and passes all tests.
11 years ago
Adam Ierymenko
b6241f6cb1
Build fixes.
11 years ago
Adam Ierymenko
cea3f28155
DB init works now.
11 years ago
Adam Ierymenko
93012b0ee5
Re-incorporation: ZeroTier Networks -> ZeroTier, Inc. [Delaware]
11 years ago
Adam Ierymenko
4e95384ad6
Cleanup, add tristate to config code in Network, and happy new year!
11 years ago
Adam Ierymenko
4a5756e7fb
cleanup
12 years ago
Adam Ierymenko
8d2e20ede6
Get rid of __align stuff in Salsa20 -- not portable, does not seem to help much on newer chips.
12 years ago
Adam Ierymenko
4f0fcc582e
Refactor HttpClient a bit.
12 years ago
Adam Ierymenko
49ef980ecf
Scale back Salsa20 benchmark a bit to not take too long on slow boxes.
12 years ago
Adam Ierymenko
12692c551e
SSE optimized Salsa20 -- anywhere from 20% to 50% faster than plain C version
12 years ago
Adam Ierymenko
7831c4bfef
Cleanup, dead code removal, some pretty insignificant security stuff that's based on recommendations.
12 years ago
Adam Ierymenko
abc82d6a52
IPC changes and SocketManager changes all build!
12 years ago
Adam Ierymenko
b5c3a92be2
Boring stuff: update dates in copyrights across all files.
12 years ago
Adam Ierymenko
370dd6c4da
Several things:
...
(1) Add a bunch of tedious type casts to eliminate unnecessary compiler warnings on Windows X64 builds.
(2) Some EthernetTap work to integrate Windows custom IOCTL for multicast group lookup (not done quite yet).
(3) Dump some more info in selftest to make sure our Windows path lookup functions are returning sane results.
12 years ago
Adam Ierymenko
b59a7cf1d8
HTTP self-test.
12 years ago
Adam Ierymenko
518410b7e0
HTTP client works!
12 years ago
Adam Ierymenko
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.
13 years ago
Adam Ierymenko
d496304bbf
Put back rest of selftest.
13 years ago
Adam Ierymenko
719dd2870d
Self-test for certificate of membership.
13 years ago
Adam Ierymenko
c89cdcc3fd
Blech... moving on!
13 years ago
Adam Ierymenko
1ed8a22d19
And then it turns out to be too slow on a slower 32-bit machine... we do want to do tablets eventually.
13 years ago
Adam Ierymenko
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.
13 years ago
Adam Ierymenko
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.
13 years ago
Adam Ierymenko
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.
13 years ago
Adam Ierymenko
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.
13 years ago
Adam Ierymenko
0e43e5e8f2
Rest of work on new hashcash based identity scheme.
13 years ago
Adam Ierymenko
b0187f4472
Hashcash-based identity, work in progress... committing to test speed on other boxes.
13 years ago
Adam Ierymenko
141b858737
Self-test fixes for new packet armor/dearmor functions that combine old encrypt and MAC functions.
13 years ago