Commit Graph

1312 Commits (31d86ae2730802a4a6b64ae0c810b43052f88fd7)

Author SHA1 Message Date
Michael 4c6f261b06
Use std::atomic<std::uint32_t> over std::atomic_uint32_t 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 c325246beb need to start winsock to use any networking
try fixing this
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
Ryan Tharp 2daa986c33 fix static analysis issues 6 years ago
Ryan Tharp de418125f2 remove redundance from (sockaddr) param refactor 6 years ago
Ryan Tharp 42b8fc3a7a don't truncate last 2 bytes 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
Ryan Tharp 373a14b44b clang-format 6 years ago
Jeff 23c8807d59
Merge pull request #54 from neuroscr/master
DNS QoL improvements
6 years ago
Ryan Tharp 82cfa61540 address alphakamp complaint about using 127.0.0.1 on linux (systemd taking it by default) 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 930b41f644 temp commit 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 e3dc4dca11
mark paths as dead when they need to and revert codel changes 6 years ago
Jeff Becker ffccb058c4
syntax error 6 years ago
Jeff Becker ce2760135a
mark paths as active when they are 6 years ago
Jeff Becker 4e3089dee4
fix last commit 6 years ago
Jeff Becker 6866e70a95
build paths if we are out of exits on exit session 6 years ago
Jeff Becker 8d613c182f
nullptr check 6 years ago
Jeff Becker b56b3ad16d
don't remove ip mapping when endpoints are removed 6 years ago
Jeff Becker 17297837d9
that's dumb af, use std::unique_ptr 6 years ago
Jeff Becker 9d551ba768
more 6 years ago
Jeff Becker 937ab151ab
idk what is going on 6 years ago
Jeff Becker 9baf6ecfd9
idklol 6 years ago
Jeff Becker 723351eb4e
friendship with std::unordered_map is now over, std::map is my new best friend 6 years ago
Jeff Becker c7c6905e1e
explicit type 6 years ago
Jeff Becker 207e312eb0
more logging 6 years ago
Jeff Becker 01724c8529
use const iter 6 years ago
Jeff Becker 6f796d031b
use const 6 years ago
Jeff Becker 7b188d0fde
more 6 years ago
Jeff Becker 715822c20d
logging 6 years ago
Jeff Becker 60ad2c76e0
try this 6 years ago
Jeff Becker 2bfdd7798c
use emplace? 6 years ago
Jeff Becker d44872496f
gfdi 6 years ago
Jeff Becker cd94da7ffe
gfdi 6 years ago
Jeff Becker b689bbbcf6
gfdi 6 years ago
Jeff Becker 489d1e645b
actually add exit :p 6 years ago
Jeff Becker 0889071514
more logging 6 years ago
Jeff Becker 355d09e22b
random fixes 6 years ago
Jeff Becker 658210b9d1
fix up exit tun, fix up codel to actually do its job 6 years ago
Jeff Becker 2ca6a31d4c
serialize correctly 6 years ago
Jeff Becker ca3a675ac8
more logging 6 years ago
Jeff Becker 2f2d2847b3
debug logging 6 years ago
Jeff Becker 1a410c4b22
more logging 6 years ago
Jeff Becker b462090e9c
more 6 years ago
Jeff Becker fa1333b13b
meh 6 years ago
Jeff Becker b11bddad02
fixes 6 years ago
Jeff Becker 2f855c106c
increase buffer size 6 years ago
Jeff Becker 76c53a0dc9
update logging 6 years ago
Jeff Becker a520fb379b
use rxid instead of txid for exits 6 years ago
Jeff Becker d24bc70a7e
try fix 6 years ago
Jeff Becker fd4b452cdd
fix 6 years ago
Jeff Becker 9584c13aca
more 6 years ago
Jeff Becker a65a4b1b58
fix 6 years ago
Jeff Becker a3e14028d5
start exits 6 years ago
Jeff Becker 56676002aa
wire up exit traffic 6 years ago
Jeff Becker 5dbe41608f
more exit stuff 6 years ago
Jeff Becker f9a4c57d66
Merge branch 'master' into dev 6 years ago
Jeff Becker 06721ba7f3
Merge remote-tracking branch 'ryan/master' 6 years ago
Ryan Tharp 4127c9bea5 Don't let NS record stomp A values 6 years ago
Jeff Becker f40e4c0c84
more exit stuff 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 715e59808e bad merge! 6 years ago
despair ff6a271278 why would pos ever be negative? 6 years ago
Jeff Becker af7b4b75b8
Merge remote-tracking branch 'rick/dev' into dev 6 years ago
despair a361626af5 this is driving me at least mildly insane
we _never_ get to llarp::udp_listener::read
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
Jeff Becker e91d7cf88f
Merge remote-tracking branch 'rick/dev' into dev 6 years ago
Jeff Becker 9a12bfd0b1
Merge remote-tracking branch 'ryan/master' 6 years ago
Jeff Becker 394f21773a
Merge remote-tracking branch 'ryan/master' into dev 6 years ago
despair f6fb063684 this is driving me at least mildly insane
we _never_ get to llarp::udp_listener::read
6 years ago
despair d311b2e9a9 remove dead code
(rip golden shield users D:)

