Commit Graph

121 Commits

Author SHA1 Message Date
35c4e28f31 Mark geo-redirected paths as suboptimal and do not report that we have a peer if all we have is one of these. Also a few other small fixes. 2015-11-09 14:25:28 -08:00
83c6b7ab3d Use bigger UDP buffer on bigger x64 machines. Keep old value elsewhere since these are likely to be smaller boxes. 2015-11-05 17:41:07 -08:00
3e22fee842 Integrate deferred background processing into main OneService implementation. 2015-11-05 12:41:14 -08:00
a994573a43 Eliminate some more dead code. We may do path trust, but not like that. 2015-10-29 09:42:15 -07:00
16bc3e0398 Factor out RemotePath subclass of Path -- no longer needed, just cruft. 2015-10-27 15:00:16 -07:00
7295fcfa86 Merge Phy<> from netcon. 2015-10-27 12:50:23 -07:00
0ffbd05c0e --wtf; prevent roots from TCP fallback 2015-10-27 12:21:57 -07:00
29b966894c (1) Fix bug in geo-ip service that prevented cache lookup, (2) fix problem in SelfAwareness (will need to test ALL versions in the wild with this), and (3) add more TRACE instrumentation to Cluster. 2015-10-23 13:03:34 -07:00
7711eba297 More cluster wiring... 2015-10-22 16:02:01 -07:00
cae58f43f1 More World stuff, and mkworld. 2015-10-13 08:49:36 -07:00
7394ec6f6a Prep in controller code to run tests. 2015-10-06 15:56:18 -07:00
5076c49210 Peer serialization and related changes. 2015-10-01 15:40:54 -07:00
72e7e36a5b No reason to randomly pick uPnP secondary port. In fact it would likely cause problems on restarts and uPnP rule bloat. 2015-10-01 14:40:28 -07:00
a7409850d6 Get trim() out of core where it is not needed. 2015-10-01 12:37:18 -07:00
f69454ec98 (1) Make ZT_ naming convention consistent (get rid of ZT1_), (2) Make local interface a full sockaddr_storage instead of an int identifier, which turns out to be better for multi-homing and other uses. 2015-09-24 16:21:36 -07:00
423412df98 Pick a random secondary UDP port for uPnP mapped traffic because of broken routers. 2015-09-23 15:16:20 -07:00
7821d1cbdd . 2015-09-23 14:44:13 -07:00
80dc7fb675 Pick random port on -p0 2015-09-23 14:38:16 -07:00
367ffde00c Plumb through localInterfaceId to track local interfaces corresponding with remote addresses. 2015-09-23 13:49:56 -07:00
9dc2ef5549 Rename some stuff in Phy since it can be used with any stream socket. 2015-09-10 15:55:48 -07:00
9a723be263 Add socketpair support to Phy. 2015-09-10 13:18:57 -07:00
4838cbc350 Unix domain sockets in Phy<> 2015-09-02 14:32:01 -07:00
620562f7cf Because Windows, because Windows. Now it upgrades correctly from 1.0.1, including automatic driver update from NDIS5 to NDIS6. Also a bit more robust on creating new ports, just in case. 2015-07-30 17:00:57 -07:00
8169b35482 Kill the devcon.exe dependency by dynamically loading cfgmgr32, newdev, and setupapi and using these functions directly. 2015-07-30 11:31:38 -07:00
569c5e77fd Add binary build of libminiupnpc for Mac x64. 2015-07-28 14:48:26 -07:00
fe6d5b1402 UPNP/NAT-PMP support with libminiupnpc (if built with it) -- GitHub issue #64 2015-07-28 14:32:02 -07:00
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. 2015-07-28 10:29:25 -07:00
5ef806c43c Fix addLocalInterfaceAddress call in OneService on Windows 2015-07-16 19:20:43 -07:00
0b354803f3 Clean up some YAGNI issues with implementation of GitHub issue #180, and make best path choice aware of path rank. 2015-07-13 10:03:04 -07:00
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
25a067c8c3 Eliminate debug printf(). 2015-07-06 17:37:32 -07:00
91fa643131 Minor fix to Windows local adapter address enumeration. 2015-07-06 17:36:58 -07:00
f881cdd767 Add new .h file to VS build, and Windows side of local interface address enumeration. 2015-07-06 17:22:37 -07:00
a87cd2d094 Unix side of local interface address awareness for GitHub issue #180. 2015-07-06 16:32:34 -07:00
dbee1b38b3 Fix semantics of std::unique() to actually remove duplicates (hidden memory leak?) 2015-06-29 10:21:28 -07:00
7213a6cf0b Make max HTTP message size (max update size) larger since Windows MSI is about 8MB already. 2015-06-03 17:20:30 -07:00
7e647c5303 NOHUP-ify the child process on OSX auto-update. 2015-06-03 16:37:24 -07:00
fe87136870 Auto-update fix -- signature is in hex. 2015-06-03 16:25:16 -07:00
c5a3e80113 Linux installer tweaks, and Mac updater tweak. 2015-06-02 16:54:27 -07:00
91f02d699e Right now only FreeBSD can use BSDEthernetTap, which will probably get renamed accordingly. NetBSD and OpenBSD do not support tap, only tun, so they will have to wait. 2015-05-25 11:11:37 -07:00
d8783b14eb Build fix. 2015-05-22 15:46:06 -07:00
9774f789f2 TCP fallback tunneling is now working. That hurt more than expected. 2015-05-22 14:52:23 -07:00
50aedda54d Basic TCP fallback -- now to test. 2015-05-21 18:33:52 -07:00
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
0f7dcb3ef2 Add some proxy debugging, and auto-resolve and periodically re-resolve TCP fallback tunnel hostname. 2015-05-21 15:22:41 -07:00
905d2e91e5 Windows auto-update integration into OneService. 2015-05-20 20:17:56 -07:00
1213073916 Apple auto-update stuff, now for Windows. 2015-05-20 19:38:49 -07:00
b6698d8415 Ground work for reincorporating software updater for select platforms. 2015-05-20 16:35:33 -07:00
c7eb5f0c81 Windows build warning removal, be more defensive in Windows tap driver code, and clean up service start/stop in installer. 2015-05-19 18:13:20 -07:00
0af18b164c /var/db is for all of xBSD 2015-05-17 16:06:29 -07:00