Commit Graph

439 Commits (c26b67c379073dd60d430758529ab85b8fb89e80)

Author SHA1 Message Date
Rick V 1bb441a367
fix clang cross-compile nt shared lib 5 years ago
Michael ebf2800c3f Fixup windows 5 years ago
Michael 2997b38e35
Fixup after rebase 5 years ago
Michael 656843e9a3
Fix issues on debian 5 years ago
Michael 1aeacb0043
Refactor CMakeLists into distinct directories 5 years ago
Jeff f84ceb3b6a
Merge pull request #300 from majestrate/staging
add rpc endpoint for dumping internal state
5 years ago
Jeff Becker 46222df421
refactor 5 years ago
Michael 4f3c2a7e80
Add support for building with ccache 5 years ago
Jeff Becker e1522faeaa
add introspection rpc endpoint 5 years ago
Rick V 1fafe27300
damn it 5 years ago
Jeff 1369c3b23c
Merge pull request #283 from despair86/dev
more windows fixes
5 years ago
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.
5 years ago
Rick V 406e3a6b6c
document option correctly 5 years ago
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."
5 years ago
Rick V 8800cee785
fix crash on exit 5 years ago
Rick V 3931b7d9d7
implement missing libabyss functionality
remove some finished TODOs
5 years ago
Rick V 59c6184233
linker flags have no effect in compilation
and will cause -Werror=unused-command-line-option
on apple cc
5 years ago
Rick V 6d608d292f
add warning message for libg++ runtime 5 years ago
Rick V 00a095b61c
update description 5 years ago
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!)
5 years ago
Rick V d0448dfb64
finish moving event loop implementations out of headers
ok

ah so that was the mac build problem
5 years ago
Rick V 6e93697214
surprisingly a full abyss build works
also move the event loop code back into platform lib (!!!)
5 years ago
Rick V f277f368a1
win32 g++ is set to c++17 by default, so we use the _real_ string_view class 5 years ago
Michael 6d8d910aff
Refactor and add tests for bits.hpp 5 years ago
Michael 4c3734a146
Build everything with -fPIC 5 years ago
Ryan Tharp 5769e5c716
Merge pull request #259 from michael-loki/more_dht_tests
More dht tests
5 years ago
Michael 40e85f0f69
Tests for dht::RCNode and dht::ISNode 5 years ago
Michael 1ba6507a2f
Tests for dht::ServiceAddressLookup 5 years ago
Michael b1213c7a7c
Tests for dht::TagLookup 5 years ago
Michael 6055829df4
Remove tl::optional and use absl::optional always 5 years ago
Michael 41f9f5fad6
Import abseil LTS 20181200 5 years ago
Michael 1f95f1e78f
More unit tests of dht internals 5 years ago
Michael 40449df0f1
Split classes out of dht::Context 5 years ago
Michael 9d0d3a4cc9
Fix build on darwin 5 years ago
Michael f4e0cb2d4b
Import latest gtest from upstream - commit 569fba4d742b67753b5374b6686170afb74acb0c 5 years ago
Jeff 832ad942aa
Merge pull request #237 from despair86/dev
separate header and implementation
5 years ago
Jeff Becker cbfbdc506d
Merge branch 'staging' of ssh://github.com/loki-project/loki-network into staging 5 years ago
Rick V b062504590
static link windows unconditionally 5 years ago
Rick V d70a9fbfd4
oops, that patch would have tanked a 64-bit windows profile run 5 years ago
Rick V bef0316aab
more sun notes 5 years ago
Rick V ce9f455bf3
be more descriptive in version-info
(cherry picked from commit 427a6668ffbc1ed46042727b2ee9420cdc88aad8, it almost slipped out)
5 years ago
Rick V 3a47c96aee
how the hell does someone skip over these while redoing source tree layout 5 years ago
Rick V 3037de9450
lower non-AVX2 minimum CPU target to NetBust Xeon (Nocona, Prescott)
(cherry picked from commit e7ae0e5258)
5 years ago
Jeff Becker 9991d17976
Merge branch 'staging' into use-lokid-seed 5 years ago
Jeff Becker 465a3d3e43
redo ini parser 5 years ago
Jeff Becker d89e58199a
add initial identity key seed stuff
add more kubernetes stuff