remove more dead code

debug udp stuff

remove debug kqueue
6 years ago
Ryan Tharp 2d190508c5 does not work on MacOS at all 6 years ago
Ryan Tharp 87b1fb8b31 fix bad merge 6 years ago
Ryan Tharp dfd602f390
Merge branch 'master' into master 6 years ago
Ryan Tharp c7aa3617b8 fix PTR record reading when answer type doesn't make question type 6 years ago
Jeff Becker 09945dce62
initial exit/service node comm code with some unit tests (incomplete) 6 years ago
Jeff 49cd5dfaa6 fix dns on macos 6 years ago
Jeff Becker 7b61cbb4a1
make dns port configurable, update default dns 6 years ago
Jeff Becker a83e21c464
add upstream dns to default hidden service 6 years ago
Jeff Becker fb0e6c3d9c
make dns configurable on runtime 6 years ago
Jeff Becker c30d908893
Merge branch 'master' into dev 6 years ago
Jeff Becker a59343cfec
we NEED NT >= 6 for event loop 6 years ago
Jeff Becker d408b08889
make windows cross compile pass, make format parts of libutp 6 years ago
Jeff Becker fd87f2ac96
purge VLAs from the codebase 6 years ago
Jeff Becker c91fc1770e
don't use VLA 6 years ago
Jeff Becker e0f1d985c8
more dht tweaks 6 years ago
Jeff Becker 38a92cb1a8
fixes for testnet 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
despair 2a5a0f1577 fix warnings on windows
up next: fix netbsd
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
Jeff Becker 58db5c1769
make android build work in android studio 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
Jeff Becker f03603a0da
always remove dht nodes, lock sometimes, don't make router destructor virtual 6 years ago
Jeff Becker 80b99d2efb
make format and parallelize analyze target in makefile 6 years ago
Jeff Becker 7c3f80e84b
Merge remote-tracking branch 'ryan/master' 6 years ago
Ryan Tharp 917edfbd4e update llarp::Addr changes 6 years ago
Jeff d630862887 fix up config generation with example snapp config 6 years ago
Michael Thorpe 4f794277bc
Fix compile issue in endpoint.cpp 6 years ago
Ryan Tharp 6192b0277e accelerate already built paths (HasPathToService) 6 years ago
Ryan Tharp 1ded1813ea lower debug 6 years ago
Ryan Tharp 25fb34c7b4 lower debug 6 years ago
Jeff 1f7e0d79e6 make Endpoint::HasPathToService behavior correct 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
Jeff 50f37d8ede don't use endpoint's paths 6 years ago
Ryan Tharp eeab475875 fix build 6 years ago
Ryan Tharp 7af23dcaad format 6 years ago
Ryan Tharp 82d8d3c04d merge 6 years ago
Ryan Tharp 67390de0c2 merge 6 years ago
Jeff Becker 080c0da4a0
remvoe const requirement and update unit tests for jsonrpc server 6 years ago
Jeff Becker e7cfc9aa6e
try fixing freebsd build 6 years ago
cathugger 73e6141023
ip: endianess swaps aren't needed, a bit of renaming and tweaking
Also `make format`.
6 years ago
Jeff Becker c8f870392f
make format 6 years ago
Jeff Becker ac1d1169bc
Merge remote-tracking branch 'rick/dev' into dev 6 years ago
Jeff 4b92661f5d * fix up kqueue tcp connection tracking so it works on mac os
* match changes in epoll for kqueue changes
* additional checks in libabyss
6 years ago
despair 57ea36f947 i knew i was forgetting something earlier 6 years ago
despair 6e862f1acf apple compiler reeeeee 6 years ago
Jeff Becker 2d279e83fd
initial tcp connect for epoll 6 years ago
despair 561c5228d3 fixed race condition in event loop....dns seems to work now :DDD 6 years ago
despair 45f46fbece this...looks promising :DDDDD 6 years ago
despair 186e2ea989 refactored event loop base classes
use the base class impl for llarp::tcp_conn::sendto

can't seem to escape quotes ;-;

yeah this need to stay out of the unix build

turn on gnu extensions

apple stuff

remove duplicate code

clean up

fix vtable

clang-format

parameter checks
6 years ago
despair 9afe63d738 polish new build script
pass cxxflags down to c++ driver
6 years ago
despair 5a32ccf220 scan-build fixes on win32 code paths 6 years ago
despair 38f2a6b2c9 be slightly less annoying
check build rules
6 years ago
despair c5d1b32286 remove microsoft c++ crud
🤔🤔🤔🤔
6 years ago
despair 5aba9776d0 fix unit test 6 years ago
despair d425b5d308 implement tcp evloop on win32
(with its now-obsolete distinction between socketfd and fd)

sockets and file descriptors used to be distinct objects....back in the
16-bit Winsock 1.1 era, which needlessly complicated the 32-bit port
back then. these days one can use [Read|Write]File(2) to operate on
sockfds...which also have some of the semantics of [read|write]v(2)
i.e. the scatter-gather thing it's known for is done in async handler

