Commit Graph

464 Commits

Author SHA1 Message Date
Adam Ierymenko
6bb1598fa3
Another fix for routing and interface issues on MacOS 2021-09-15 11:50:54 -04:00
Adam Ierymenko
1b8917a57c
Fix for MacOS interface setup and config timing bugs. 2021-09-09 09:30:48 -04:00
Adam Ierymenko
1a1d7d9ada
Merge branch 'dev' of github.com:zerotier/ZeroTierOne into dev 2021-09-02 15:23:38 -04:00
Adam Ierymenko
d1c88971ae
Possible Mac route borking fix. 2021-09-02 15:23:26 -04:00
Joseph Henry
e1af003e4f
Consolidation of multipath logic. Better system separation 2021-09-01 21:37:49 -07:00
Joseph Henry
b6680b18e7
Merge pull request #1304 from skunkwerks/dev
BSD: add debug fprintf for all external commands
2021-08-30 10:11:53 -07:00
Adam Ierymenko
126669b718
MTU fix 2021-08-13 15:12:07 -04:00
Adam Ierymenko
63a44c9268
Fix feth max MTU sysctl. 2021-07-30 18:44:23 -04:00
Travis LaDuke
8866fbd618 Merge branch 'bind' of https://github.com/thoradia/ZeroTierOne into thoradia-bind 2021-06-29 11:22:46 -07:00
Adam Ierymenko
8885149cd3
Revert "Revert "Revert a change to LinuxEthernetTap threading to eliminate out of order packet issues on some systems.""
This reverts commit 89ddf2991b.
2021-06-28 19:29:53 -04:00
Adam Ierymenko
89ddf2991b
Revert "Revert a change to LinuxEthernetTap threading to eliminate out of order packet issues on some systems."
This reverts commit 0461b24db3.
2021-06-28 17:59:28 -04:00
Adam Ierymenko
0461b24db3
Revert a change to LinuxEthernetTap threading to eliminate out of order packet issues on some systems. 2021-06-28 17:15:34 -04:00
Grant Limberg
1859365f9d same IPv6 temp address detection code for macOS works on FreeBSD.
update ifdefs & go
2021-05-27 16:43:12 -04:00
Grant Limberg
ab87b8f881 Don't bind to temporary IPv6 addresses (linux) 2021-05-26 15:50:14 -07:00
Grant Limberg
b8b65da51c
Don't bind temporary IPv6 addresses (macOS) 2021-05-26 11:01:44 -07:00
Grant Limberg
198e6f765c Don't bind to temporary Ipv6 addresses (windows) 2021-05-26 09:15:24 -07:00
Joseph Henry
13481cea18
Fix (some) compile-time warnings on Windows 2021-05-03 21:12:45 -07:00
Joseph Henry
7faaa55436 Merge branch 'dev' of https://github.com/zerotier/ZeroTierOne into dev-multipath 2021-05-03 19:41:41 -07:00
Joseph Henry
29e5880d8b
Match formatting of Bond-related sources to ZeroTier standard (no functional changes) 2021-05-03 17:59:31 -07:00
Grant Limberg
5fb814a04f
Merge pull request #1388 from emundo/fix/1387-dns-issue
Fix macOS DNS issue
2021-04-28 13:19:09 -07:00
Grant Limberg
c69d2df0a2
Merge pull request #1390 from jonathonf/linux-tap-link-ordering
Set MAC address before bringing up Linux TAP link
2021-04-28 13:17:38 -07:00
Adam Ierymenko
46a7136b0d
Merge branch 'dev' of github.com:zerotier/ZeroTierOne into dev 2021-04-28 16:16:17 -04:00
Adam Ierymenko
d2974f2e60
Do not inherit open file descriptors on fork() in MacEthernetTapAgent 2021-04-28 16:16:02 -04:00
Jonathon Fernyhough
bac57e355d
Set MAC address before bringing up Linux TAP link
This corrects the flow for bringing up a TAP device under Linux by
setting the device MAC address prior to bringing up the device.

Closes #1314
2021-04-21 20:46:13 +01:00
Jonathon Fernyhough
b8b1f64959 Revert "Reorder Linux TAP link sequence"
This reverts commit 9374e45449.
2021-04-21 20:45:17 +01:00
Robert.Schreib
4e8640b380
Handle case where no old DNS servers exist 2021-04-21 13:49:55 +02:00
Jonathon Fernyhough
9374e45449
Reorder Linux TAP link sequence
This corrects the flow for bringing up a TAP device under Linux.