make shared library installed if built
5 years ago
Michael ccb5f6b696
Add tests for dht::TXOwnere 5 years ago
Michael 2d395cc3f9
Move code to correct home 5 years ago
Michael 80bd41916e
More tidying of dht code 5 years ago
Michael 03d56c1591
Add test suites for dht bucket, kademlia and key 5 years ago
Michael 7296ebcbe8
Tidy dht code 5 years ago
Michael fec75125f4
Add tests for crypto/types 5 years ago
Michael da6cdfc0b2
More refactoring to continue to make dependency graph acylic 5 years ago
Michael 6e38e85a79
Produce hierarchy of 'libraries' inside libllarp 5 years ago
Jeff 11257e7b4d
Merge pull request #222 from michael-loki/crypto_folder
Split and move crypto code to a subdirectory
5 years ago
Michael 79157414f3
Split crypto.hpp into 3 different files 5 years ago
Michael 04e0fe3ad7
Move crypto code to a subdirectory 5 years ago
Michael 8a0eb6b71f
Enable C++14 for all builds 5 years ago
Jeff 328ce40212
Merge pull request #216 from michael-loki/coverage
Add flag to generate coverage data
5 years ago
Michael c655600704
Add flag to generate coverage data 5 years ago
Michael 70a55612eb
Create initial set of test cases for llarp_findOrCreate* functions 5 years ago
Michael a3463120cc
Move net components into a distinct folder 5 years ago
Michael 317e29b777
Move win32 specific files to win32 dir 5 years ago
Michael 081d4dfa32
Reorganise source into more folders 5 years ago
Michael fa2b466ffe
Reorganise tests to mirror source layout 5 years ago
Michael e5eda0fb8f
Move lokinet unspecific components to a util/ library 5 years ago
Michael 167d5aca6d
Add test suite for bencode 5 years ago
Jeff Becker 6206fb2a41
Merge branch 'datagram' into staging 5 years ago
Jeff Becker 5b87fb509e
start on kubernetes shim and fix up shared library target and ffi python code 5 years ago
Jeff Becker e88c39b9e2
more work 5 years ago
Michael a54b9a2dc4
Fix UTPTest test failures 5 years ago
Michael 9658c80b48
Minor build fixes 5 years ago
Jeff Becker f9d30b9b96
commit day's work 5 years ago
Michael 8f053106e6
Add tests for llarp::dht::Key_t 6 years ago
Jeff Becker 180ca69d02
fix issue #185 6 years ago
Jeff Becker 49c898ed92
Merge remote-tracking branch 'origin/master' into staging 6 years ago
Rick febb1a0207
version resource 6 years ago
Rick d58e17ba48
make lokinet-win32 installer safe to use for in-place upgrades
add version resource
6 years ago
despair 43afede986
make RPI option more descriptive 6 years ago
Jeff Becker 15e0597fb1
merge 6 years ago
Jeff Becker 8c8172aeb1
Merge remote-tracking branch 'origin/master' into dev 6 years ago
Michael ba95767f57
Add tests for alignedbuffer 6 years ago
Jeff Becker b39c46fc03
!!! this breaks backwards compat :^) !!!
redo link protocol to use 2 session keys, add unit tests.
6 years ago
Ryan Tharp 2e9511c978 fix make install 6 years ago
Jeff Becker ba02076122
fix up cmake more 6 years ago
Jeff Becker 49cd52adc7
include lokinet-bootstrap 6 years ago
Michael 4257b62e88
Add .cpp files for all .hpp files 6 years ago
Jeff Becker 09e01adf32
flush snode traffic queues 6 years ago
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
6 years ago
Jeff Becker fad734a5ce
strict types for pubkey, secretkey and routerid 6 years ago
Jeff Becker a770b9516f
update makefile to use cmake install 6 years ago
Jeff Becker 1704c7e234
make cmake install target work and setcap on linux 6 years ago
Jeff Becker 2e98ad804b
patch for RPI build 6 years ago
Jeff Becker f63045d5a4
Merge remote-tracking branch 'origin/master' into dev 6 years ago
Jeff Becker 1d1bde2e88
add dnslib 6 years ago
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
6 years ago
Jeff Becker baa94ec345
make windows build happy 6 years ago
Jeff Becker 11372c9544
Merge branch 'dev' into snode-endpoint 6 years ago
Jeff Becker 7e4d74cbfc
add initial jni stuff for lokinet android. i fucking hate android so god damn much. 6 years ago
Ryan Tharp 7874567611 Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
despair c17e30b587 clang from new-ci now defaults to libgcc as originally intended
add option to use the other runtime lib
6 years ago
Jeff Becker d064fc69d4
Merge remote-tracking branch 'origin/master' into dev 6 years ago
Jeff Becker 0bbf9c431a
more flags for compile 6 years ago
Ryan Tharp 40522639ce Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Ryan Tharp b707809efa fix RPI compile target and make sure $HOME/.lokinet/ exists before trying to download to it 6 years ago
Ryan Tharp efe86c2401 Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Jeff Becker f8180839db
s/17/11/ 6 years ago
Jeff Becker b64ed33755
more static linking flag magic 6 years ago
Jeff Becker a35066ce42
static link with pthread because GNU a shit 6 years ago
Jeff Becker 5357b4b69f
make clang happy, disable netns by default (for now) 6 years ago
Jeff Becker 3718a7d016
Merge remote-tracking branch 'github/master' into dev 6 years ago
Jeff Becker d37daf7996
Merge branch 'master' into dev 6 years ago
despair ae616d0fa5 minor fixes
eh