-rick

variants are nice

added note to self

clang-format

link abyss properly

oops

shut up

*shrugs*

oops forgot to start winsock

moved our async io status flags to the base class

let derived classes override them as needed

this is probably a synchronous op _anyway_

fix typo

wtf
6 years ago
despair b1c28be916 grabbed packaging scripts and fluff from abandoned repo 6 years ago
Ryan Tharp 5248283128 Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Jeff Becker e722e69543
more freebsd stuff 6 years ago
Jeff Becker 0d09dbb1c2
disable special tun behavior for freebsd 6 years ago
Jeff Becker 51bfcb5493
milliseconds not microseconds 6 years ago
Jeff Becker dbd2c41909
use event loop for time 6 years ago
Ryan Tharp 3f424e545d Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Ryan Tharp 1877498fce Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Ryan Tharp 9205b8172c scan-build fixes 6 years ago
Jeff 9f9d4cd0e0 flush during tick 6 years ago
Jeff 2ca152f43f make tun work on kqueue 6 years ago
Jeff 678f9e30eb call cleanup timer 6 years ago
Jeff 04b738aa9e make it work on osx for real 6 years ago
Jeff d3531ca561 fix macos build and add anaylze target 6 years ago
Jeff ccead80c3d make jsonrpc server configurable on build, disabled by default.
default to client only and require explicitly run as relay to run as relay.
6 years ago
Jeff Becker b3e7fee982
try making compatable with older versions of rapidjson
add toy munin plugin
6 years ago
Jeff Becker 6e1761eb05
first jsonrpc endpoint added 6 years ago
Jeff Becker 48e4f676cc
add rpc method for llarp.admin.link.neighboors 6 years ago
Jeff Becker 04d55b94c5
fix up jsonrpc stuff 6 years ago
Jeff Becker ab7a4cd805
make jsonrpc demo work 6 years ago
Jeff Becker e8bbc10838
zero copy logic for abyss::http::ConnImpl 6 years ago
Jeff Becker f873b18036
fix up event loop 6 years ago
Jeff Becker c483ec5231
bounds check for tun and tcp writing 6 years ago
Jeff Becker de17324012
don't make tcp event code epoll specific 6 years ago
Jeff Becker 957a5ed833
initial epoll event loop implementation for tcp 6 years ago
Ryan Tharp 6f261c321c Merge branch 'master' of https://github.com/neuroscr/loki-network 6 years ago
Jeff b001d1f96b try fixing whatever memory corruption happens 6 years ago
Jeff 8c591ceb96 use default endpoint 6 years ago
Jeff f35f34ede4 check for address 6 years ago
Jeff c3989cbcf4 make dns work correctly with rdns, tired of waiting just make it fucking work. 6 years ago
Jeff 5ec9b651df ony publish to near router 6 years ago
Jeff 78448174f5 don't propagate introset too far 6 years ago
Ryan Tharp 4646779b0a refactor out net.hpp => net_addr.*, new inAddr struct API 6 years ago
Jeff 0e66ba2026 flush tun on macos 6 years ago
Jeff cadc01a9b1 makeit work on macos 6 years ago
Jeff 6a6ceec514 Merge branch 'master' into dev 6 years ago
Jeff Becker dccaa77e43
correct headers 6 years ago
Jeff Becker 4411d85040
fix headers 6 years ago
despair86 d8cfac47a8
ok updated to match recent changes 6 years ago
Jeff Becker c262f8b5e3
bundle relevent libsodium parts 6 years ago
Jeff 4ea3549c21 tick and use std::unique_ptr 6 years ago
Jeff b8ed9ceea8 fix kqueue and merge changes 6 years ago
Jeff 390333c787 Merge remote-tracking branch 'origin/master' 6 years ago
Jeff 146fa13837 merge 6 years ago
Jeff Becker cc106ed37b
fix dht bug, probably, re-enable loopback testnet functionality 6 years ago
Jeff Becker c6f1355c5d
Merge branch 'master' into dev 6 years ago
Jeff Becker 118954818c
try fixing memleak 6 years ago
Jeff Becker d3bada5564
fix windows 6 years ago
Jeff Becker 51baf43e99
fix 6 years ago
Jeff Becker 94e4a6798c
fix windows 6 years ago
Jeff Becker 26ad679b1d
set send queue limit to something really big 6 years ago
Ryan Tharp c3c2eda283 clang-format 6 years ago
Ryan Tharp 3b24b69513 TunEndpoint::ObtainAddrForIP(), identity tun range better, actually return revdns for tunmapaddrs, make in-addr.arpa matching smarter, actually send 404s, additional unit test 6 years ago
Ryan Tharp db64547ab3 Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Jeff Becker 40b003b6fc
Merge branch 'dev' of ssh://github.com/loki-project/loki-network into dev 6 years ago
Jeff Becker 612057003a
de changes 6 years ago
Jeff 1cb2bb6136 Merge branch 'dev' 6 years ago
Jeff cc3908f025 more changes 6 years ago
Jeff 71172fe72b use std::unique_ptr as to not leak like a motherfucker 6 years ago