Rick V
53f7360094
added warning for AMD users
2019-03-18 16:13:09 -05:00
Rick V
61fb9a9c82
added some notes to gear up for the #371 putback by @michael-loki
...
moved platform-specifc stuff *to* platform specifc lib
removed -Wno-format on windows and *actually* turn on proper format checking
here using compiler-specifc extension for C99
2019-03-18 16:13:08 -05:00
Rick V
aab8167408
remove AMD FPU hack, remove FPU opts for crypto code in debug mode
...
see https://www.digitaltrends.com/computing/ryzen-amd-bios-fix-fma3-crash/
AMD has released a fix for Zen and later
2019-03-18 16:13:08 -05:00
Jeff
a79f27cfd0
Merge pull request #395 from majestrate/staging
...
lokinet rpc use http digest auth instead of basic auth
2019-03-13 16:21:14 -04:00
Jeff Becker
990049f423
make rpc do basic auth and shit like that
2019-03-13 16:01:10 -04:00
michael-loki
8ada001bc9
Remove negative thread safety warning flag
...
This is experimental, and has a bunch of false positives.
2019-03-12 10:13:33 +00:00
Jeff Becker
734a5b5fae
more
2019-03-11 09:01:43 -04:00
Jeff Becker
2218749134
Merge remote-tracking branch 'origin/staging' into staging
2019-03-07 17:58:29 -05:00
Jeff Becker
6a09348c47
today's work
2019-03-07 17:53:36 -05:00
Jeff
1a09a12ee0
Merge branch 'staging' into absl_mutex
2019-03-05 17:06:23 -05:00
Michael
61f3273dc4
Add threading annotations and fix potential deadlocks
2019-03-04 00:03:52 +00:00
Michael
c5a129ddff
Convert to use abseil synchronisation primitives
2019-03-03 21:20:38 +00:00
Michael
93399fdbb4
Make nlohmann::json part of the build
2019-03-02 02:32:18 +00:00
Michael
c6e6bdb90f
Fix for windows just being the Worst
2019-02-20 22:09:29 +00:00
Michael
4132f883a7
Make libabyss mandatory
2019-02-20 22:08:49 +00:00
Michael
a0125ffe86
Move abyss/json to llarp/util/json
2019-02-15 23:43:26 +00:00
Jeff Becker
1d958d95de
* make rpc compile right
...
* make link sessions introspectable
* make utp write buffers fully flush each tick
2019-02-15 17:19:19 -05:00
Michael
90373b806c
Fix log tag after cmake changes
2019-02-15 20:49:10 +00:00
Jeff
cdc19c52fa
Merge branch 'staging' into abstract_router_replacement
2019-02-15 12:10:18 -05:00
Michael
048fa83c39
Finish replacement of Router with AbstractRouter
2019-02-14 22:31:31 +00:00
Rick V
e9048559b2
late-breaking hotfix patch for libabyss-win32
2019-02-14 15:10:56 -06:00
Rick V
1bb441a367
fix clang cross-compile nt shared lib
2019-02-14 14:30:18 -06:00
Michael
ebf2800c3f
Fixup windows
2019-02-14 00:22:21 +00:00
Michael
2997b38e35
Fixup after rebase
2019-02-12 10:24:43 +00:00
Michael
656843e9a3
Fix issues on debian
2019-02-12 01:19:38 +00:00
Michael
1aeacb0043
Refactor CMakeLists into distinct directories
2019-02-12 01:19:37 +00:00
Jeff
f84ceb3b6a
Merge pull request #300 from majestrate/staging
...
add rpc endpoint for dumping internal state
2019-02-11 12:30:56 -05:00
Jeff Becker
46222df421
refactor
2019-02-11 12:14:43 -05:00
Michael
4f3c2a7e80
Add support for building with ccache
2019-02-09 12:38:49 +00:00
Jeff Becker
e1522faeaa
add introspection rpc endpoint
2019-02-08 14:43:25 -05:00
Rick V
1fafe27300
damn it
2019-02-06 20:14:48 -06:00
Jeff
1369c3b23c
Merge pull request #283 from despair86/dev
...
more windows fixes
2019-02-06 21:10:30 -05:00
Rick V
4c19f562f0
A compromise for C++17 ports.
...
Remove abseil build config for such targets.
Include headers (which should fall through by definition).
Macintosh can go fuck itself.
2019-02-06 19:53:15 -06:00
Rick V
406e3a6b6c
document option correctly
2019-02-06 19:53:14 -06:00
Rick V
72d0720da0
use c++17 stl on windows
...
While the absl:: namespace is aliased to std:: in a
standard win32 build, it also needlessly adds the
library to the build process, only to discard most
of it at link time. This also makes the distinction
between Abseil STL and G++ STL more explicit, to avoid
some forms of confusion.
From the product page:
"...We think not: if you look at the preprocessor conditional
structure in our string_view.h you'll see that we are trying
to identify whether your C++ installation has std::string_view.
If you do, absl::string_view is defined only as an alias to the
standard type. If you don't, you get a C++11/C++14 compatible
implementation of the type. This means you can adopt Abseil,
and for types we are b you can use the type from the absl
namespace. As soon as your project is built with the appropriate
compiler/standard library version, we'll fall away and leave you
with the standard type, albeit spelled funny. Better: as soon as
you know that your project will only build with the appropriate
language version you can run tools that we will provide to change
the places that refer to absl::string_view to spell it std::string_view
-- since those are the same type, this is safe to do, even across
API boundaries.
So, one reason you might want to adopt Abseil: early access to facilities
from upcoming C++ standard library releases, with a clear migration path."
2019-02-06 19:53:14 -06:00
Rick V
8800cee785
fix crash on exit
2019-02-06 19:53:13 -06:00
Rick V
3931b7d9d7
implement missing libabyss functionality
...
remove some finished TODOs
2019-02-06 19:53:11 -06:00
Rick V
59c6184233
linker flags have no effect in compilation
...
and will cause -Werror=unused-command-line-option
on apple cc
2019-02-06 19:53:10 -06:00
Rick V
6d608d292f
add warning message for libg++ runtime
2019-02-06 19:53:09 -06:00
Rick V
00a095b61c
update description
2019-02-06 19:53:09 -06:00
Rick V
7f52c9eae7
restore gtest win32 patch (stripped during gtest rebase)
...
enable lokinet shared library on win32
TODO: define an API to expose from this library
currently, it resorts to exporting *everything*
including system implementation details that otherwise
should remain hidden out of sight
(i.e. the winsock2 load stubs for new socket API, or entire libstdc++ classes!)
2019-02-06 19:53:09 -06:00
Rick V
d0448dfb64
finish moving event loop implementations out of headers
...
ok
ah so that was the mac build problem
2019-02-06 19:53:08 -06:00
Rick V
6e93697214
surprisingly a full abyss build works
...
also move the event loop code back into platform lib (!!!)
2019-02-06 19:53:07 -06:00
Rick V
f277f368a1
win32 g++ is set to c++17 by default, so we use the _real_ string_view class
2019-02-06 19:53:06 -06:00
Michael
6d8d910aff
Refactor and add tests for bits.hpp
2019-02-07 00:23:22 +00:00
Michael
4c3734a146
Build everything with -fPIC
2019-02-05 23:06:17 +00:00
Ryan Tharp
5769e5c716
Merge pull request #259 from michael-loki/more_dht_tests
...
More dht tests
2019-02-05 14:06:29 -08:00
Michael
40e85f0f69
Tests for dht::RCNode and dht::ISNode
2019-02-05 21:35:46 +00:00
Michael
1ba6507a2f
Tests for dht::ServiceAddressLookup
2019-02-05 21:35:46 +00:00
Michael
b1213c7a7c
Tests for dht::TagLookup
2019-02-05 21:18:38 +00:00
Michael
6055829df4
Remove tl::optional and use absl::optional always
2019-02-03 02:13:31 +00:00
Michael
41f9f5fad6
Import abseil LTS 20181200
2019-02-03 01:56:38 +00:00
Michael
1f95f1e78f
More unit tests of dht internals
2019-01-26 00:40:40 +00:00
Michael
40449df0f1
Split classes out of dht::Context
2019-01-26 00:40:40 +00:00
Michael
9d0d3a4cc9
Fix build on darwin
2019-01-23 22:16:21 +00:00
Michael
f4e0cb2d4b
Import latest gtest from upstream - commit 569fba4d742b67753b5374b6686170afb74acb0c
2019-01-23 22:16:21 +00:00
Jeff
832ad942aa
Merge pull request #237 from despair86/dev
...
separate header and implementation
2019-01-23 15:27:19 -05:00
Jeff Becker
cbfbdc506d
Merge branch 'staging' of ssh://github.com/loki-project/loki-network into staging
2019-01-23 12:33:00 -05:00
Rick V
b062504590
static link windows unconditionally
2019-01-22 18:21:37 -06:00
Rick V
d70a9fbfd4
oops, that patch would have tanked a 64-bit windows profile run
2019-01-22 18:21:37 -06:00
Rick V
bef0316aab
more sun notes
2019-01-22 18:21:36 -06:00
Rick V
ce9f455bf3
be more descriptive in version-info
...
(cherry picked from commit 427a6668ffbc1ed46042727b2ee9420cdc88aad8, it almost slipped out)
2019-01-22 18:17:04 -06:00
Rick V
3a47c96aee
how the hell does someone skip over these while redoing source tree layout
2019-01-22 18:17:03 -06:00
Rick V
3037de9450
lower non-AVX2 minimum CPU target to NetBust Xeon (Nocona, Prescott)
...
(cherry picked from commit e7ae0e5258
)
2019-01-22 18:17:02 -06:00
Jeff Becker
9991d17976
Merge branch 'staging' into use-lokid-seed
2019-01-22 12:24:19 -05:00
Jeff Becker
465a3d3e43
redo ini parser
2019-01-22 09:13:26 -05:00
Jeff Becker
d89e58199a
add initial identity key seed stuff
...
add more kubernetes stuff
make shared library installed if built
2019-01-21 10:45:18 -05:00
Michael
ccb5f6b696
Add tests for dht::TXOwnere
2019-01-19 18:16:40 +00:00
Michael
2d395cc3f9
Move code to correct home
2019-01-19 18:16:10 +00:00
Michael
80bd41916e
More tidying of dht code
2019-01-19 13:49:15 +00:00
Michael
03d56c1591
Add test suites for dht bucket, kademlia and key
2019-01-19 01:41:14 +00:00
Michael
7296ebcbe8
Tidy dht code
2019-01-19 01:41:14 +00:00
Michael
fec75125f4
Add tests for crypto/types
2019-01-15 23:33:16 +00:00
Michael
da6cdfc0b2
More refactoring to continue to make dependency graph acylic
2019-01-15 23:15:44 +00:00
Michael
6e38e85a79
Produce hierarchy of 'libraries' inside libllarp
2019-01-15 23:15:43 +00:00
Jeff
11257e7b4d
Merge pull request #222 from michael-loki/crypto_folder
...
Split and move crypto code to a subdirectory
2019-01-15 18:15:08 -05:00
Michael
79157414f3
Split crypto.hpp into 3 different files
2019-01-13 16:32:51 +00:00
Michael
04e0fe3ad7
Move crypto code to a subdirectory
2019-01-13 15:06:16 +00:00
Michael
8a0eb6b71f
Enable C++14 for all builds
2019-01-13 14:10:38 +00:00
Jeff
328ce40212
Merge pull request #216 from michael-loki/coverage
...
Add flag to generate coverage data
2019-01-13 08:35:02 -05:00
Michael
c655600704
Add flag to generate coverage data
2019-01-12 01:19:24 +00:00
Michael
70a55612eb
Create initial set of test cases for llarp_findOrCreate* functions
2019-01-12 00:42:30 +00:00
Michael
a3463120cc
Move net components into a distinct folder
2019-01-11 01:42:02 +00:00
Michael
317e29b777
Move win32 specific files to win32 dir
2019-01-11 01:22:21 +00:00
Michael
081d4dfa32
Reorganise source into more folders
2019-01-11 01:19:49 +00:00
Michael
fa2b466ffe
Reorganise tests to mirror source layout
2019-01-11 00:12:52 +00:00
Michael
e5eda0fb8f
Move lokinet unspecific components to a util/ library
2019-01-10 20:07:24 +00:00
Michael
167d5aca6d
Add test suite for bencode
2019-01-10 17:43:33 +00:00
Jeff Becker
6206fb2a41
Merge branch 'datagram' into staging
2019-01-10 07:30:21 -05:00
Jeff Becker
5b87fb509e
start on kubernetes shim and fix up shared library target and ffi python code
2019-01-09 11:07:55 -05:00
Jeff Becker
e88c39b9e2
more work
2019-01-05 08:45:05 -05:00
Michael
a54b9a2dc4
Fix UTPTest test failures
2019-01-03 21:54:26 +00:00
Michael
9658c80b48
Minor build fixes
2019-01-03 21:25:16 +00:00
Jeff Becker
f9d30b9b96
commit day's work
2019-01-03 16:10:40 -05:00
Michael
8f053106e6
Add tests for llarp::dht::Key_t
2018-12-30 18:56:34 +00:00
Jeff Becker
180ca69d02
fix issue #185
2018-12-28 10:04:05 -05:00
Jeff Becker
49c898ed92
Merge remote-tracking branch 'origin/master' into staging
2018-12-26 11:27:11 -05:00
Rick
febb1a0207
version resource
2018-12-24 21:20:17 -06:00
Rick
d58e17ba48
make lokinet-win32 installer safe to use for in-place upgrades
...
add version resource
2018-12-24 20:38:43 -06:00
despair
43afede986
make RPI option more descriptive
2018-12-22 12:58:12 -06:00
Jeff Becker
15e0597fb1
merge
2018-12-20 12:56:31 -05:00
Jeff Becker
8c8172aeb1
Merge remote-tracking branch 'origin/master' into dev
2018-12-20 12:56:08 -05:00
Michael
ba95767f57
Add tests for alignedbuffer
2018-12-20 16:16:18 +00:00
Jeff Becker
b39c46fc03
!!! this breaks backwards compat :^) !!!
...
redo link protocol to use 2 session keys, add unit tests.
2018-12-17 15:46:08 -05:00
Ryan Tharp
2e9511c978
fix make install
2018-12-17 04:07:00 +00:00
Jeff Becker
ba02076122
fix up cmake more
2018-12-16 17:31:32 -05:00
Jeff Becker
49cd52adc7
include lokinet-bootstrap
2018-12-16 17:28:09 -05:00
Michael
4257b62e88
Add .cpp files for all .hpp files
2018-12-15 16:21:52 +00:00
Jeff Becker
09e01adf32
flush snode traffic queues
2018-12-12 13:37:03 -05:00
despair
624eec8179
>make this a native app
...
this will be packed up by the inno-setup installer script already
cleaned up CMakeLists
make it more readable
exposed (nearly?) all of the configurable options
2018-12-11 23:32:11 -06:00
Jeff Becker
fad734a5ce
strict types for pubkey, secretkey and routerid
2018-12-10 12:22:59 -05:00
Jeff Becker
a770b9516f
update makefile to use cmake install
2018-12-10 09:26:59 -05:00
Jeff Becker
1704c7e234
make cmake install target work and setcap on linux
2018-12-10 09:20:35 -05:00
Jeff Becker
2e98ad804b
patch for RPI build
2018-12-07 13:21:19 -05:00
Jeff Becker
f63045d5a4
Merge remote-tracking branch 'origin/master' into dev
2018-12-05 09:41:35 -05:00
Jeff Becker
1d1bde2e88
add dnslib
2018-12-03 17:22:59 -05:00
despair
d26141d433
Merge branch 'dev' into reeeee-divergence
...
ok hope this works -rick
# Conflicts:
# .gitignore
# .vscode/settings.json
# include/llarp/service/context.hpp
# llarp/dns.cpp
# llarp/dnsc.cpp
# llarp/ev.cpp
# llarp/ev.hpp
# llarp/ev_win32.hpp
# llarp/net.cpp
# llarp/router.cpp
# llarp/router.hpp
# llarp/service/context.cpp
2018-12-03 12:24:56 -06:00
Jeff Becker
baa94ec345
make windows build happy
2018-12-03 09:39:30 -05:00
Jeff Becker
11372c9544
Merge branch 'dev' into snode-endpoint
2018-11-29 09:34:19 -05:00
Jeff Becker
7e4d74cbfc
add initial jni stuff for lokinet android. i fucking hate android so god damn much.
2018-11-26 17:46:22 -05:00
Ryan Tharp
7874567611
Merge branch 'master' of https://github.com/loki-project/loki-network
2018-11-26 15:54:52 +00:00
despair
c17e30b587
clang from new-ci now defaults to libgcc as originally intended
...
add option to use the other runtime lib
2018-11-26 06:26:37 -06:00
Jeff Becker
d064fc69d4
Merge remote-tracking branch 'origin/master' into dev
2018-11-22 09:33:41 -05:00
Jeff Becker
0bbf9c431a
more flags for compile
2018-11-21 16:52:35 -05:00
Ryan Tharp
40522639ce
Merge branch 'master' of https://github.com/loki-project/loki-network
2018-11-21 13:39:27 +00:00
Ryan Tharp
b707809efa
fix RPI compile target and make sure $HOME/.lokinet/ exists before trying to download to it
2018-11-21 03:07:34 +00:00
Ryan Tharp
efe86c2401
Merge branch 'master' of https://github.com/loki-project/loki-network
2018-11-20 19:32:12 +00:00
Jeff Becker
f8180839db
s/17/11/
2018-11-19 10:15:32 -05:00
Jeff Becker
b64ed33755
more static linking flag magic
2018-11-19 09:43:46 -05:00
Jeff Becker
a35066ce42
static link with pthread because GNU a shit
2018-11-19 08:47:14 -05:00
Jeff Becker
5357b4b69f
make clang happy, disable netns by default (for now)
2018-11-19 08:39:35 -05:00
Jeff Becker
3718a7d016
Merge remote-tracking branch 'github/master' into dev
2018-11-19 07:01:42 -05:00
Jeff Becker
d37daf7996
Merge branch 'master' into dev
2018-11-19 06:57:29 -05:00
despair
ae616d0fa5
minor fixes
...
eh
why apple why
why apple why
2018-11-19 04:29:39 -06:00
despair
be7ac352ca
switch to a simulation of epoll
...
the native async event system on windows
is _not_ very good at getting external events
(i.e. we receive data, but we don't get any indication
that this ever happened)
2018-11-19 04:29:39 -06:00
despair
e18f786ab2
refactor event loop stuff
...
find some place in the C code to place the worker thread procedure
until such time that michael presents the new thread pool class
fix unix
get a new event port each time and delet in the event loop after use
2018-11-19 04:29:39 -06:00
despair
d9863128b9
the intrinsic variant is 32-bit clean
...
the ASM variant is not
found it
fix
something is wrong with the external build
hmm
why is this critical section doing nothing
fix multiple init
debug init
ok fixed
2018-11-19 04:29:36 -06:00
Ryan Tharp
969865c499
internal refactor
...
- created various structs for each record type
- changed DNSd to return most of the recieved packet (allowing for multiple answers)
- favor vector<byte_t> over c-style buffers
- support NS records a little better
- fixed output on cname, ptr, txt
2018-11-18 15:08:02 -08:00
Jeff
23c8807d59
Merge pull request #54 from neuroscr/master
...
DNS QoL improvements
2018-11-18 15:13:25 -05:00
Ryan Tharp
f03c41a99f
Deprecate DNS_PORT as configureable in INI now. Reduce confusion as it would change DNSc port too and I believe it was meant only to change DNSd port.
2018-11-18 09:41:09 -08:00
Jeff Becker
78e59fced0
remove cxx11
2018-11-18 09:43:32 -05:00
Jeff Becker
f5ac1b5c0d
Merge branch 'master' into dev
2018-11-18 07:43:13 -05:00
Michael
3c5e3e79f9
Create ThreadPool component with test suite
2018-11-17 21:13:34 +00:00
Michael
8a52bf448e
Create Queue component with test suite
2018-11-17 21:13:34 +00:00
Michael
951a065867
Create QueueManager component with test suite
2018-11-17 21:13:34 +00:00
Jeff Becker
17297837d9
that's dumb af, use std::unique_ptr
2018-11-15 16:47:05 -05:00
Jeff Becker
1fc8db83ca
Merge remote-tracking branch 'rick/dev' into dev
2018-11-13 10:25:07 -05:00
Jeff Becker
9db99d4d04
fix debian build
2018-11-13 10:16:14 -05:00
despair
ff6a271278
why would pos ever be negative?
2018-11-13 06:54:44 -06:00
despair
7af2dbbbc2
restore cross-compile rules
2018-11-13 06:30:40 -06:00