Adam Ierymenko
385f1410d2
Expose world info in JSON.
2015-10-13 12:33:15 -07:00
Adam Ierymenko
5d2f523e81
World stuff...
2015-10-13 12:10:44 -07:00
Adam Ierymenko
cae58f43f1
More World stuff, and mkworld.
2015-10-13 08:49:36 -07:00
Adam Ierymenko
7394ec6f6a
Prep in controller code to run tests.
2015-10-06 15:56:18 -07:00
Adam Ierymenko
5076c49210
Peer serialization and related changes.
2015-10-01 15:40:54 -07:00
Adam Ierymenko
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
Adam Ierymenko
a7409850d6
Get trim() out of core where it is not needed.
2015-10-01 12:37:18 -07:00
Adam Ierymenko
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
Adam Ierymenko
423412df98
Pick a random secondary UDP port for uPnP mapped traffic because of broken routers.
2015-09-23 15:16:20 -07:00
Adam Ierymenko
7821d1cbdd
.
2015-09-23 14:44:13 -07:00
Adam Ierymenko
80dc7fb675
Pick random port on -p0
2015-09-23 14:38:16 -07:00
Adam Ierymenko
367ffde00c
Plumb through localInterfaceId to track local interfaces corresponding with remote addresses.
2015-09-23 13:49:56 -07:00
Adam Ierymenko
9dc2ef5549
Rename some stuff in Phy since it can be used with any stream socket.
2015-09-10 15:55:48 -07:00
Adam Ierymenko
9a723be263
Add socketpair support to Phy.
2015-09-10 13:18:57 -07:00
Adam Ierymenko
4838cbc350
Unix domain sockets in Phy<>
2015-09-02 14:32:01 -07:00
Adam Ierymenko
b4487cefc9
Document rules requirement in controller.
2015-08-25 09:46:59 -07:00
Adam Ierymenko
867258de8b
Document clock convenience field.
2015-08-25 09:44:21 -07:00
Adam Ierymenko
4da794b389
Add authorizedMemberCount to controller network config records.
2015-08-19 11:43:56 -07:00
Adam Ierymenko
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
Adam Ierymenko
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
Adam Ierymenko
2599b1bacc
Add CLI support for /explicit/urls (automatically outputs JSON in this case), and some cleanup.
2015-07-28 17:10:56 -07:00
Adam Ierymenko
569c5e77fd
Add binary build of libminiupnpc for Mac x64.
2015-07-28 14:48:26 -07:00
Adam Ierymenko
fe6d5b1402
UPNP/NAT-PMP support with libminiupnpc (if built with it) -- GitHub issue #64
2015-07-28 14:32:02 -07:00
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.
2015-07-28 10:29:25 -07:00
Adam Ierymenko
a061aa3d87
Remove "members" from Network record and instead enumerate members via specific query to /network/nwid/member sub-path. More RESTful, scalable, and compatible with how OnePoint code works.
2015-07-21 12:57:01 -07:00
Grant Limberg
5ef806c43c
Fix addLocalInterfaceAddress call in OneService on Windows
2015-07-16 19:20:43 -07:00
Adam Ierymenko
0db7c94c90
Add memberRevision stuff to JSON output, and update docs.
2015-07-16 17:42:47 -07:00
Adam Ierymenko
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
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
25a067c8c3
Eliminate debug printf().
2015-07-06 17:37:32 -07:00
Adam Ierymenko
91fa643131
Minor fix to Windows local adapter address enumeration.
2015-07-06 17:36:58 -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
a87cd2d094
Unix side of local interface address awareness for GitHub issue #180 .
2015-07-06 16:32:34 -07:00
Adam Ierymenko
30e4a188d0
ipLocalRoutes now exposed via network objects in JSON controller API, and documentation changes.
2015-06-29 15:34:26 -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
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
Kees Bos
a425bbc673
Renamed supernode to rootserver
2015-05-06 12:05:20 +02:00
Adam Ierymenko
8a9715f183
Rename ruleId to ruleNo and optimize some indexes in Sqlite3 schema.
2015-06-13 10:05:34 +02:00
Kees Bos
42390e662b
Pickup return code from handleControlPlaneHttpGET and handleControlPlaneHttpPOST
2015-06-13 03:14:06 +02:00
Kees Bos
0d0af07ce9
Get deletion of networks in controller going
...
Multiple statements in a sqlite3_prepare_v2 is not usable. Only
the first statement will be executed.
Since the schema now uses 'ON DELETE CASCADE', there's only
one statement needed.
If multiple statements are needed, there should be either multiple
sqlite3_prepare_v2 calls be used or the sqlite3_exec function.
2015-06-11 11:49:13 +02:00
Adam Ierymenko
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
Adam Ierymenko
7e647c5303
NOHUP-ify the child process on OSX auto-update.
2015-06-03 16:37:24 -07:00
Adam Ierymenko
fe87136870
Auto-update fix -- signature is in hex.
2015-06-03 16:25:16 -07:00
Adam Ierymenko
c5a3e80113
Linux installer tweaks, and Mac updater tweak.
2015-06-02 16:54:27 -07:00
Adam Ierymenko
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
Adam Ierymenko
d8783b14eb
Build fix.
2015-05-22 15:46:06 -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
50aedda54d
Basic TCP fallback -- now to test.
2015-05-21 18:33:52 -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
Adam Ierymenko
0f7dcb3ef2
Add some proxy debugging, and auto-resolve and periodically re-resolve TCP fallback tunnel hostname.
2015-05-21 15:22:41 -07:00