Jeff Becker
7d5fd132c8
make format
2019-12-03 12:55:24 -05:00
Rick V
44e8d07d47
fix error msg
2019-12-01 19:01:58 -06:00
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
2019-12-01 19:01:40 -06:00
Jeff Becker
3c85691f81
limit calls to pumpll such that it gets called fast enough but not too much under load
2019-11-29 19:11:14 -04:00
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).
2019-11-29 19:11:14 -04:00
Jeff Becker
fba1e47d1c
call jobs in logic
2019-11-29 19:11:14 -04:00
Thomas Winget
6d506302dc
Show number of logic thread jobs in debug builds
2019-11-29 19:11:14 -04:00
Jeff Becker
a3a62c34f3
use timer guard for all jobs in debug mode
2019-11-29 19:11:14 -04:00
Jeff Becker
af663d8b10
prune members in timer context
2019-11-29 19:11:14 -04:00
Jeff Becker
11d4760c3d
add metrics tracking for logic jobs in debug mode
2019-11-29 19:11:14 -04:00
Jeff Becker
dd48b149ca
make job queue size configurable
2019-11-25 16:30:34 -05:00
Jeff Becker
853108ce6e
make logic job queue 8 times bigger
2019-11-25 16:15:31 -05:00
Jeff Becker
d44d034775
make contention checker templated
2019-11-22 16:23:19 -05:00
Jeff Becker
1fa0a0aab2
make it compile
2019-11-22 16:23:19 -05:00
Jeff Becker
fdbaaa8188
try fixing file log segfault
2019-11-22 16:23:19 -05:00
Jeff Becker
1188763ece
typo fix in release
2019-11-22 16:23:19 -05:00
Jeff Becker
56dce90de9
add trace log level for tracking logic thread jobs
2019-11-22 16:23:19 -05:00
Jeff Becker
eb6d042e73
make sure all calls of logic thread jobs are not having contention
2019-11-22 16:23:18 -05:00
Jeff Becker
d7f09a365d
contention killer
2019-11-22 16:23:18 -05:00
Stephen Shelton
db56e17c23
Rename bencode function for clarity
2019-11-22 14:14:37 -07:00
Stephen Shelton
1666498405
Replace bencode_write_version_entry with a more general-purpose function for writing bencoded dictionary entries
2019-11-22 10:39:35 -07:00
Jason Rhinelander
e0340e86b2
clang-format fixes
2019-11-20 17:45:56 -04:00
Jason Rhinelander
d96d33329b
Merge pull request #912 from majestrate/logic-thread-fix-2019-11-13
...
fix logic thread behavior
2019-11-19 15:26:35 -04:00
Jason Rhinelander
6524563d33
Merge pull request #897 from majestrate/bencode-seek-for-version-2019-11-03
...
seek for version and set it before deserializing
2019-11-19 15:24:07 -04:00
Stephen Shelton
9eed243346
Merge pull request #860 from notlesh/null_mutex_clarity
...
Null mutex clarity (via comments / log statement)
2019-11-19 11:19:44 -07:00
Stephen Shelton
46fe64c2e6
make format (and git commit --amend to re-trigger CI)
2019-11-19 10:07:27 -07:00
Jeff Becker
168d25f244
add warning when trying to queue onto full logic thread
2019-11-14 12:18:20 -05:00
Jeff Becker
f16c9f9b5d
iot seems that logic thread didn't work the way i remember it should
...
make logic work the way it should
2019-11-14 10:06:53 -05:00
Jeff Becker
3c8e148372
prevent double free crap with shared_ptr
2019-11-13 18:16:34 -05:00
Jeff Becker
b589ea96ff
remove printf
2019-11-05 12:00:33 -05:00
Jeff Becker
7ee026fa50
make path builds work again
2019-11-05 11:58:53 -05:00
Jeff Becker
bdb0b847f8
seek for version and set it before deserializing
2019-11-03 10:31:01 -05:00
Stephen Shelton
a3c48e22f3
Even more clarity to NullMutex comments
2019-10-11 13:50:50 -06:00
Stephen Shelton
36ef0954ec
Add comments to NullMutex implementation to express intent
2019-10-10 23:26:55 -06:00
jeff
7d949ebf5d
always use absl for string_view
2019-10-02 11:35:20 -04:00
jeff
605da68e15
use absl optional
2019-10-02 09:17:12 -04:00
jeff
3c1d5518d8
fix windows port and make it compile
2019-10-02 09:06:14 -04:00
jeff
da9437d0cf
don't need that
2019-10-01 11:05:37 -04:00
jeff
32ed821763
Merge remote-tracking branch 'upstream/dev' into multithreaded-cryptography
2019-10-01 10:51:28 -04:00
Michael
5f0bb6fbd1
Try to fix windows build
2019-09-24 09:51:54 +01:00
Michael
ae3fc3a395
Add initial macOS app
2019-09-24 09:50:57 +01:00
Jeff Becker
327c545530
finish multithread cryptography first pass
2019-09-16 12:12:05 -04:00
jeff
14c9ef15ed
try calling stuff in logic thread from event loop
2019-09-16 06:21:12 -04:00
jeff
ac2a2aed1d
gut libutp and finish making things compile and pass tests
2019-09-12 14:19:25 -04:00
Jeff Becker
e3bb59707e
more
2019-09-05 17:28:50 -04:00
Michael
19473a291a
Abort when a null mutex is locked from a different thread (in debug mode only)
2019-09-04 22:34:41 +01:00
Jeff Becker
ab64c0d013
Merge remote-tracking branch 'micheal/abort_mutex'
2019-09-04 07:58:48 -04:00
Jeff Becker
1adae338ce
Merge remote-tracking branch 'origin/master'
2019-09-04 07:58:02 -04:00
Michael
23d76e3600
Abort when a null mutex is locked from a different thread (in debug mode only)
2019-09-03 23:25:37 +01:00
Michael
edd0ec398f
Move thread stuff to subdirectory
2019-09-03 20:52:28 +01:00
Michael
0950571313
Move metrics to subdirectory
2019-09-03 20:52:28 +01:00
Michael
4d8fe2a8a8
Move meta programming to subdirectory
2019-09-03 20:52:28 +01:00
Michael
1aec0dfa2b
Move logging to subdirectory
2019-09-03 20:52:27 +01:00
Jeff Becker
c01112e4b7
tracy lock contention testing and other fun things
2019-09-03 11:56:56 -04:00
Rick V
55612bc032
ok use clang-format v8
2019-08-26 03:32:40 -05:00
Rick V
2000826a35
override print
2019-08-26 03:32:40 -05:00
Rick V
50d4b4b40c
fix log colours on old win32 platforms
2019-08-26 03:32:39 -05:00
Michael
094b697b01
Replace StatusObject with underlying JSON type
2019-08-19 10:33:26 +01:00
Michael
16cdfbd5f0
clang-tidy modernize pass
2019-08-12 16:52:58 +01:00
Michael
d1990b5e93
Fix suspicious thread-unsafety
2019-08-08 00:18:56 +01:00
Jeff
10d7e7cb77
Merge branch 'master' into master
2019-08-05 07:59:30 -04:00
Michael
f9e9227e19
Fix gcc trunk warnings
2019-08-02 10:29:08 +01:00
Rick V
8cf5f2c9a5
fix thread naming on windows
2019-08-01 23:42:32 -05:00
Rick V
f6c97091fd
clang-format
2019-08-01 22:25:48 -05:00
Rick V
609a9a1c31
fix netbsd
2019-08-01 21:39:51 -05:00
Rick V
a0a14b97a0
really fix #689 this time
2019-08-01 21:39:50 -05:00
Rick V
3782479276
fix sun
2019-08-01 21:39:49 -05:00
Michael
a062186f2d
or not
2019-07-29 23:23:55 +01:00
Michael
ee2dd0fb68
Use __cpp_lib_filesystem
2019-07-29 21:44:14 +01:00
Michael
3c2f7792c2
Fixup
2019-07-29 21:32:29 +01:00
Michael
614b669fd5
Abandon debian
2019-07-29 21:31:26 +01:00
Michael
df498c7bf8
try to make some windows
2019-07-29 21:31:26 +01:00
Jeff Becker
b0406e1a76
on logic queue overflow put job on timer instead
2019-07-28 13:13:52 -04:00
Thomas Winget
38fd0552d3
Adds Link-Relay Status Messages
...
Success case:
- the path endpoint creates and sends a LR_StatusMessage upon
successful path creation
Failure case:
- an intermediate hop creates and sends a LR_StatusMessage upon
failure to forward the path to the next hop for any reason
Both cases:
- transit hops receive LR_StatusMessages and add a frame
to them reflecting their "status" with respect to that path
- the path creator receives LR_StatusMessages and decrypts/parses
the LR_StatusRecord frames from the path hops. If all is good,
the Path does as it would when receiving a PathConfirmMessage.
If not, the Path marks the new path as failed.
LR_StatusMessage is now used/sent in place of PathConfirmMessage
2019-07-25 17:46:56 -04:00
Jeff
183ec25717
Merge pull request #729 from majestrate/fix-android-2019-07-24
...
make android compile again
2019-07-25 14:24:13 -04:00
Thomas Winget
baf8019fe5
Refactor Router code into more classes
...
This commit refactors functionality from the Router class into separate,
dedicated classes.
There are a few behavior changes that came as a result of discussion on
what the correct behavior should be.
In addition, many things Router was previously doing can now be provided
callback functions to alert the calling point when the asynchronous
action completes, successfully or otherwise.
2019-07-25 14:11:02 -04:00
Jeff Becker
43cb62af16
fix android compile, have makefile pull in libuv for cmake on android
2019-07-24 11:25:40 -04:00
Jeff Becker
909e0399d6
make android compile
2019-07-24 10:17:54 -04:00
Michael
53bccc4f23
try to ensure on windows, but don't fail
2019-07-21 16:57:12 +01:00
Michael
9b40c0eb67
Fixup some tests
2019-07-21 16:57:12 +01:00
Michael
4806e52f62
Try to silence some warnings to reduce noise
2019-07-21 16:57:11 +01:00
Michael
5c064d7ddc
Silence spammy threadpool warning
2019-07-21 16:57:11 +01:00
Michael
302c0ff18c
fixup printer.cpp
2019-07-21 16:57:11 +01:00
Michael
533d12e52e
more fs.cpp
2019-07-21 16:57:11 +01:00
Michael
3b17e65b0b
Fix more headers for fs.cpp
2019-07-21 16:57:11 +01:00
Michael
4b3920006e
fix str.cpp
2019-07-21 16:57:11 +01:00
Michael
0326f2ea56
fix fs.cpp
2019-07-21 16:57:11 +01:00
Michael
ac8624698d
Fix some string_view problems
2019-07-21 16:57:11 +01:00
Michael
36c89363b3
try to fix pid_t issue
2019-07-21 16:57:11 +01:00
Michael
0cbd7b3116
Fixup fs
2019-07-21 16:57:10 +01:00
Michael
5cef2865bd
Fix Ubuntu builds
2019-07-15 22:46:57 +01:00
Jeff Becker
dc87b6dc6b
use correct uint128 functions when doing endian flipping
2019-07-12 10:06:56 -04:00
Jeff Becker
1fd6b5ae74
Merge remote-tracking branch 'origin/master' into ipv6-tun
2019-07-12 09:53:52 -04:00
Jeff
1a145ea515
Merge pull request #697 from majestrate/fix-freebsd-pthread
...
typo fix
2019-07-12 09:50:37 -04:00
Jeff Becker
8c67f14838
typo fix lel
2019-07-12 08:31:37 -04:00
Jeff
a768a9ad59
Merge pull request #695 from majestrate/fix-freebsd-pthread
...
fix freebsd build for real
2019-07-11 13:29:48 -04:00
Jeff Becker
ebab9b8905
fix freebsd build for real
2019-07-11 11:07:16 -04:00
Jeff
8e6c830641
Merge pull request #691 from majestrate/fix-freebsd-pthread
...
fix freebsd build
2019-07-11 10:00:37 -04:00
Jeff Becker
b207990d01
use elseif
2019-07-11 07:27:00 -04:00
Jeff Becker
4206132ea1
use correct function from free bsd pthread
2019-07-10 18:03:52 -04:00