Commit Graph

4266 Commits

Author SHA1 Message Date
Jeff Becker
7da65fc1d7
don't send padding by default 2018-06-14 16:34:35 -04:00
Jeff Becker
d3d14ba03a
fix infinite loop 2018-06-14 16:33:05 -04:00
Jeff
98f332f7a5 make it work on mac os with makefiles 2018-06-14 16:13:07 -04:00
Jeff Becker
22d4d5b3d0
make rcutil build 2018-06-14 15:28:27 -04:00
Jeff Becker
53eb3d0a59
default to c++11 2018-06-14 15:22:26 -04:00
Jeff
31c26d1a85
Merge pull request #5 from neuroscr/master
PATH_SEP, FS shim
2018-06-14 15:00:31 -04:00
Jeff Becker
0d85577fac
exponential backoff 2018-06-14 13:35:12 -04:00
Jeff Becker
11f9c3532b
default lookup job to not found 2018-06-14 11:46:45 -04:00
Jeff Becker
3dc5f3ddf6
be concise 2018-06-14 11:44:55 -04:00
Jeff Becker
1395cb8518
iterative search as well as recursive 2018-06-14 11:42:21 -04:00
Jeff Becker
d645c07290
fix up dht 2018-06-14 11:39:54 -04:00
Jeff Becker
6e5ebd62bf
do dht lookup for unknown routers 2018-06-14 11:10:31 -04:00
Jeff Becker
1288148999
slightly better iwp session establish logic 2018-06-14 11:01:10 -04:00
Jeff Becker
b3f1440b19
correct iwp session logic 2018-06-14 10:34:51 -04:00
Jeff Becker
c28d17d2d5
verify rc sig in iwp 2018-06-14 10:27:28 -04:00
Jeff Becker
43bf2c3dbb
verify authenticity of iwp session (initial) 2018-06-14 10:26:03 -04:00
Jeff Becker
ccf8574c03
make unit tests work 2018-06-14 10:04:42 -04:00
Ryan Tharp
ce8d0f48b7 Merge branch 'master' of https://github.com/majestrate/llarp 2018-06-14 07:55:55 +00:00
Ryan Tharp
2b08fb1235 windows support 2018-06-14 00:49:56 -07:00
Ryan Tharp
72bc32dcf4 define PATH_SEP, llvm 3.8 fs shim 2018-06-14 00:48:42 -07:00
Jeff Becker
d5fe7623fc
more dht stuff 2018-06-13 12:32:34 -04:00
Jeff Becker
9d66b3a1a6
xenial backport fix 2018-06-13 09:26:12 -04:00
Jeff Becker
09d6a46cad
correct encoding of aligned buffer 2018-06-13 09:18:18 -04:00
Jeff Becker
c104abb9c2
make nodedb work 2018-06-13 09:09:19 -04:00
Jeff Becker
10ddc3da8a
async load rc 2018-06-13 08:58:51 -04:00
Ryan Tharp
d8329b9955 Merge branch 'master' of https://github.com/majestrate/llarp 2018-06-13 11:53:18 +00:00
Ryan Tharp
7ad98cad9f was supposed to be in last commit, and context wasn't. Context just loads from disk now 2018-06-13 04:41:23 -07:00
Ryan Tharp
087f4c2f02 clean up llarp_nodedb_async_verify api, make setRC save to correct path 2018-06-13 04:40:49 -07:00
Jeff Becker
2ff92efea5
merge all 2018-06-13 07:37:44 -04:00
Jeff Becker
0d9025bc7d
Merge remote-tracking branch 'ryan/master' into dev 2018-06-13 07:31:34 -04:00
Ryan Tharp
1cf247e36e Merge branch 'master' of https://github.com/majestrate/llarp 2018-06-12 21:53:55 +00:00
Jeff Becker
4758bc119a
more onion routing code 2018-06-12 12:45:12 -04:00
Jeff Becker
d2700f818b
comply with spec
update spec
2018-06-12 08:49:23 -04:00
Jeff Becker
a8ab66f4f8
refactor to use AlignedBuffer for public key, shared secret, nonce, secret key etc 2018-06-12 07:57:14 -04:00
Jeff Becker
f80cce26c6
encrypt in place 2018-06-11 09:44:49 -04:00
Jeff Becker
9d749d20ae
encrypted frames 2018-06-11 09:25:10 -04:00
Jeff Becker
ec53cab169
more onion routing stuff 2018-06-10 10:05:48 -04:00
Jeff Becker
a947806b57
start working on onion routing parts 2018-06-08 09:12:17 -04:00
Jeff Becker
3e293eed6c
lessen warning threshold for slow jobs 2018-06-07 12:30:54 -04:00
Jeff Becker
315798a0c4
* loopback test network
* fix various crashes and race conditions

