Commit Graph

918 Commits (dev)

Author SHA1 Message Date
Jeff Becker 7e3038fc26
better config settings for defaults 6 years ago
Jeff Becker 25fac844eb
make format 6 years ago
Jeff Becker 62533dda1d
better config settings for defaults 6 years ago
Jeff Becker a81b88cc93
Merge remote-tracking branch 'origin/master' into dev 6 years ago
Jeff a33f334bc2 better exit path logic 6 years ago
Jeff Becker c1e494c2c4
have llarp_ev_* use llarp_buffer_t 6 years ago
Michael e4c5f4f77a
Update from `typedef` to `using` in .hpp files 6 years ago
Jeff Becker 5d0a9d7dc7
make format 6 years ago
Jeff Becker 0ac6deff00
logging, fix hidden services 6 years ago
Jeff Becker cf57eca7c3
check keyspace distance and inform not found when next peer is not closer than previous peer 6 years ago
Ryan Tharp c850906b89 clang-format 6 years ago
Ryan Tharp 1c6031c677 clang-format 6 years ago
Ryan Tharp 0046b705e8 generic_handle_dnsc_recvfrom() remove unneeded parameter, start making daemon/dns better, deprecate raw_handle_recvfrom() 6 years ago
Jeff b7f5bb0178 Merge branch 'dev' of ssh://github.com/loki-project/loki-network into dev 6 years ago
Ryan Tharp d11ba89fbc Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Ryan Tharp adab894ffe llarp_buffer_t conversion, decode the header one less time, move up where packet hdr is set, use emplace_back instead of push_back 6 years ago
Ryan Tharp 730fff7438 change casting, SOA type start, sang/micahel code review fixes 6 years ago
Ryan Tharp 638692f48a magic numbers to defs, llarp_buffer_t implementation, cleanup, Michael/Sang code review changes 6 years ago
Jeff Becker 0bbf9c431a
more flags for compile 6 years ago
Jeff Becker 67eadff143
node whitelist option via jsonrpc 6 years ago
Jeff Becker c1377851a6
return bool when trying to establish link layer session 6 years ago
Jeff Becker a202bc58a8
use correct path roles 6 years ago
Ryan Tharp 40522639ce Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Jeff Becker 2bd2815290
don't sign traffic 6 years ago
Ryan Tharp efe86c2401 Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Jeff Becker 1380014583
set hooks 6 years ago
despair f23afc9f98 eh no more escapes 6 years ago
Jeff Becker 2e3adb48e3
add boilerplate for router whitelist via jsonrpc, disabled at the moment 6 years ago
despair 9301a4165e oof, missed the leading underscore
clang-format
fading away, PR imminent :DDDDDD
-rick
6 years ago
despair 6792f3f378 add qol fix for oldfag clients or those who inexplicably have the legacy console turned ON 6 years ago
Jeff Becker a4c30a4b81
fix merge 6 years ago
Jeff Becker b543d6243d
Merge branch 'master' into dev 6 years ago
Michael d21af22ca3
Rename defaults.h 6 years ago
Michael d750ec0605
Rename logic.h 6 years ago
Michael 1c0cf72c02
Rename endian.h 6 years ago
Michael f91d2b9e11
Rename proto.h 6 years ago
Michael e39d02ddc2
Rename version.h 6 years ago
Michael 4851c54c92
Rename common.h 6 years ago
Ryan Tharp 271ef910d7 Fix RPI build 6 years ago
Ryan Tharp 375c39e748 Merge branch 'master' of http://github.com/loki-project/loki-network 6 years ago
Ryan Tharp 3a8a90e440 make gcc 8.2 and RPI=1 happy 6 years ago
Michael 0b2ebc83e0
De-C-ify several .h headers 6 years ago
Jeff Becker 2e13daae27
start threadpool explicitly 6 years ago
Jeff Becker 4e105f3cd5
add std::optional backport option for cxx11 6 years ago
Jeff Becker 5357b4b69f
make clang happy, disable netns by default (for now) 6 years ago
Jeff Becker d37daf7996
Merge branch 'master' into dev 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
Ryan Tharp de418125f2 remove redundance from (sockaddr) param refactor 6 years ago
Ryan Tharp 7039d70aa5 clean up 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 930b41f644 temp commit 6 years ago
Jeff Becker 602a883038
add missing include for linux 6 years ago
Jeff Becker f5ac1b5c0d
Merge branch 'master' into dev 6 years ago
Michael 8a52bf448e
Create Queue 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 ae62627c50
gfdi 6 years ago
Jeff Becker 8b64bb336a
syntax error 6 years ago
Jeff Becker ce2760135a
mark paths as active when they are 6 years ago
Jeff Becker 6866e70a95
build paths if we are out of exits on exit session 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 d6c42c4a30
gfdi 6 years ago
Jeff Becker 9d551ba768
more 6 years ago
Jeff Becker 937ab151ab
idk what is going on 6 years ago
Jeff Becker c7c6905e1e
explicit type 6 years ago
Jeff Becker 7b188d0fde
more 6 years ago
Jeff Becker 60ad2c76e0
try this 6 years ago
Jeff Becker 09be390236
god fucking damnit 6 years ago
Jeff Becker 658210b9d1
fix up exit tun, fix up codel to actually do its job 6 years ago
Jeff Becker 9495f556e0
Merge remote-tracking branch 'micheal/patch-1' into dev 6 years ago
michael-loki 79504b453e
Correct warning in exit.hpp 6 years ago
Jeff Becker b11bddad02
fixes 6 years ago
Jeff Becker 08114da285
fix previous commit 6 years ago
Jeff Becker 0b63a7d66e
dont build for exit node 6 years ago
Jeff Becker 56676002aa
wire up exit traffic 6 years ago
Jeff Becker 5dbe41608f
more exit stuff 6 years ago
Jeff Becker f40e4c0c84
more exit stuff 6 years ago
Jeff Becker e91d7cf88f
Merge remote-tracking branch 'rick/dev' into dev 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
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 e0f1d985c8
more dht tweaks 6 years ago
Jeff Becker 38a92cb1a8
fixes for testnet 6 years ago
Jeff Becker 960aa479e9
fixes for ancient rpi toolchain 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
Jeff Becker f1cca956f9
make android compile again 6 years ago
Jeff Becker d4d1426a3f
bump version kuz yolo 6 years ago
Jeff Becker b96ee375c9
Merge remote-tracking branch 'micheal/virtual' 6 years ago
Jeff Becker 13f9816c38
format 6 years ago
Jeff Becker 11e2e565c3
correct endianness 6 years ago
Jeff Becker 80b99d2efb
make format and parallelize analyze target in makefile 6 years ago
Michael Thorpe a5f99def0b
Specify override and final in inheritance tree of llarp::IBEncodeMessage 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
Michael Thorpe 4f794277bc
Fix compile issue in endpoint.cpp 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 67390de0c2 merge 6 years ago
Jeff Becker f285a0ac3e
update tests 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 2d279e83fd
initial tcp connect for epoll 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 c5d1b32286 remove microsoft c++ crud
🤔🤔🤔🤔
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
Ryan Tharp 5248283128 Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Jeff Becker 69e187cfd7
make it compile 6 years ago
Jeff Becker 0320736cae
don't shadow 6 years ago
Jeff Becker dbd2c41909
use event loop for time 6 years ago
Ryan Tharp 7bfbe78d73 Merge branch 'master' of https://github.com/neuroscr/loki-network 6 years ago
Jeff b842f5af20 tweak lookup timeout 6 years ago
Ryan Tharp 3f424e545d Merge branch 'master' of https://github.com/loki-project/loki-network 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 957a5ed833
initial epoll event loop implementation for tcp 6 years ago
Ryan Tharp d800e4dd17 add doc 6 years ago
Ryan Tharp 6f261c321c Merge branch 'master' of https://github.com/neuroscr/loki-network 6 years ago
Jeff 21e20dde18 change scope 6 years ago
Jeff 8c591ceb96 use default endpoint 6 years ago
Jeff 429cd3b63c use const 6 years ago
Jeff 7953f1fa48 make it compile 6 years ago
Jeff f35f34ede4 check for address 6 years ago
Jeff 5997960f70 make it compile 6 years ago
Jeff c3989cbcf4 make dns work correctly with rdns, tired of waiting just make it fucking work. 6 years ago
Ryan Tharp 4646779b0a refactor out net.hpp => net_addr.*, new inAddr struct API 6 years ago
Jeff Becker e469b55200
update to not use sodium.h 6 years ago
Jeff Becker 4411d85040
fix headers 6 years ago
despair86 d8cfac47a8
ok updated to match recent changes 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 f16cfd60e4
bump version string 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
Ryan Tharp eca721a9c2 add note 6 years ago
despair86 9d546cbac4 separate read and write event ports to avoid overwriting queue events 6 years ago
despair86 b2cb4cd0e8 fix uint 6 years ago
Jeff Becker 15c99f3192
unit tests for bogons 6 years ago
Jeff Becker e4f8917a89
correct ip range check 6 years ago
Jeff 1da0f9f6f5 path randomization for lookups on failure 6 years ago
Jeff Becker f72a954029
log endpoint when requesting introset 6 years ago
Jeff Becker d3278946f2
ipv4 bogon checking 6 years ago
cathugger 4d5f5fecfa
ip: make things fragmentation-aware, cleanup UDP handling; also format
one's complement math is pretty fun
6 years ago
Jeff Becker bf9512dfaf
Merge remote-tracking branch 'ryan/master' 6 years ago
Jeff Becker 8bf28940d1
Merge remote-tracking branch 'cathugger/master' 6 years ago
cathugger fdc54a4cce
ip: insignificant change of arguments case 6 years ago
cathugger 18c20396b6
add {h,n}uint16_t types, optimize TCP/UDP checksuming
use static functions + switch instead of lambda functions + map.
6 years ago
despair86 e08dedf7a2 really fix endianness 6 years ago
despair86 630cf99bae fix inet4 to inet6 transition bug 6 years ago
Ryan Tharp 14ccb2f81e Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Jeff Becker 252b2ee3fb
move function into source file out of header and add operator overloading for == and != on introset 6 years ago
cathugger 71c9965471
ip: code cleanups and compatibility improvements
do not assume that packets come with address zero-ed, older clients don't do that.
they don't modify checksum either, therefore we should be able to get correct checksum if we use deltachksum with old and new addresses.
6 years ago
cathugger e1c7d8a696 some tweaks and fixups 6 years ago
cathugger 4971fae171 uint32_t byte ordering type safety 6 years ago
Jeff Becker aa988a6fa4
Merge remote-tracking branch 'cathugger/master' 6 years ago
cathugger 05e6c31238 ip: some fixes and tweaks 6 years ago
Jeff Becker 32a028f6d8
Merge remote-tracking branch 'cathugger/master' 6 years ago
Jeff Becker 6f781def8d
update logger to do less allocations 6 years ago
cathugger b5392c5679 make format 6 years ago
cathugger 4cba59f3c4 tun+ip: clarify what happens where 6 years ago
Ryan Tharp e0ecb468b6 make sure everything is exposed, improve comments 6 years ago
Ryan Tharp 529cd4e6a3 expose dns_query and build_dns_packet() 6 years ago
Ryan Tharp 3f8dbeca49 expose internal functions, fix language scoping 6 years ago
Ryan Tharp 1e43fc2243 deprecate some cruft and hopefully it won't break anything 6 years ago
Ryan Tharp f2fc95550d implement logLevel None 6 years ago
Ryan Tharp 9b3bd751e7 non-const sockaddr support 6 years ago
Jeff Becker 475ac63f4a
initial admin api infra 6 years ago
Ryan Tharp 2fb5eaba1c remove getSockAddr() per Jeffs PR CR, add additional notes to reduce confusion 6 years ago
Ryan Tharp 4d3ad13daa Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Ryan Tharp 9bc9eed1d5 Merge branch 'master' of https://github.com/neuroscr/loki-network 6 years ago
Jeff 1f250ad9f6 better operator overload 6 years ago
Jeff 0c4709efdd Merge branch 'master' of ssh://github.com/loki-project/loki-network 6 years ago
Jeff 93586c5bbb forgot file 6 years ago
Jeff a1d1518bc0 update logging to use human readable time 6 years ago
despair86 3c13101beb clang-format 6 years ago
despair86 94c5f46d33 try fixing win32 event loop 6 years ago
Jeff 11753f5d7e clarification for path transfer 6 years ago
Jeff Becker 746e95994e
stricter profiling and better handover 6 years ago
Jeff Becker dd8dd7430b
double path build timeouts 6 years ago
Ryan Tharp 1efb68e9cd
pass tracker into dns_iptracker_setup 6 years ago
Ryan Tharp bd1a25856e Merge branch 'master' of https://github.com/neuroscr/loki-network 6 years ago
Ryan Tharp 17cf64f029 make inform pass by val so the ref doesn't get delete and used 6 years ago
Ryan Tharp 27afd392f2 pass tracker into dns_iptracker_setup 6 years ago
Jeff Becker b724cc54fe
Merge remote-tracking branch 'ryan/master' 6 years ago
Jeff Becker f19f78b573
try better handover logic 6 years ago
Ryan Tharp b4dbca680a Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Jeff 6b9900de4f Merge branch 'master' of ssh://github.com/loki-project/loki-network 6 years ago
Jeff 8cc507f9ac don't hang :DDDDDD 6 years ago
Ryan Tharp f4c5999852 Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Jeff Becker 0b0278a312
we don't use crypto_async anymore 6 years ago
Jeff Becker 8e30af6619
forgot file 6 years ago
Ryan Tharp 604c44e191 use llarp::Addr, added some guards 6 years ago
Jeff Becker 91becb93c9
try fixing dht 6 years ago
Ryan Tharp 6bfd55f3f4 fix headers, clang-format, favor llarp::Addr 6 years ago
Ryan Tharp f032a83e37 use llarp::Addr to store local private ip 6 years ago
Ryan Tharp c40d5f4c4d notes and guard 6 years ago
Ryan Tharp a0082e95bb change dll from tunEndpoint to router hidden service context, const some unchanging ptrs, use llarp::Addr more 6 years ago
Ryan Tharp 8f32f357c2 hasEndpoints(), mapAddressAll_context(), iterate(), MappAddressAllIter() 6 years ago
Ryan Tharp a24c36a497 clang-format 6 years ago
Ryan Tharp 48d9a38534 getSockAddr(), findFreePrivateRange(), findFreeLokiTunIfName() 6 years ago
Ryan Tharp 50a87f605e new log level: none 6 years ago
Ryan Tharp 4b3b09736b Merge branch 'master' of https://github.com/loki-project/loki-network 6 years ago
Jeff acc03fcad7 add default hidden service endpoint for clients 6 years ago
Jeff f3d446dafb handover logic fix, remove and add logging 6 years ago
despair86 9fdde65798 make bencode ILP32/LLP64 clean (long is 32 bits outside of unix!)
actually open new RCs in binary mode
clang-format
win32 skeleton code for tun (still working on the guts)
6 years ago
despair86 8ac7d4f6dc if we didn't specify a path to save our config in, only create .lokinet on the assumption that $HOME or $APPDATA (on NT) already exist
add win32 tun glue, fix llarp timebase
(In fact, _both_ of these are guaranteed to exist on their respective platforms.)
also, tuntap is now wired up to the windows port
6 years ago
despair86 e3a94101b4 the AVX2 codepaths now appear to be 32-bit clean.
old hard-coded inline asm is still included if requested.
-rick

