Jeff Becker
05dc2fb679
decay profiles unconditionally
2019-04-16 13:30:07 -04:00
Jeff Becker
66432afdda
proper explore for clients
2019-04-16 13:00:24 -04:00
Jeff Becker
90e92c66c2
insert bootstrap nodes into nodedb and explore more
2019-04-16 12:44:51 -04:00
Jeff Becker
c26145f70e
* fix up integration tests
...
* make recursive router lookup backtrack
2019-04-12 11:29:48 -04:00
Jeff Becker
e08986e457
fix previous commit
2019-03-27 09:53:37 -04:00
Jeff Becker
3a4d8f16a7
more
2019-03-27 08:36:27 -04:00
Jeff
1deafe444a
serve non connected dht nodes
2019-03-27 00:07:57 -04:00
Jeff Becker
6c5a015f4f
unconditional reply
2019-02-23 12:22:34 -05:00
Jeff Becker
1694337cab
ONLY CHECK FOR ACTIVE DHT NODES
2019-02-23 11:46:29 -05:00
Jeff Becker
482dce28bd
make it work
2019-02-22 14:04:47 -05:00
Michael
13a9f65520
Fully define interface for dht::Context
2019-02-22 15:08:08 +00:00
Michael
a00d6afc5e
Convert llarp_buffer_t to be a class with methods
2019-02-17 13:09:48 +00:00
Michael
048fa83c39
Finish replacement of Router with AbstractRouter
2019-02-14 22:31:31 +00:00
Jeff Becker
46222df421
refactor
2019-02-11 12:14:43 -05:00
Jeff Becker
66753430ad
fix it
2019-02-08 16:29:56 -05:00
Jeff Becker
e1522faeaa
add introspection rpc endpoint
2019-02-08 14:43:25 -05:00
Jeff Becker
e24b595191
more dht fixing, only pick the most up to date entity for reply
2019-02-08 08:42:12 -05:00
Jeff Becker
d7f715c632
don't send more than 1 introset in reply
2019-02-08 08:21:55 -05:00
Jeff
f0dc5f2b48
unbreak build
2019-02-07 18:04:28 -05:00
Jeff
0f777d822b
Merge branch 'staging' of ssh://github.com/majestrate/loki-network into staging
2019-02-07 17:49:29 -05:00
Jeff
ba8313e57e
limit replies on introset lookup, pick newest
2019-02-07 17:48:41 -05:00
Michael
729cd045f1
Convert llarp::Router into an abstract base class
2019-02-06 09:59:47 +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
Ryan Tharp
4bf4faa956
make format
2019-02-04 16:41:33 -08:00
Michael
f3b0af9d2f
Create CopyableBuffer type
2019-02-02 23:21:35 +00:00
Michael
2de621b0ad
Disable copy constructing llarp_buffer_t
2019-02-01 01:58:13 +00:00
Ryan Tharp
c3bf68b502
Merge branch 'staging' into dht_tests
2019-01-29 13:59:54 -08:00
Michael
f24f554a01
Convert llarp::Crypto into an abstract base class
2019-01-26 15:40:58 +00:00
Michael
1f95f1e78f
More unit tests of dht internals
2019-01-26 00:40:40 +00:00
Michael
3f320009d7
Introduce abstract class for dht::Context
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
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
550669e318
Fix typo in class name
2019-01-19 13:54:50 +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
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
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
081d4dfa32
Reorganise source into more folders
2019-01-11 01:19:49 +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
Michael
516466f5be
Mark more AlignedBuffer constructors as explicit
2019-01-02 01:04:08 +00:00
Michael
ea19093a20
Remove const byte* conversion operators from llarp::AlignedBuffer
2019-01-02 01:04:04 +00:00
Michael
58364a01c8
Remove array conversion operators from llarp::AlignedBuffer
2019-01-02 01:04:01 +00:00
Michael
334161c9bb
Remove data() conversions from llarp::AlignedBuffer
2019-01-02 01:03:53 +00:00
Michael
8f053106e6
Add tests for llarp::dht::Key_t
2018-12-30 18:56:34 +00:00
Jeff Becker
49c898ed92
Merge remote-tracking branch 'origin/master' into staging
2018-12-26 11:27:11 -05:00
Jeff
4b2a1ea9f3
make format and attempt to fix #158
2018-12-23 08:29:11 -05:00
Jeff Becker
8c8172aeb1
Merge remote-tracking branch 'origin/master' into dev
2018-12-20 12:56:08 -05:00
Jeff Becker
3e37165749
Merge remote-tracking branch 'origin/master'
2018-12-20 12:23:01 -05:00
Jeff Becker
e7f5eeff51
use fewer allocations
2018-12-20 11:49:05 -05:00
Michael
037cb87523
Convert llarp::AlignedBuffer to be backed by std::array
2018-12-20 16:16:18 +00:00
Jeff Becker
6fc42dc7ad
fixes
2018-12-19 12:48:29 -05:00
Jeff Becker
cca19290de
session renegotiation, RC expiration, more utp unit tests, network isolation.
2018-12-19 11:17:41 -05:00
Ryan Tharp
46d488d9ab
improve logging explanation for testnets
2018-12-18 18:53:11 +00:00
Jeff Becker
3115636024
try fixing crash
2018-12-18 13:36:19 -05:00
Michael
4257b62e88
Add .cpp files for all .hpp files
2018-12-15 16:21:52 +00:00
Jeff Becker
be234e4b6e
* make format
...
* snode to snode direct traffic
* wire up dns on service node tun
2018-12-13 11:14:44 -05:00
Michael
85dde7b6b0
Move remaining include/llarp headers to llarp/
2018-12-12 02:53:02 +00:00
Michael
e887b4e9c7
Move service* to llarp/
2018-12-12 02:53:01 +00:00
Michael
5aa7f49470
Move routing* to llarp/
2018-12-12 02:53:01 +00:00
Michael
b92ea0521b
Move router_contact.hpp to llarp/
2018-12-12 02:53:01 +00:00
Michael
fddc8734d2
Move dht* to llarp/
2018-12-12 02:53:01 +00:00
Michael
7be452092c
Convert llarp_crypto to be a true C++ class
2018-12-11 00:53:55 +00:00
Michael
6358b25db0
Convert llarp_nodedb to be a true C++ class
2018-12-10 23:31:39 +00:00
Michael
f0fce5b68a
Convert llarp_router to be a true C++ class
2018-12-10 20:15:35 +00:00
Jeff Becker
fad734a5ce
strict types for pubkey, secretkey and routerid
2018-12-10 12:22:59 -05:00
Michael
30e9dca2e5
Convert llarp_logic to be a C++ class
2018-12-10 14:15:11 +00:00
Jeff Becker
622ed8d12e
fix crash on premature close of event loop (also make format)
2018-12-02 13:07:07 -05:00
Jeff Becker
e6037ff060
pack exit traffic
2018-11-28 11:38:20 -05:00
Jeff Becker
d25d35c06e
dht
2018-11-28 10:27:36 -05:00
Jeff Becker
10c2d1552d
don't connect to explored routers
2018-11-28 10:18:18 -05:00
Jeff
067f6c7b26
make format and make it compile with clang
2018-11-22 12:53:53 -05:00
Jeff Becker
cf57eca7c3
check keyspace distance and inform not found when next peer is not closer than previous peer
2018-11-22 09:20:49 -05:00
Jeff Becker
3dd466629b
check for nullptr
2018-11-19 12:14:35 -05:00
Jeff Becker
e0f1d985c8
more dht tweaks
2018-11-08 14:25:04 -05:00
Jeff Becker
38a92cb1a8
fixes for testnet
2018-11-08 10:15:02 -05:00
Michael Thorpe
33bfaf7ecd
Enable -Wextra
...
test criteria:
- test build on macOS
- test build in debian docker container
- test build in fedora docker container
2018-11-07 15:31:13 +00:00
Ryan Tharp
5d90cbe895
Merge branch 'master' of https://github.com/loki-project/loki-network
2018-11-03 13:43:21 +00:00
Ryan Tharp
7af23dcaad
format
2018-11-03 06:23:05 -07:00
Ryan Tharp
67390de0c2
merge
2018-11-03 06:19:18 -07:00
Jeff Becker
2d279e83fd
initial tcp connect for epoll
2018-11-01 08:47:14 -04:00
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
2018-10-30 00:16:33 -05:00
Jeff Becker
dbd2c41909
use event loop for time
2018-10-29 12:48:36 -04:00
Jeff
678f9e30eb
call cleanup timer
2018-10-27 16:02:24 -04:00
Jeff
390333c787
Merge remote-tracking branch 'origin/master'
2018-10-21 10:58:01 -04:00
Jeff
146fa13837
merge
2018-10-21 10:57:36 -04:00
Jeff Becker
cc106ed37b
fix dht bug, probably, re-enable loopback testnet functionality
2018-10-21 10:19:49 -04:00
Jeff Becker
d3278946f2
ipv4 bogon checking
2018-10-15 08:02:32 -04:00
Jeff
4158e422bb
don't store introsets when forwarding a request
2018-09-30 12:02:42 -04:00
Jeff Becker
186a36cd4b
try fixing dht crash
2018-09-27 08:47:21 -04:00
Jeff Becker
4309ea3b97
better handling for introset propagation
2018-09-21 12:37:49 -04:00
Jeff Becker
5fb08c2139
check introset timestamps
2018-09-20 07:27:18 -04:00
Jeff Becker
29cf0c9ba5
don't propagate expired introsets
2018-09-19 13:58:02 -04:00
Jeff Becker
df53e79aff
fix windows
2018-09-19 07:56:12 -04:00
Jeff Becker
acc1b625b4
actually store introsets when found
2018-09-18 11:12:26 -04:00
Jeff Becker
44cea54dea
avoid stack overflow
2018-09-15 07:54:08 -04:00
Jeff Becker
f5b8d552e1
path peer profiling
...
propagate introsets better
2018-09-14 10:50:37 -04:00
Jeff Becker
3af51cbe55
add path latency minimum checker
...
add min-latency option to hidden service config
2018-09-13 08:27:28 -04:00
Jeff Becker
c0afc97d41
better explore logic
2018-09-13 08:04:36 -04:00
Jeff Becker
832b24ba93
delete don't abort when building paths failed to key exchange
...
try making dht less talky
check timestamps on intros
2018-09-13 07:30:21 -04:00
Jeff Becker
0c1dfa4a27
check nodedb for routers not just dht peer list
2018-09-13 07:16:56 -04:00
Jeff Becker
c3a7f64344
expire introsets correctly and allow multiple tun if
2018-09-10 12:36:36 -04:00
Jeff Becker
96526058b2
update readme and make dht bootstrap work with low peer count
2018-09-09 08:27:56 -04:00
Jeff Becker
b23dab09fb
don't overwrite our RC, hide parameter.
2018-09-09 07:23:21 -04:00
Jeff Becker
ec143e11a4
explore via 1 router
2018-09-08 04:27:05 -04:00
Jeff Becker
5dfcd60df1
more
2018-09-06 16:31:58 -04:00
Jeff Becker
c3c388b6aa
remove iwp and start on curvecp
...
does not compile
2018-09-02 14:25:42 -04:00
Jeff Becker
973f86c900
it compiles
2018-08-31 08:46:54 -04:00
Jeff Becker
5228a81bae
more refactor
...
get rid of C api
2018-08-30 14:48:43 -04:00
Jeff Becker
b122fc59f8
refactor (not done)
2018-08-29 16:40:26 -04:00
Jeff Becker
199dad09dd
* kill dht feedback loop
...
* add dht exploration for discovering new routers
* tweak loopback testnet paramters to not be initially fully connected
2018-08-27 09:44:16 -04:00
Jeff Becker
ba12f3e5e2
prevent crash?
2018-08-23 11:34:43 -04:00
Jeff Becker
3625313304
clear pending dht tx
2018-08-23 11:29:43 -04:00
Jeff Becker
4e3acd0277
persist sessions between routers
2018-08-23 10:35:29 -04:00
Jeff Becker
6a828ea985
fix shadow build
2018-08-14 18:07:58 -04:00
Jeff Becker
1d3e9f6adc
make testnet no longer crash
2018-08-14 17:17:18 -04:00
Jeff Becker
e79708c1dc
hidden services sorta work
2018-08-10 17:34:11 -04:00
Jeff Becker
a9b28e5407
more fuxing around
2018-08-09 23:51:38 -04:00
Jeff Becker
86ec4dacc3
dht and testnet fixes
2018-08-04 12:59:32 +10:00
Jeff Becker
7622f6cef1
dht tweaks
2018-08-02 14:34:46 +10:00
Jeff Becker
6ffa2eed1c
fix up dht
2018-08-02 11:41:40 +10:00
Jeff Becker
12ea412763
fix dumb dht mistake
2018-08-02 11:10:58 +10:00
Jeff Becker
bc1c49b092
dht fixes
2018-08-02 08:10:38 +10:00
Jeff Becker
28f6a76312
remove unused encoding functions
2018-07-30 11:39:35 +10:00
Jeff Becker
908716aca4
cleanup
2018-07-30 09:29:36 +10:00
Jeff Becker
e91f69a0ef
* put sequence numbers in routing messages
...
* more endian crap
* don't tick logic too much
2018-07-25 08:34:46 +10:00
Jeff Becker
dbe4a35230
add sequence numbers to routing messages
2018-07-24 07:59:43 +10:00
Jeff Becker
02ca1796b2
all the files
2018-07-20 14:50:28 +10:00
Jeff Becker
7fbc21207f
more hidden service stuff
2018-07-19 14:58:39 +10:00
Jeff Becker
97e11a28f6
make format
2018-07-19 08:50:16 +10:00
Jeff Becker
994a5fe928
dht fixups
2018-07-19 08:50:05 +10:00
Jeff Becker
7c518bc4da
prefetch introset via tag (non working)
2018-07-19 06:58:16 +10:00
Jeff Becker
5d5757cbec
more dht stuff
2018-07-18 13:10:21 +10:00
Jeff Becker
2dec6428dc
introset expiration
2018-07-18 10:25:24 +10:00
Jeff Becker
6945fe53a5
more also run make format
2018-07-17 14:37:50 +10:00
Jeff Becker
bce3cd85c6
initial implementation of find intro message for hidden service dht (not done yet)
2018-07-17 07:22:25 +10:00
Jeff Becker
0242e293c9
more
2018-07-16 13:32:13 +10:00
Jeff Becker
a68cfefaa6
make it compile and run make format
2018-07-13 09:36:51 -04:00
Ryan Tharp
14fac288fc
relay job if you need to ask again (reapply, merge fix)
2018-07-13 09:28:16 +00:00
Ryan Tharp
8a7db419f9
reapply DHT changes
2018-07-13 09:27:57 +00:00
Jeff Becker
5bbaae4e2e
more
2018-07-12 14:21:44 -04:00
Jeff Becker
fe01c38d8e
* fix dht feedback loop
...
* start on dht lookups for hidden services
* make debug logging confurable on runtime with env var LLARP_DEBUG=1
* make eventloop tick only when we get traffic
* make testnet parameters configurable on runtime
2018-07-12 09:43:37 -04:00
Jeff Becker
bae4f746be
publish hidden service descriptors and acknoledge publish
2018-07-11 12:11:19 -04:00
Jeff Becker
39e100d0b2
refactor dht code to be split up a bit more
2018-07-11 09:20:14 -04:00