* rename iwp-connect to connect in config

* rename iwp-links to bind in config

* always make a link just for outbound sessions even if no bind section is provided
2018-06-07 12:22:49 -04:00
Ryan Tharp
716f64634d compile fix and remove unneeded patterning 2018-06-07 02:40:06 -07:00
Ryan Tharp
70579e6846 finish implementing llarp_nodedb_async_verify, move context inside llarp_async_verify_rc 2018-06-07 02:36:30 -07:00
Ryan Tharp
373fbc58dc move struct so we can compile 2018-06-07 07:14:52 +00:00
Ryan Tharp
7b8ef635e4 Merge branch 'master' of https://github.com/majestrate/llarp 2018-06-07 06:49:57 +00:00
Jeff Becker
a0f1d548f8
more shadow stuff 2018-06-06 17:23:57 -04:00
Jeff Becker
90611731a5
initial shadow test net 2018-06-06 13:02:57 -04:00
Jeff Becker
e12bd9442f
expose multi process/single process option 2018-06-06 08:49:46 -04:00
Jeff Becker
0278ba559c
add single threaded mode for shadow 2018-06-06 08:46:26 -04:00
Jeff Becker
4fd0ef6984
timer fixes 2018-06-05 07:48:06 -04:00
Jeff Becker
d3782cb3ab
update timer 2018-06-04 13:22:14 -04:00
Ryan Tharp
d0196fdc65 comment and error output 2018-06-04 06:11:13 -07:00
Ryan Tharp
a7abaa7f02 llvm 3.8 fixes 2018-06-04 06:10:19 -07:00
Ryan Tharp
bbf9f2274c fix kqueue on OSX 2018-06-04 06:08:35 -07:00
Ryan Tharp
b7fe7e465c llvm 3.8 compat 2018-06-04 06:07:31 -07:00
Ryan Tharp
6e1a0e1702 Merge branch 'master' of https://github.com/majestrate/llarp 2018-06-04 12:59:20 +00:00
Jeff Becker
d5e232d7c5
advance iterator 2018-06-04 07:59:29 -04:00
Jeff Becker
eae8a81e35
fix timer a bit more 2018-06-04 07:49:37 -04:00
Jeff Becker
98130d0dcd
fix up timer 2018-06-04 07:46:02 -04:00
Ryan Tharp
87c6571bc2 fixed context, change deletion method 2018-06-04 01:42:21 +00:00
Ryan Tharp
129605cc36 Merge branch 'master' of https://github.com/neuroscr/llarp 2018-06-04 00:43:11 +00:00
Ryan Tharp
56fcaaa567 Merge branch 'master' of https://github.com/majestrate/llarp 2018-06-03 22:49:04 +00:00
Jeff Becker
4ce92ae9d1
xenial 2018-06-03 11:41:41 -04:00
Jeff Becker
c9fe6c374f
try fixing timer again 2018-06-03 11:40:12 -04:00
Jeff Becker
f8be941bce
more timer fixing shit 2018-06-03 11:31:26 -04:00
Jeff Becker
1effcf88f8
try fixing timer 2018-06-03 11:27:22 -04:00
Jeff Becker
c4fef111d2
add breaak 2018-06-03 11:04:46 -04:00
Jeff Becker
000658d7b0
fix hashing 2018-06-03 11:02:00 -04:00
Jeff Becker
5fb1953ee9
more checks 2018-06-03 10:41:59 -04:00
Jeff Becker
0416bda24f
reassemble in order 2018-06-03 10:34:00 -04:00
Jeff Becker
698cc0489e
logging 2018-06-03 10:28:22 -04:00
Jeff Becker
4231243931
more iwp tweaking 2018-06-03 10:06:56 -04:00
Jeff Becker
70d19621ee
immediate acknoledge xmit and then trasnmit frags 2018-06-03 09:49:12 -04:00
Jeff Becker
adeb3ca837
xenial backport 2018-06-03 09:39:13 -04:00
Jeff Becker
c2d76dce3a
inbound message fixes 2018-06-03 09:36:38 -04:00
Jeff Becker
2075f9a6b8
add discard message for testing 2018-06-03 09:04:51 -04:00
Jeff Becker
04628874cd
handle message fragmentation better 2018-06-03 08:35:50 -04:00
Jeff Becker
0d4baa924e
bounds check 2018-06-03 08:17:06 -04:00
Jeff Becker
a3628f153a
fix 2018-06-02 10:44:26 -04:00
Jeff Becker
0acf142619
make it compile 2018-06-02 10:41:30 -04:00
Jeff Becker
840c7c4925
fix timeout issue 2018-06-02 10:40:41 -04:00
Jeff Becker
1c2155284e
only keepalive when established 2018-06-02 09:46:35 -04:00
Jeff Becker
7ea64305ab
keepalive every tick 2018-06-02 09:42:19 -04:00
Jeff Becker
3fd79f73c6
increment iterator 2018-06-02 09:36:59 -04:00
Jeff Becker
3ad3dbd29d
add debug 2018-06-02 09:34:06 -04:00
Jeff Becker
c6b3a45eca
actually call session ticker 2018-06-02 09:22:08 -04:00
Jeff Becker
87aabefddc
some fixups on link layer
only add trusted routers to DHT
2018-06-02 09:18:11 -04:00
Ryan Tharp
a6f3e09d8b remove debug 2018-06-01 15:41:10 -07:00
Ryan Tharp
34dca85780 fix BSD compile issue, added some debug, OSX compile fixes 2018-06-01 15:39:30 -07:00
Ryan Tharp
3f6a5c4ca5 Merge branch 'master' of https://github.com/majestrate/llarp 2018-06-01 21:55:48 +00:00
Jeff Becker
fe7388bd69
make it work 2018-06-01 17:47:38 -04:00
Jeff Becker
620b9616a6
initial dht implementation 2018-06-01 17:35:17 -04:00
Jeff Becker
1a6a0755e3
fix compile warning 2018-06-01 14:05:40 -04:00
Jeff Becker
3db5bffbbd
fix xenial backport 2018-06-01 13:54:21 -04:00
Jeff Becker
9816fd65e9
* logging refactor to be concise
* don't inline bencode