nb: is a vector of eight floats not the same layout as a simple linear array of same? (Aside from the alignment requirements)

netbsd-family build fixes, also - the AVX2 codepaths are _compiler-specific_, they use features _exclusive_ to gcc and clang
6 years ago
despair86 7f809eb53b fix windows build 6 years ago
Jeff Becker 23cff0bee3
try fixing all that tun shit, YOLO 6 years ago
Jeff Becker 9e8563a884
cache convo tag and drop traffic 6 years ago
Jeff Becker 681e669fd8
try better publish logic and timeouts for requests 6 years ago
Ryan Tharp 46f6d005d7 minor cleanup 6 years ago
Ryan Tharp e890ef2e5b ensure_config split router/client refactor, move C++ stuff to .hpp 6 years ago
Ryan Tharp 058ed4d4ea Merge branch 'master' of https://github.com/neuroscr/loki-network 6 years ago
Jeff Becker 138c222a1a
dns port configurable at compile time (make this configurable on runtime plz) 6 years ago
Ryan Tharp 0ee4eebb69 was supposed to be in last commit 6 years ago
Ryan Tharp 232b471545 note and clang-format 6 years ago
Ryan Tharp 638fff6b7e clang-format (how was this missed before?) 6 years ago
Ryan Tharp de1fe9d607 add note 6 years ago
Ryan Tharp 1e72326f0c llarp_dnsd_init() use llarp::Addr more 6 years ago
Ryan Tharp 7f47adf2a0 rely on llarp::Addr more, support list of resolvers 6 years ago
Ryan Tharp 094223a257 from_4int() and from_char_array() refactor 6 years ago
Jeff Becker 36c927fc79
premptively build path to selected intro's router every time we don't have it if we get an introset update, on the outbound context 6 years ago
Jeff Becker 8a4b2e97a5
add lint target for makefile using clang tidy
run make format
6 years ago
Jeff Becker 8878e5c4d1
redundancy with outbound contexts
have multiple outbound contexts and send on the one that is alive
6 years ago
Jeff Becker 72ce48d3ea
use correct compare 6 years ago
Jeff Becker 869b758365
more 6 years ago
Jeff Becker fa5389cb05
docstrings and manual rebuild if the path expires soon 6 years ago
Jeff Becker 186a36cd4b
try fixing dht crash 6 years ago
Jeff Becker d71882259e
try spacing path building out more wide in time so that intros don't die in the same small interval 6 years ago
Jeff Becker b40dd30c7a
linear backoff for path building to lessen strain on the network 6 years ago
Ryan Tharp ca532e39c8 Merge branch 'master' of https://github.com/neuroscr/loki-network 6 years ago
Ryan Tharp 1436036d94 make sure all vectors are unique_ptr, unorder maps (optimization) 6 years ago
Ryan Tharp 89d41dd365
Merge branch 'master' into master 6 years ago
Jeff Becker b273676a63
more logic for dead sessions to prevent segfault 6 years ago
Jeff Becker 16508a99db
tweak timeouts more 6 years ago