Commit Graph

3207 Commits (50f4b420ba4bffb1e98d33c18cdf7aeea4197ddd)

Author SHA1 Message Date
Jeff Becker 950006c036
reduce log levels at runtime 5 years ago
Jeff 512a350783
Merge pull request #953 from majestrate/try-preventing-router-lockup-2019-12-07
try fixing router lockup
5 years ago
Jeff Becker c010bf05a6
use correct format string 5 years ago
Jeff Becker f56e543d75
add deadlock checker and revert bencode change from long ago 5 years ago
Jeff Becker c5f198cfa1
disable absl decorator in release 5 years ago
Jeff Becker 2eabe98d9b
add systemd watchdog if enabled on compile time 5 years ago
Jeff Becker 8ceb20452a
add absl annotations 5 years ago
Jeff Becker fe6783eef6
squash possible race condition 5 years ago
Jeff Becker eb87189514
try fixing router lockup 5 years ago
Jason Rhinelander 8d2c22fc72 Replace cppbackport with ghc-filesystem
From https://github.com/gulrak/filesystem which is more up-to-date and
looks better maintained than cppbackport.
5 years ago
Jeff 9c7355ff9c
Merge pull request #951 from majestrate/fix-ip-rewrite-on-snode-2019-12-06
use ipv6 only with ipv6 packets
5 years ago
Jeff 1396b7b857
Merge branch 'dev' into bootstrap-list-2019-12-06 5 years ago
Jeff Becker 7c0fc69ad8
use ipv6 only with ipv6 packets 5 years ago
Stephen Shelton 68a604070b
Merge pull request #945 from notlesh/key_manager_cleanup
Key manager cleanup (post 0.6-rc1)
5 years ago
Stephen Shelton 2c6226f54a Backup SNApp keys when migrating to new ed25519 crypto 5 years ago
Jeff Becker 0afb3b320b
add bootstrap list functionality and utility 5 years ago
Stephen Shelton 11410a2748 Avoid trivial getters/setters in KeyManager 5 years ago
Stephen Shelton 66a058a2af Make format 5 years ago
Jeff Becker 32da9e0817
reduce window 5 years ago
Jeff Becker 9be4092a2a
more close changes 5 years ago
Jeff Becker 3410f25fd0
close links lazy 5 years ago
Jeff Becker 87eab87b7f
only close outbound links 5 years ago
Jeff Becker 98d7116ffb
fix typo 5 years ago
Jeff Becker 39ab82ed8c
close sessions to non essential nodes 5 years ago
Stephen Shelton eb5184ee09 Reinstate link test / update to use KeyManager 5 years ago
Jeff Becker 0c5c1aab1b
remove unneeded log statement 5 years ago
Stephen Shelton 23fc2ad042 Init key manager before InitOutboundLinks are configured 5 years ago
Jason Rhinelander fd02662d9f
Bump default netid to gamma for 0.6 5 years ago
Jeff Becker 847ab3a47e
make it compile 5 years ago
Jeff 3f19b14c4f
Merge pull request #938 from majestrate/version-motto-bump-for-0.6.0-2019-12-03
bump version and motto
5 years ago
Jeff 27b1e36039
Merge pull request #936 from majestrate/dev
last changes before 0.6.0 version bump
5 years ago
Stephen Shelton af2259db5f Move lokid key API request to KeyManager 5 years ago
Stephen Shelton 49e248bfc1 Fix bad merge 5 years ago
Jeff Becker 91627931ad
bump version and motto 5 years ago
Stephen Shelton 93b8832026
Merge branch 'dev' into private-keys-backup-support 5 years ago
Jeff 76fc50cfb7
Merge pull request #914 from despair86/dev
win32 fixes
5 years ago
Stephen Shelton 521ef9b5bb Handle link transport key in KeyManager 5 years ago
Jeff Becker 7d5fd132c8
make format 5 years ago
Jeff Becker 86a4ccd98f
unconditionally bundle first fragment in xmit 5 years ago
Jeff Becker 1f83fdb190
fix previous commit 5 years ago
Jeff Becker 19835ce501
dont use auto 5 years ago
Jeff Becker 1a6a66108d
make it compile 5 years ago
Jeff Becker c88602ee16
break the world to make it faster 5 years ago
Jeff Becker 01b24c7090
limit connections 5 years ago
Jeff Becker 0f4c531d06
fix path resource leak 5 years ago
Jeff b08897a214
Merge pull request #935 from jagerman/logic-thread-fixes
Logic thread fixes
5 years ago
Jeff 67b08e0e50
Merge pull request #933 from majestrate/loki-ping-call-2019-11-27
Loki ping call 2019 11 27
5 years ago
Jeff 8288bf3958
Merge pull request #931 from majestrate/rpc-fetch-privkey-2019-11-26
use curl to fetch from lokid rpc the identity key
5 years ago
Rick V da8ee47370
tick more often 5 years ago
Rick V 44e8d07d47
fix error msg 5 years ago
Rick V cf3469e11a
crash on wine, we support linux, ucb_unix, svr4
natively ffs. i tested this patch on wine 4.4 on fuckin
Solaris 11 snv_151
5 years ago
Jeff Becker 3c85691f81 limit calls to pumpll such that it gets called fast enough but not too much under load 5 years ago
Jeff Becker a2fc35a7aa lower limit to 25ms 5 years ago
Jeff Becker 5924a2cec0 limit calls 5 years ago
Jason Rhinelander 5d8f547d33 Set tun to non-blocking
If we can't write to it we want failure, not blocking.
5 years ago
Jason Rhinelander 740460318a Die if job queue full
If this happens it's a pretty serious error; if someone is hitting it
occassionally it's better to know and update their queue size (and if it
is a runaway situation lokinet doesn't come back anyway).
5 years ago
Jeff Becker 28a2d471d6 style nitch 5 years ago
Jeff Becker 44e0e2c034 dont flood the logic queue 5 years ago
Jeff Becker fba1e47d1c call jobs in logic 5 years ago
Jeff Becker f5ede2d875 ammend previous commit 5 years ago
Jeff Becker 3489753d5a remove jenky call to logic thread in link server 5 years ago
Jeff Becker 0828307906 fix address mapping bug 5 years ago
Jeff Becker 5188873288 batch and flush 5 years ago
Jeff Becker 8849173112 try async decrypt then verify 5 years ago
Jeff Becker 2852601a28 flush in logic 5 years ago
Jeff Becker d823d6fa70 only flush when no other jobs are executing 5 years ago
Jeff Becker 9e305c5b30 use lockless queues to gather results of transit traffic work 5 years ago
Jeff Becker d591394ad2 dont process empty queues 5 years ago
Jeff Becker e2472d985d process transit hops on flush 5 years ago
Jeff Becker 1a06da9c3d reduce calls in link pump 5 years ago
Jason Rhinelander d13a3d2b62 Don't flush here; we already have a tick flushing 5 years ago
Thomas Winget 6d506302dc Show number of logic thread jobs in debug builds 5 years ago
Thomas Winget 6acf7bff7e Track and log UV event loop ticks in debug builds 5 years ago
Jeff Becker 285a9a1dd5 prevent segfault 5 years ago
Jeff Becker a3a62c34f3 use timer guard for all jobs in debug mode 5 years ago
Jeff Becker af663d8b10 prune members in timer context 5 years ago
Jeff Becker 11d4760c3d add metrics tracking for logic jobs in debug mode 5 years ago
Jeff Becker ba0fd223d9 reduce number of jobs we put onto the logic thread 5 years ago
Stephen Shelton a0699ad229 Undo adding of crypto version to RouterContact, other fixes 5 years ago
Jeff Becker d880eec1de
ping lokid rpc 5 years ago
Jeff Becker 098915bb8e
add check for identity key validity 5 years ago
Jeff Becker 5868a25fcc
clear response between tries 5 years ago
Jeff Becker d685057754
update readme and disable curl on windows 5 years ago
Jeff Becker d12c75ce1e
move sleep 5 years ago
Jeff Becker 61b75828f0
sleep 5 years ago
Jeff Becker 3878ebd534
use curl to fetch from lokid rpc the identity key 5 years ago
Stephen Shelton e8e2e21fa2 Reorganize priv key file loading a bit and hook KeyManager into Router 5 years ago
Jeff f8c6c1379a
Merge pull request #929 from majestrate/increase-logic-queue-size-2019-11-25
make logic job queue 8 times bigger
5 years ago
Jeff Becker dd48b149ca
make job queue size configurable 5 years ago
Jeff Becker 853108ce6e
make logic job queue 8 times bigger 5 years ago
Jeff Becker cbb7196b30
fix "zero hop" bug 5 years ago
Stephen Shelton 7084dae79a Implement code to move old key files out of the way 5 years ago
Jeff ee40389f05
Merge pull request #916 from majestrate/add-contention-killer-2019-11-14
assorted crap
5 years ago
Jeff Becker c3858a56df
make it compile 5 years ago
Jeff Becker 34bc3da069
flush quues of other paths 5 years ago
Jeff Becker 6f95fbfece
work in progress 5 years ago
Jeff Becker ac686a9329
remove valgrind access errors 5 years ago
Jeff Becker 0ec4e583d4
initialize with zeros 5 years ago
Jeff Becker 065b022427
std::move 5 years ago
Jeff Becker b8f773eb73
use lambda 5 years ago
Jeff Becker 250cfea1e9
remove use of void * in godawful old code from a time before happyness 5 years ago
Jeff Becker b207db626f
please the gods of valgrind 5 years ago
Jeff Becker d44d034775
make contention checker templated 5 years ago
Jeff Becker 1fa0a0aab2
make it compile 5 years ago
Jeff Becker fdbaaa8188
try fixing file log segfault 5 years ago
Jeff Becker 1188763ece
typo fix in release 5 years ago
Jeff Becker 56dce90de9
add trace log level for tracking logic thread jobs 5 years ago
Jeff Becker eb6d042e73
make sure all calls of logic thread jobs are not having contention 5 years ago
Jeff Becker d7f09a365d
contention killer 5 years ago
Stephen Shelton db56e17c23 Rename bencode function for clarity 5 years ago
Stephen Shelton 0c02ea8d2e Add "keyfile version" to RouterContact 5 years ago
Jason Rhinelander d3082fffc9 Lower the ev tick interval to 10ms
When there's nothing waiting we wait this long unconditionally, but that
can add a lot of latency across a path.