* refactor initial start of dht code a bit
2018-06-01 13:47:37 -04:00
Jeff Becker
0724479eba
fix logging 2018-06-01 10:24:58 -04:00
Jeff Becker
5649d261ae
start fleshing out dht subsystem a bit 2018-06-01 10:08:54 -04:00
Ryan Tharp
40dedf7471 start of async version of verifying router contacts 2018-05-31 06:08:06 -07:00
Ryan Tharp
ee28623dbf important threading note 2018-05-31 06:07:52 -07:00
Ryan Tharp
5f3c2b4499 implement missing llarp_alloc struct 2018-05-31 06:06:28 -07:00
Ryan Tharp
563f94773b Merge branch 'master' of https://github.com/majestrate/llarp 2018-05-31 09:32:38 +00:00
Jeff Becker
fe19314484
more stuff 2018-05-30 16:56:47 -04:00
Ryan Tharp
eebb36683c new getter/setter style API 2018-05-29 17:40:02 -07:00
Jeff Becker
c45e9e9f0a
add frame counter 2018-05-29 14:56:00 -04:00
Jeff Becker
1b1969891e
make reused sessions alive again 2018-05-29 14:36:40 -04:00
Jeff Becker
db48e82841
fix up naming 2018-05-29 14:32:47 -04:00
Jeff Becker
ba87b1036a
initialize inner member 2018-05-29 14:17:28 -04:00
Jeff Becker
2bcb4d30fd
handle intro/introack better 2018-05-29 14:08:39 -04:00
Jeff Becker
3425e73a9c
try fixing race 2018-05-29 13:45:33 -04:00
Jeff Becker
052b53df69
use unorderd_map not map 2018-05-29 12:11:32 -04:00
Jeff Becker
21ed6de756
try fixing multi session 2018-05-29 12:01:28 -04:00
Jeff Becker
55be8ee6a3
handle frag messages in iwp 2018-05-29 11:47:10 -04:00
Jeff Becker
6ce74fe130
use emplace not try_emplace for backport 2018-05-29 10:57:13 -04:00
Jeff Becker
8351f19e9a
retry on session already made 2018-05-29 09:45:47 -04:00
Jeff Becker
31cbfd255e
ipv4 fixes 2018-05-29 09:40:26 -04:00
Ryan Tharp
9f2d7f717a Merge branch 'master' of https://github.com/majestrate/llarp 2018-05-29 12:21:50 +00:00
Ryan Tharp
3808ea1215 FreeBSD use specific FreeBSD pthread naming api 2018-05-29 05:16:44 -07:00
Ryan Tharp
a57cffa481 AF_LINK support (AF_PACKET guard), fallback to ipv4 if ipv6 doesn't connect 2018-05-29 05:16:08 -07:00
Jeff Becker
bee7c2b271
ipv4 fixes 2018-05-29 08:15:48 -04:00
Ryan Tharp
d7672aa37a AF_PACKET guards 2018-05-29 05:15:34 -07:00
Ryan Tharp
5efbb00189 kqueue support 2018-05-29 05:14:50 -07:00
Ryan Tharp
78007425fd use FreeBSD API for setting thread names 2018-05-29 05:13:33 -07:00
Jeff Becker
57c39eeded
prevent double free 2018-05-28 16:58:10 -04:00
Jeff Becker
a00a0622d1
more docs
more logging
2018-05-28 16:51:15 -04:00
Jeff Becker
56a0efd41d
remove logging 2018-05-28 10:28:26 -04:00
Jeff Becker
24caf1fc8c
docs 2018-05-28 10:26:16 -04:00
Jeff Becker
02d785d30c
add release targets to makefile for future
purge llarp_alloc