Closes #1314
2021-04-21 12:30:51 +01:00
Robert.Schreib
31ffe4403c
Check if DNS servers need to be Applied on macOS 2021-04-21 12:02:31 +02:00
Dave Cottlehuber
b37e9de24d BSD: add debug fprintfs for external commands 2021-04-15 06:37:01 +00:00
Adam Ierymenko
79e2fd4586 Automatically detect Ethernet tap friendly name in Windows shouldBind stuff. 2021-03-16 10:12:55 -04:00
Adam Ierymenko
5391e95fce
Typo fix. 2020-11-30 15:52:56 -05:00
Adam Ierymenko
954f6a77e5
Another Linux fix. 2020-11-30 15:46:16 -05:00
Adam Ierymenko
21993819a5
Possible fix for Linux deadlock. 2020-11-30 15:41:47 -05:00
Rosen Penev
2aecb547d9
LinuxNetLink: Add cerrno header for (str)errno
Fixes compilation under libcxx.
2020-11-30 01:38:45 -08:00
Grant Limberg
5188c7d41f com & com security already initialized by here 2020-11-25 20:06:43 -08:00
Grant Limberg
0456a71295 Windows feedback loop fix 2020-11-25 11:05:36 -08:00
Adam Ierymenko
d64c5a92c6
Merge pull request #1233 from dosuperuser/improvement/optimizations
Minor C++ optimizations
2020-11-24 19:24:36 -05:00
Grant Limberg
95da2bcbcf move CoUninitialize to the proper place at the end of the tap thread 2020-11-19 14:13:16 -08:00
Grant Limberg
a9e4fb0ed9 Fix multiple networks on Windows 2020-11-19 14:10:34 -08:00
Adam Ierymenko
a0c78da1ad
Revert "Tune thread count based on hardware concurrency."
This reverts commit 7b14aeb53e.
2020-11-18 22:54:05 -05:00
Adam Ierymenko
7b14aeb53e
Tune thread count based on hardware concurrency. 2020-11-18 22:42:00 -05:00
Adam Ierymenko
f934a09baa
Build fix. 2020-11-18 22:32:57 -05:00
Adam Ierymenko
414c248cc5
Try another approach... 2020-11-18 22:26:06 -05:00
Adam Ierymenko
ca428233ba
Revert "Try another optimization in LinuxEthernetTap."
This reverts commit a390629371.
2020-11-18 22:24:18 -05:00
Adam Ierymenko
3712f9b318
Revert "Shutdown fix."
This reverts commit 11545bdb5d.
2020-11-18 22:24:09 -05:00
Adam Ierymenko
11545bdb5d
Shutdown fix. 2020-11-18 22:13:06 -05:00
Adam Ierymenko
a390629371
Try another optimization in LinuxEthernetTap. 2020-11-18 22:06:17 -05:00
Adam Ierymenko
e3e188109d Build fix. 2020-11-18 10:14:39 -08:00
Adam Ierymenko
7cbbc38b89
Reduce mutex use in LinuxEthernetTap. Try to squeeze a bit more powah out of it. 2020-11-18 12:50:34 -05:00
Adam Ierymenko
4bd58d47cf Revert "Try factoring out a mutex to see if its faster."
This reverts commit 982c32322b.
2020-11-17 12:52:48 -08:00
Adam Ierymenko
982c32322b
Try factoring out a mutex to see if its faster. 2020-11-17 15:48:15 -05:00
Adam Ierymenko
2fcc344299
Some buffer tuning. 2020-11-17 15:34:42 -05:00
Adam Ierymenko
3acd901c88
Build fixes. 2020-11-17 12:13:08 -05:00
Adam Ierymenko
0795dbf5f1 Revert "Moar threadz"
This reverts commit 101a3a7d74.
2020-11-16 19:06:52 -08:00
Adam Ierymenko
101a3a7d74
Moar threadz 2020-11-16 21:49:51 -05:00
Adam Ierymenko
2da162bed7
Split Linux tap receive into two threads: one reader, one processor. 2020-11-16 21:40:25 -05:00
Adam Ierymenko
5282e06fd4
Tun/tap flags fix. 2020-11-16 19:08:09 -05:00
Adam Ierymenko
dc806dd718
Try pipelining tap reads on Linux for a little more speed. 2020-11-16 18:56:00 -05:00
Adam Ierymenko
6b67cb0e2a Linux build fixes. 2020-11-16 11:11:52 -08:00
Adam Ierymenko
250f0ef9db
Remove dead code. 2020-11-16 13:51:27 -05:00
Adam Ierymenko
4aab9121d9 Linux build fixes, and new route code seems to work. 2020-11-13 22:25:12 -05:00
Adam Ierymenko
5ea7ef6b65
Rework Linux route setting to actually consult netlink interface. 2020-11-13 22:06:58 -05:00
Adam Ierymenko
a3875f9965
Add a route DB to LinuxNetLink to make route sync robust. 2020-11-13 21:55:31 -05:00
Adam Ierymenko
3730917dda
LinuxNetLink cleanup 2020-11-13 21:06:34 -05:00
Adam Ierymenko
e8be28734b Linux netlink and route setting... work in progress. 2020-11-13 19:07:54 -05:00
Adam Ierymenko
6c5a097711
Use LinuxNetLink for routes on Linux... still needs testing/debugging on an actual Linux machine. 2020-11-13 18:16:14 -05:00
Adam Ierymenko
eadca9dd75
Build fix. 2020-11-11 15:29:01 -05:00
Adam Ierymenko
59dd71187e
Build fix. 2020-11-11 15:14:08 -05:00
Adam Ierymenko
36e167013a
More Linux tap shotgun debugging. 2020-11-11 15:12:16 -05:00
Adam Ierymenko
2d489a8679
Another possible workaround for what seems to be a Linux bug in some newer kernels. 2020-11-11 14:42:56 -05:00
Adam Ierymenko
d735a1d04c
Reorder some stuff in LinuxEthernetTap as possible workaround for MAC-set weirdness. 2020-11-11 12:49:56 -05:00
Adam Ierymenko
52679d2784
Simplify and fix managed route logic. 2020-11-02 19:02:07 -05:00
Adam Ierymenko
763d1cc3dc
Some more changes for slow network leaving on Mac. 2020-11-02 14:00:35 -05:00
Adam Ierymenko
fe5aad3cef
Some Mac feth tap changes to hopefully fix slow-leave problem. 2020-10-30 10:40:34 -04:00
Adam Ierymenko
a973a6e10e Leave feth devices over feth10000 alone. 2020-10-08 12:04:57 -04:00
Adam Ierymenko
69b2fcd5af Get rid of obsolete musl libc fix. 2020-09-23 21:58:51 -04:00
thoradia
f2734dc3d8
add ports to addresses specified by the bind setting 2020-09-08 01:49:19 +02:00
Adam Ierymenko
06730c7d1d BSL date bump 2020-08-20 12:51:39 -07:00
Grant Limberg
8d0a3563e4
Merge branch 'dns' into dev 2020-08-12 13:56:21 -07:00
Grant Limberg
c0c215c83c
single dns config per network 2020-08-12 13:08:47 -07:00
Grant Limberg
30b18d925f
clean up some debug logging 2020-08-12 09:16:18 -07:00
Grant Limberg
137d05e799
add setDNS stubs for linux/bsd 2020-08-12 09:14:10 -07:00
Grant Limberg
d9c4e644de Windows DNS 2020-08-11 18:55:42 -07:00
Joseph Henry
edd960566a Improve bond tracing, fix bond initialization bugs, remove vestigial debug code 2020-08-06 18:10:40 -07:00
Grant Limberg
6868e98904 Get stuff building on Windows
Been a minute since any of this has been updated
2020-08-05 16:04:02 -07:00
Grant Limberg
85a5b0b948
Remove dns config on shutdown
Also add calls to MacDNSHelper to the kext tap
2020-08-05 14:49:45 -07:00
Grant Limberg
b9a1719cb1
Let's make sure to clean up our memory 2020-08-05 14:42:19 -07:00
Grant Limberg
d6e3164ea1
remove initial attempt at dns config via scutil 2020-08-05 14:42:09 -07:00
Grant Limberg
302ac8fefe
DNS config support on macOS 2020-08-05 14:26:11 -07:00
Grant Limberg
d098a99d09
fix memory init issue
and another place where dns data needs to be copied
2020-07-31 11:42:03 -07:00
Suad Halilovic
ffebcd247f 2020/07/16, Minor optmizations 2020-07-16 18:31:56 +02:00
Joseph Henry
decd5add2a Fix segfault on unique interface name list generation (for multipath) 2020-07-14 17:05:05 -07:00
Joseph Henry
a33a494d60 Adjust terminology 2020-06-17 14:54:13 -07:00
Joseph Henry
58d567c331 Formatting 2020-05-14 20:09:25 -07:00
Joseph Henry
a50e8e9878 Add Bonds, Slaves, and Flows 2020-05-12 01:35:48 -07:00
Joseph Henry
de9cfbe9b0 Merge dev into multipath 2020-05-12 00:08:52 -07:00
Joseph Henry
32a78b5f61 Fix preprocessor typo in previous commit 2020-03-31 20:34:48 -07:00
Joseph Henry
54f9f2ad53 Add special case for Ubiquiti routers in platformDefaultHomePath() 2020-03-31 20:27:41 -07:00
Adam Ierymenko
1b6b38e395
Add default addIps() implementation to EthernetTap base class to fix build on systems that do not need addIps(). 2019-08-28 07:43:18 -07:00
Joseph Henry
d8de837c60 LinuxEthernetTap addIps virtual function fix for SYNOLOGY builds 2019-08-27 14:43:30 -07:00