There are likely better ways to handle this via libuv's run handlers,
but this addresses the latency until we figure that out.
5 years ago
Stephen Shelton 1666498405 Replace bencode_write_version_entry with a more general-purpose function for writing bencoded dictionary entries 5 years ago
Stephen Shelton fd02e3e149 Stub out KeyManager class 5 years ago
Jason Rhinelander e0340e86b2 clang-format fixes 5 years ago
Jason Rhinelander d96d33329b
Merge pull request #912 from majestrate/logic-thread-fix-2019-11-13
fix logic thread behavior
5 years ago
Jeff 8f6a18f411
Merge pull request #915 from notlesh/fix-session-key-mismatch-2019-11-19
Fix #911: Drop new inbound IWP sessions when the first packet can't be handled
5 years ago
Jason Rhinelander 6524563d33
Merge pull request #897 from majestrate/bencode-seek-for-version-2019-11-03
seek for version and set it before deserializing
5 years ago
Stephen Shelton b5b8cf0745 Reduce log level of IWP session issues as they may be encountered frequently and normally 5 years ago
Stephen Shelton 9eed243346
Merge pull request #860 from notlesh/null_mutex_clarity
Null mutex clarity (via comments / log statement)
5 years ago
Stephen Shelton 46fe64c2e6 make format (and git commit --amend to re-trigger CI) 5 years ago
Stephen Shelton ef2670dfb4 Drop new inbound IWP sessions when the first packet can't be handled 5 years ago
Jeff Becker 168d25f244
add warning when trying to queue onto full logic thread 5 years ago
Jeff Becker b34caa3e26
make unit tests pass for iwp 5 years ago
Jeff Becker 1a864832c8
make format 5 years ago
Jeff Becker b31d7b75fc
Merge remote-tracking branch 'origin/dev' into logic-thread-fix-2019-11-13 5 years ago
Jeff Becker f16c9f9b5d
iot seems that logic thread didn't work the way i remember it should
make logic work the way it should
5 years ago
Jeff Becker 3c8e148372
prevent double free crap with shared_ptr 5 years ago
Thomas Winget 5ce6ed5134
fixes some logical errors in per-path queues 5 years ago
Thomas Winget 23a9773e1e
remove our paths from outbound queues 5 years ago
Thomas Winget ef1a5652ef
remove our paths from outbound queues 5 years ago
Thomas Winget 17de3f2478 do...while; make format; remove erroneous GUARDED_BY 5 years ago
Thomas Winget 12adff570d fix seg fault, fix uninitialized static member 5 years ago
Thomas Winget 75512b1b58 ban zero id for pathid; clarity and cleanup 5 years ago
Thomas Winget 9d3e7d349c Add per-path queues, prioritize control messages over traffic 5 years ago
Jeff c05d7b69fc
Merge pull request #904 from majestrate/try-fixing-path-shit-again-2019-11-05
make path builds work
5 years ago
Jeff Becker 8d44eefead
make router give time directly 5 years ago
Jeff Becker 2c5561fc3c
make format 5 years ago
Jeff Becker b589ea96ff
remove printf 5 years ago
Jeff Becker 7ee026fa50
make path builds work again 5 years ago
Jeff Becker 9b99752276
i hate windows 5 years ago
Jason Rhinelander b0ab703c45 Silence unused variable warnings in release build 5 years ago
Jeff Becker 0d89f1170b
make it compile 5 years ago
Jeff Becker c9f26c4911
call Router::PumpLL after every batch of packets from a link session 5 years ago
Jeff Becker 034469bfbf
Merge remote-tracking branch 'origin/dev' into fix-pump-order-2019-11-04 5 years ago
Jeff Becker 90f523881a
try interchanging pump order 5 years ago
Jeff 820f69549f
Merge pull request #899 from majestrate/fix-path-build-2019-11-03
make path builds work
5 years ago
Jeff Becker 1fc36f4832
changes from review 5 years ago
Jeff Becker 7c35b00f98
Revert "move calling of path build sccess hook to correct place"
This reverts commit 902cd86a3b.
5 years ago
Jeff Becker 8befd6f2db
flush link session encrypt queue immediately after handling plaintext packets 5 years ago
Jeff Becker 902cd86a3b
move calling of path build sccess hook to correct place 5 years ago
Jeff Becker 9d266dbec7
meh 5 years ago
Jeff Becker e25356c035
use <= not == 5 years ago
Jeff Becker 89e5b6b4cc
try fixing leak 5 years ago
Jeff Becker bdb0b847f8
seek for version and set it before deserializing 5 years ago
Jeff a843cf44cc
Merge pull request #892 from despair86/dev
add patch for libsodium 1.0.17 and zmq-latest
5 years ago
Jeff 9ace1b2398
Merge pull request #870 from majestrate/disable-doh-using-isp-backdoor-provided-by-mozilla-thanks-from-nsa
disable DoH
5 years ago
Jeff 30fa45fa05
Merge pull request #895 from majestrate/fix-dns-crash-2019-11-01
fix issue #894
5 years ago
Jeff 683594b66a
Merge pull request #877 from majestrate/fix-exit-traffic-bug-2019-10-28
fix warnings and prevent bug that sends invalid traffic to user
5 years ago
Jeff Becker d2be8ac384
fix issue #894 5 years ago
Rick V 28f508c1d2
fix note 5 years ago
Rick V 00440f91eb add patch for latest stable libzmq on windows with a configure note 5 years ago
Rick V 0b8a518f24
add patch for libsodium 1.0.17 5 years ago
Rick V 44a8b9d3eb
add patchset for libsodium-upstream-stable so we can get rid of vendored
lib
5 years ago
Rick V df29052a75
fix windows 5 years ago
Rick V e9b4053bac
oops fix up some missing code 5 years ago
Rick V e901580223
ok set write handler in event loop 5 years ago
Rick V cfd696b4d9
just write the data straight into the socket 5 years ago
Rick V d7900a8459
c-f everything 5 years ago
Rick V df6fe4b6ac
emit libuv-like stub externally 5 years ago
Rick V 46169da7bf
ok add the write handler here too 5 years ago
Rick V 33378b2c0c
ok implement libuv stubs for tcp connectors 5 years ago
Jeff Becker 2bf1e4f46a
enable IOS on IOS 5 years ago
Jeff 8debf6870d
Merge pull request #879 from majestrate/parenthesis-are-hard-2019-10-28
fix bounds check
5 years ago
Jeff Becker e2890e925b
make it compile 5 years ago
Jeff Becker 20dd4e4d09
use data not begin 5 years ago
Jeff Becker 2267a7d283
fix bounds check 5 years ago
Jeff Becker 5f9ea7b485
fix warnings and prevent bug that sends invalid traffic to user 5 years ago
Jeff Becker 75d746c518
update _sz 5 years ago
Jeff Becker 2f2834f331
make non copyable 5 years ago
Jeff Becker b737fdbe03
fix crash 5 years ago
Jeff Becker bd07845dd3
make format 5 years ago
Jeff Becker 64548ade2f
Merge remote-tracking branch 'origin/dev' into disable-doh-using-isp-backdoor-provided-by-mozilla-thanks-from-nsa 5 years ago
Jeff 3a6c16aa36
Merge pull request #871 from majestrate/ed25519-signing
Ed25519 signing
5 years ago
Jeff Becker 22dcb0504b
make format 5 years ago
Jeff Becker 01c4a9c287
revert a few things 5 years ago
Jeff Becker 2134355a3a
fix event loop tcp connections so they are thread safe 5 years ago
jeff aedcaf3c43 make it compile 5 years ago
jeff 1cdd9ba13a add unit test for identity_keygen 5 years ago
jeff ff8c167362 make it compile on windows 5 years ago
jeff c69165dad3 try making it work in the case that is broken on travis 5 years ago
jeff 1621ca676b Merge remote-tracking branch 'upstream/dev' into ed25519-signing 5 years ago
jeff c33324455a use correct rpc call to lokid 5 years ago
jeff 37d7f2b1e7 disable DoH using mozilla's ISP backdoor record. 5 years ago
jeff 869ab0b652 Merge remote-tracking branch 'upstream/dev' into vpn-api-2019-10-03 5 years ago
jeff 1e3cd03880 make format 5 years ago
jeff c59487014a fix #865 by not using logic if it is null in udp_tick 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
Stephen Shelton 7dc1351eba Add missing #endif (presumably from 281fbff) 5 years ago
jeff 265da6f37b use get_service_nodes rpc endpoint 5 years ago