Adam Ierymenko
6df9546742
Fix for missing broadcast address on Linux Ethernet taps.
2014-09-04 13:36:25 -04: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
00b16f6aa6
Fix for GitHub issue #110 -- failure to bind IPv6 now non-fatal
2014-08-27 20:09:56 -04:00
Adam Ierymenko
eadff71d37
Another fix to Network life cycle.
2014-08-21 18:07:27 -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
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
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
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
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
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
adfb71fa6b
Compile for for TRACE, remove old TESTNET cruft.
2014-08-07 08:49:43 -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
92d9ad4a7f
Some tap interface changes and integration into main.cpp for *nix systems.
2014-08-06 16:24:30 -07:00
Adam Ierymenko
8a804b5257
(1) Disable firewall openers (its easy to re-enable), (2) Do some prep work for making supernode topology hot-updatable.
2014-08-05 14:05:50 -07:00
Adam Ierymenko
e3c5ada3a7
Add signatures to Dictionary, and fix unhex() API in Utils to be a little safer.
2014-08-05 09:56:49 -07:00
Adam Ierymenko
98d426e1d5
Path fixes in osnet/ stuff
2014-07-31 14:31:32 -07:00
Adam Ierymenko
b80c229d87
Tons of code cleanup, refactor Network to use EthernetTapFactory, probably also fix GitHub issue #90
2014-07-31 14:09:32 -07:00
Adam Ierymenko
9b93141dd0
Upgrade LZ4 to latest version.
2014-07-30 15:34:15 -07:00
Adam Ierymenko
f2d372545a
Salsa20 SSE Windows build fix -- turns out you can't be as loose with SSE intrinsics in Visual Studio
2014-07-26 20:07:38 -07:00
Adam Ierymenko
538e8a86c8
Move node/osdep/ to sys/
2014-07-26 13:10:41 -07:00
Adam Ierymenko
27aa6ea44e
Linux routing table support work.
2014-07-25 16:16:05 -04:00
Adam Ierymenko
7475c4047e
A bunch more osdep/ work...
2014-07-23 09:14:53 -07:00
Adam Ierymenko
5e58a7d54a
Split UnixEthernetTap by platform to get rid of ifdef spaghetti.
2014-07-21 09:18:33 -07:00
Adam Ierymenko
6a174483d8
Ethernet tap factory interface.
2014-07-18 17:26:08 -07:00
Adam Ierymenko
a76d9d4408
Move OS-dependent implementations of generic interfaces to osdep/ in preparation for TapFactory refactor.
2014-07-17 17:19:18 -07:00
Adam Ierymenko
1189f4a568
Set/delete functionality in BSD routing table.
2014-07-17 17:17:59 -07:00
Adam Ierymenko
51766e6549
BSD routing table works... that hurt much worse than it should have.
2014-07-17 13:08:37 -07:00
Adam Ierymenko
d315156733
BSD routing table implementation work.
2014-07-16 15:13:53 -07:00
Adam Ierymenko
4c4675e3ac
Cleanup, add __BSD__
2014-07-15 20:49:13 -07:00
Adam Ierymenko
12692c551e
SSE optimized Salsa20 -- anywhere from 20% to 50% faster than plain C version
2014-07-15 17:56:09 -07:00
Adam Ierymenko
00f9305ad8
Routing table base class.
2014-07-15 13:48:42 -07:00
Adam Ierymenko
0097949ba9
.
2014-07-15 12:32:06 -07:00
Adam Ierymenko
1b33a9e807
.
2014-07-15 12:21:24 -07:00
Adam Ierymenko
4a0b33561c
Starting to define system network stack interface.
2014-07-13 12:57:30 -07:00
Adam Ierymenko
f82c7006ea
Leave IP addresses alone instead of deleting them from tap if they are not members of any of the networks under management.
2014-07-02 15:59:08 -07:00
Adam Ierymenko
681af253ef
Fix for GitHub issue #88 - actually do in the code what the web UI expects it to do.
2014-07-01 09:27:33 -07:00
Adam Ierymenko
88bdb81791
Keep track of basic aliveness for peers regardless if direct or indirect connectivity and use this for multicast propagation. Also consolidate adding of active bridges via the same functor as regular multicast next hops.
2014-06-30 11:31:04 -07:00
Adam Ierymenko
458f6ae7c3
Only add active bridges to top of MC propagation list if they are alive. Otherwise a dead active bridge might kill multicast for us.
2014-06-26 18:13:48 -07:00
Adam Ierymenko
38433e85bf
More little stuff in crypto code.
2014-06-26 17:23:10 -07:00