why apple why

why apple why
6 years ago
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)
6 years ago
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
6 years ago
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
6 years ago
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
6 years ago
Jeff 23c8807d59
Merge pull request #54 from neuroscr/master
DNS QoL improvements
6 years ago
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. 6 years ago
Jeff Becker 78e59fced0
remove cxx11 6 years ago
Jeff Becker f5ac1b5c0d
Merge branch 'master' into dev 6 years ago
Michael 3c5e3e79f9
Create ThreadPool component with test suite 6 years ago
Michael 8a52bf448e
Create Queue component with test suite 6 years ago
Michael 951a065867
Create QueueManager component with test suite 6 years ago
Jeff Becker 17297837d9
that's dumb af, use std::unique_ptr 6 years ago
Jeff Becker 1fc8db83ca
Merge remote-tracking branch 'rick/dev' into dev 6 years ago
Jeff Becker 9db99d4d04
fix debian build 6 years ago
despair ff6a271278 why would pos ever be negative? 6 years ago
despair 7af2dbbbc2 restore cross-compile rules 6 years ago
despair c1d07e99a0 remove dead code
(rip golden shield users D:)

remove more dead code

debug udp stuff

remove debug kqueue
6 years ago
despair 19181b5e2c fuck the apple compiler
bad merge!

make -Werror optional for end-users
6 years ago
Jeff Becker 09945dce62
initial exit/service node comm code with some unit tests (incomplete) 6 years ago
Jeff Becker a59343cfec
we NEED NT >= 6 for event loop 6 years ago
Jeff Becker 0a236d9f8c
use core2 for windows because cross compile 6 years ago
Jeff Becker cc4a836fc5
add windows target for ci 6 years ago
Jeff Becker fd87f2ac96
purge VLAs from the codebase 6 years ago
Jeff Becker 04a249a503
Merge remote-tracking branch 'rick/dev' 6 years ago
Jeff Becker 960aa479e9
fixes for ancient rpi toolchain 6 years ago
despair 48d2685e36 fix windows cross-compile 6 years ago
Jeff Becker 7a78832841
Merge remote-tracking branch 'rick/dev' 6 years ago
Jeff Becker 7090a012f3
Merge remote-tracking branch 'micheal/wextra' into dev 6 years ago
Michael Thorpe 33bfaf7ecd
Enable -Wextra
test criteria:
- test build on macOS
- test build in debian docker container
- test build in fedora docker container
6 years ago
despair 04e620ebf2 add iocp tcp connect
msys2 grabs its reactos sdk headers straight out of git
most cross-compilers use the versioned releases (v6 as of last week)

huh. for once setting the windows version macros doesn't break anything.
6 years ago
Michael Thorpe a2d5d80779
Enable warnings as errors
test criteria:
- Built from clean on macOS
6 years ago
Jeff Becker b501913f85
make android build work with gradle 6 years ago
Jeff Becker f1cca956f9
make android compile again 6 years ago
Ryan Tharp 1957916170 re-import missing addr functionality, make compile 6 years ago
Ryan Tharp 5d90cbe895 Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Ryan Tharp 26d4fd068f Merge branch 'master' of https://github.com/neuroscr/loki-network 6 years ago
Ryan Tharp 0de60ee8a5 move net into platform 6 years ago