Commit Graph

24 Commits (0c869600df6fcb4b53a05c79f312aaa046ba35b6)

Author SHA1 Message Date
Jeff 49b9ad7197
tun code refactor (#1495)
* partial tun code refactor

* take out the trash

* move vpn platform code into llarp/vpn/platform.cpp

* fix hive build

* fix win32

* fix memory leak on win32

* reduce cpu use

* make macos compile

* win32 patches:

* use wepoll for zmq
* use all cores on windows iocp read loop

* fix zmq patch for windows

* clean up cmake for win32

* add uninstall before reinstall option to win32 installer

* more ipv6 stuff

* make it compile

* fix up route poker

* remove an unneeded code block in macos wtf

* always use call to system

* fix route poker behavior on macos

* disable ipv6 on windows for now

* cpu perf improvement:

* colease calls to Router::PumpLL to 1 per event loop wakeup

* set up THEN add addresses

* emulate proactor event loop on win32

* remove excessively verbose error message

* fix issue #1499

* exclude uv_poll from win32 so that it can start up

* update logtag to include directory

* create minidump on windows if there was a crash

* make windows happy

* use dmp suffix on minidump files

* typo fix

* address feedback from jason
* use PROJECT_SOURCE_DIR instead of CMAKE_SOURCE_DIR
* quote $@ in apply-patches in case path has spaces in it

* address feedback from tom

* remove llarp/ev/pipe
* add comments for clairification
* make event loop queue size constant named
4 years ago
Jeff Becker e13e886df9
fix up event loop crap so that unit tests pass 4 years ago
Thomas Winget c2a30692cf Implement upstream DNS using libunbound 4 years ago
Jeff Becker 95e55a2544
consistent spelling and use std::max 4 years ago
Jeff Becker acecb23eb3
make libuv event loop logic queue size configurable.
remove logic constructor that is no-op.
add constant for default logic queue size
add constant for transit hop queue size
4 years ago
Jeff Becker f04407f183
use only 1 uv_async_t for event loop wakeups
flush logic calls in there too as this was causing unit tests to hang
4 years ago
Stephen Shelton aee96e53a3
Refactor Addr -> IpAddress/SockAddr 4 years ago
Stephen Shelton 273270916e
The Great Wall of Blame
This commit reflects changes to clang-format rules. Unfortunately,
these rule changes create a massive change to the codebase, which
causes an apparent rewrite of git history.

Git blame's --ignore-rev flag can be used to ignore this commit when
attempting to `git blame` some code.
5 years ago
Thomas Winget 71bb0dd520 implement timers using libuv
So far only a bit of the code using timers has been modified to use
the new libuv-based timers.  Also only the non-Windows case has been
implemented.  Seems to be working though, so it's a good time to commit.
5 years ago
Jeff Becker cdfdfa1068 use thread queue 5 years ago
Jeff Becker cec36b62b5 make logic and net thread one in the same 5 years ago
Thomas Winget 6acf7bff7e Track and log UV event loop ticks in debug builds 5 years ago
Jeff Becker 56dce90de9
add trace log level for tracking logic thread jobs 5 years ago
Jeff Becker 7ee026fa50
make path builds work again 5 years ago
jeff 788bc0f912 Merge remote-tracking branch 'upstream/dev' into ed25519-signing
also stop using libuv's uv_loop_new as it is deprecated
5 years ago
jeff 3c1d5518d8 fix windows port and make it compile 5 years ago
jeff 14c9ef15ed try calling stuff in logic thread from event loop 5 years ago
Jeff Becker 4bf6882c8a
more async cryptography 5 years ago
Jeff Becker aea4542edd
more 5 years ago
Michael 2cc180b6a4
Add FindLibUV and migrate 5 years ago
Jeff Becker 53d2034a73
fix up libuv close logic 5 years ago
Michael 26e16d5389
Fix event loop tests post-libuv 5 years ago
Jeff Becker 79cdff20a4
fix tpyos and pass event loop by l value 5 years ago
Jeff Becker 9deafa4cb8
use libuv 5 years ago