colored logging
2018-05-28 09:49:44 -04:00
Jeff Becker
e58bd10b23
add python ffi example wrapper code 2018-05-27 15:13:25 -04:00
Jeff Becker
3f21cc5865
make c api for main 2018-05-27 14:03:10 -04:00
Jeff Becker
4a3a0fc556
make an application context to simplify the main function 2018-05-27 13:44:01 -04:00
Jeff Becker
956973cb84
use configurable number of net io threads 2018-05-27 12:45:04 -04:00
Jeff Becker
bfaa837bce
refactor everything to use logger 2018-05-27 10:04:30 -04:00
Jeff Becker
39b1714f27
add minimal logger
move some printf to use logger

remove warnings from bencode.h
2018-05-27 09:42:55 -04:00
Jeff Becker
720452770b
* add removing timer jobs
* remove timer before session timeout

* don't reschedule timer right before timeout
2018-05-27 08:49:10 -04:00
Jeff Becker
c51d29a0c6
add link level keepalive
remove debugging messages

start handling more messages
2018-05-26 14:31:45 -04:00
Jeff Becker
93f0e03958
handle inter node messages
currently only handling LIM
2018-05-25 13:52:10 -04:00
Jeff Becker
c2ef57d9a2
Merge remote-tracking branch 'ryan/master' 2018-05-25 08:27:54 -04:00
Jeff Becker
7b7cc712d5
fix types 2018-05-25 08:24:31 -04:00
Jeff Becker
dc92b98c9c
more protocol changes to make it saner.
iwp sessions now can derive session key
2018-05-24 12:04:34 -04:00
Jeff Becker
4929bf0da8
fix with gcc and use default c++ compiler 2018-05-24 09:03:11 -04:00
Jeff Becker
b2a9605745
it does stuff :DDDDDDDD 2018-05-23 16:37:43 -04:00
Jeff Becker
d426f9e65e
more 2018-05-23 09:49:00 -04:00
Ryan Tharp
4d911f94d6 remove debug 2018-05-22 23:54:42 +00:00
Ryan Tharp
9ea9a6b527 fix struct declaration to make gcc 7.3 happy 2018-05-22 23:17:37 +00:00
Jeff Becker
d8631bb2b5
fix leaks 2018-05-22 15:19:06 -04:00
Jeff Becker
71c34231b2
Merge remote-tracking branch 'ryan/master' 2018-05-22 14:41:38 -04:00
Jeff Becker
bc9e32d690
clang format and lots of stupid bug fixes 2018-05-22 11:54:19 -04:00
Jeff Becker
ae5243cc95
add clang format but don't format YET 2018-05-21 10:28:15 -04:00
Ryan Tharp
ea5f4ba2d5 Merge branch 'master' of https://github.com/majestrate/llarp 2018-05-21 13:22:02 +00:00
Jeff Becker
4e19ce8191
add buffer helper 2018-05-21 09:17:07 -04:00
Ryan Tharp
7495c2fc19 remove unneeded temporary variable per code review 2018-05-21 12:57:37 +00:00
Ryan Tharp
9e1d8bd943 u key (last updated), minor whitespace 2018-05-21 12:44:50 +00:00
Ryan Tharp
fa49085e43 llarp_findOrCreateIdentity(), llarp_rc_write(), llarp_rc_clear(), llarp_rc_addr_list_iter(), llarp_rc_set_addrs(), llarp_rc_set_pubkey(), llarp_rc_sign(), minor whitespace cleanup 2018-05-21 12:43:32 +00:00
Jeff Becker
cc97da29d4
named threadpool 2018-05-20 14:56:34 -04:00
Jeff Becker
bffb4c3f3a
fixes 2018-05-20 13:55:54 -04:00
Jeff Becker
6cc469775f
implement rc signing 2018-05-20 13:45:47 -04:00
Jeff Becker
0f6c0d8a56
start fixing up main 2018-05-20 12:15:16 -04:00
Jeff Becker
87ae0aa972
make it nicer 2018-05-20 11:35:59 -04:00
Jeff Becker
14b795a384
refactor async crypto and remove old unneeded code 2018-05-20 10:54:52 -04:00
Jeff Becker
a3a359de8e
update docs and make it compile 2018-05-20 09:43:42 -04:00
Jeff Becker
d86c459cdb
more 2018-05-19 13:21:56 -04:00
Jeff Becker
0cc6d175cf
does not compile. update spec. 2018-05-19 09:36:42 -04:00
Jeff Becker
14d2de8edb
add initial iwp async crypto for intro 2018-05-18 16:08:57 -04:00
Jeff Becker
4939c7a5e3
fix threading and stopping 2018-05-18 14:27:13 -04:00
Jeff Becker
e695906c0c
make timer work 2018-05-18 13:50:21 -04:00
Jeff Becker
ce8e5088c4
more meat for iwp 2018-05-18 13:10:48 -04:00
Jeff Becker
3f675f0290
update iwp 2018-05-18 12:09:45 -04:00
Jeff Becker
d6b5fc5224
update iwp 2018-05-18 12:08:47 -04:00
Jeff Becker
9deafe7ce8
more 2018-05-18 10:48:30 -04:00
Jeff Becker
8b8deb49ba
remove old file 2018-05-18 10:40:42 -04:00
Jeff Becker
cb351ae9ff
refactor iwp, get rid of dtls 2018-05-18 10:40:06 -04:00
Jeff Becker
cb53d66869
mbedtls 2018-05-18 09:54:15 -04:00
Jeff Becker
4959067af2
it binds 2018-05-18 09:17:58 -04:00
Jeff Becker
64d5265102
more 2018-05-18 08:39:17 -04:00
Jeff Becker
f022a5bcdf
more 2018-05-17 16:00:58 -04:00
Jeff Becker
420f49a288
fix leak 2018-05-16 14:16:23 -04:00
Jeff Becker
91a9108300
refactor 2018-05-16 14:13:18 -04:00
Jeff Becker
c0ff64868d
more meat 2018-05-16 12:41:20 -04:00
Jeff Becker
69498bd104
fix warnings 2018-05-16 11:53:28 -04:00
Jeff Becker
7b46e44859
more 2018-05-16 11:49:16 -04:00
Jeff Becker
f7e52a1878
more 2018-05-16 11:30:05 -04:00
Jeff Becker
e4005102ba
cleanup 2018-05-16 10:09:02 -04:00
Jeff Becker
63150549fc
start moving to cmake 2018-05-16 09:56:51 -04:00
Jeff Becker
45cd73b1c2
more gutts 2018-05-13 14:07:36 -04:00
Jeff Becker
76d885d39e
more 2018-05-10 19:32:46 -04:00
Jeff Becker
4cc5059cbe
format 2018-04-30 14:18:34 -04:00
Jeff Becker
8aa898aef8
more 2018-04-30 14:18:18 -04:00
Jeff Becker
a5611e2206
format 2018-04-30 12:14:29 -04:00
Jeff Becker
8181670bf3
format 2018-04-30 12:14:20 -04:00
Jeff Becker
a7703b0dbc
refactor threadpool 2018-04-30 10:57:13 -04:00
Jeff Becker
d31391d856
start removing libuv 2018-04-30 09:18:57 -04:00
Jeff Becker
02dfb7c3a9
more 2018-04-08 08:18:16 -04:00
Jeff Becker
09be72b5b6
clang format 2018-04-05 10:43:16 -04:00
Jeff Becker
84ab8a792a
more 2018-04-05 10:38:22 -04:00
Jeff Becker
2687d9aeee
more 2018-04-05 10:23:14 -04:00
Jeff Becker
8c2bbbb2eb
more 2018-04-04 12:10:27 -04:00
Jeff Becker
dcc5e6e348
more 2018-04-04 11:19:11 -04:00
Jeff Becker
a449dffc09
more 2018-04-04 09:54:37 -04:00
Jeff Becker
6da13c876c
format 2018-02-20 19:11:26 -05:00
Jeff Becker
284c55f5aa
more optimizations 2018-02-18 13:45:06 -05:00
Jeff Becker
3bcc5604a6
don't use exp2 when allocating memory :D 2018-02-18 13:22:10 -05:00
Jeff Becker
3e4fe88b26
format 2018-02-18 13:15:45 -05:00
Jeff Becker
b949e61752
omg optimize 2018-02-15 12:09:27 -05:00
Jeff
43f9be08c8 format 2018-02-01 17:34:04 -05:00
Jeff
8c3bd25825 fix on os x 2018-02-01 17:10:47 -05:00
Jeff Becker
212165500d
more 2018-02-01 17:04:58 -05:00
Jeff Becker
58247343bf
format 2018-02-01 12:07:01 -05:00
Jeff Becker
1fdfdc0244
more 2018-02-01 12:06:49 -05:00
Jeff Becker
ae76b6b376
google format 2018-02-01 08:21:00 -05:00
Jeff Becker
4718281202
awe yeh 2018-01-31 14:59:26 -05:00
Jeff Becker
de3ddbb93e
clang-format 2018-01-29 09:27:24 -05:00
Jeff Becker
a704a28f34
make it compile and link 2018-01-29 09:19:00 -05:00
Jeff Becker
f50a49b7cb
progress (does not compile) 2018-01-26 20:18:10 -05:00
Jeff Becker
b7d4499f43
more 2018-01-26 09:17:51 -05:00
Jeff Becker
485e780552
sarp -> llarp 2018-01-25 11:24:33 -05:00
Jeff Becker
045a692522
more 2018-01-25 11:11:45 -05:00
Jeff Becker
62fb43a52c
refactor 2018-01-25 10:38:14 -05:00