Michael
729cd045f1
Convert llarp::Router into an abstract base class
2019-02-06 09:59:47 +00:00
Jeff Becker
5743ca7fba
revert dns behavior
2019-02-05 16:04:30 -05:00
Jeff Becker
2c2b31f4b9
make it compile
2019-02-05 09:23:51 -05:00
Jeff Becker
25fa4817ba
hook mx records for all hooked domains
2019-02-05 09:22:02 -05:00
Jeff Becker
41c993a237
disable A records for random.snode, use CNAME queries instead.
2019-02-05 09:08:17 -05:00
Jeff Becker
8c77c53675
reply with cname
2019-02-05 09:03:38 -05:00
Ryan Tharp
2bba8f01e8
don't return unknown IPs
2019-02-04 19:54:44 -08:00
Ryan Tharp
54549724d0
fix random.snode
2019-02-04 19:19:06 -08:00
Ryan Tharp
4bf4faa956
make format
2019-02-04 16:41:33 -08:00
Michael
7212baa062
Add implicit conversion from ManagedBuffer to llarp_buffer_t
2019-02-03 01:44:09 +00:00
Michael
7ca3e13e78
Rename to ManagedBuffer
2019-02-03 00:48:10 +00: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
Michael
e9f6ca339a
Fix minor warning
2019-01-29 22:08:51 +00:00
Ryan Tharp
f20ac0f6e9
Merge branch 'staging' into crypto_interface
2019-01-29 13:59:05 -08:00
Ryan Tharp
175fdbc89c
Merge pull request #250 from majestrate/add-localhost-loki
...
add initial localhost.loki handling in dns
2019-01-29 13:57:56 -08:00
Ryan Tharp
9b6008db1d
downgrade DNS server failure to a warning
2019-01-29 03:17:21 -08:00
Jeff Becker
9e50e2d34a
try fixing AAAA record handling, return NOERROR with no records.
2019-01-28 11:16:17 -05:00
Jeff Becker
7489ab1380
only hook cname for random.snode
2019-01-28 10:46:49 -05:00
Jeff Becker
f1cf63fce7
add initial localhost.loki handling in dns
2019-01-28 10:26:35 -05:00
Michael
f24f554a01
Convert llarp::Crypto into an abstract base class
2019-01-26 15:40:58 +00:00
Rick V
b961f80256
don't leak unused packets
...
bad merge
2019-01-22 18:21:38 -06:00
Rick V
6913c01524
wtf why didn't this get rebased
2019-01-22 18:17:04 -06:00
Rick V
fab9374779
make less noise in public test releases
2019-01-22 18:17:00 -06:00
Ryan Tharp
2e4ad12a87
Merge branch 'staging' of https://github.com/loki-project/loki-network
2019-01-17 21:14:01 +00:00
Jeff Becker
015e68df68
Merge branch 'staging' of ssh://github.com/loki-project/loki-network into staging
2019-01-17 08:56:33 -05:00
Ryan Tharp
1ba5b75082
Merge branch 'master' of https://github.com/neuroscr/loki-network
2019-01-16 21:25:37 +00:00
Ryan Tharp
c4241ae4ad
note about name(), change verbiage to make more sense, be more verbose about failures
2019-01-16 13:08:00 -08:00
Ryan Tharp
3feb074599
be more verbose about failure and actual DNS bind
2019-01-16 13:06:53 -08: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
Jeff Becker
ef394cd2fb
Merge branch 'staging' of ssh://github.com/loki-project/loki-network into staging
2019-01-11 08:21:17 -05:00
Michael
a3463120cc
Move net components into a distinct folder
2019-01-11 01:42:02 +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
Jeff Becker
6e745abe6a
make it compile
2019-01-10 10:51:31 -05:00
Jeff Becker
c1e4e715bb
try fixing dns issue with random.snode
2019-01-10 10:49:08 -05:00
Ryan Tharp
c5575d6fe2
rename Crypto() to GetCrypto() to keep gcc 7.3 on linux happy
2019-01-08 23:45:43 +00:00
Michael
df4fd0ef56
Fix some low hanging performance issues
2019-01-07 22:15:41 +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
1410d0a0cf
Remove byte* conversion operators from llarp::AlignedBuffer
2019-01-02 01:04:03 +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
Jeff Becker
99ecefbdba
fixes issue #186
2018-12-28 10:10:05 -05:00
Jeff Becker
88d0e8883b
fix merge
2018-12-26 11:29:08 -05:00
Jeff Becker
49c898ed92
Merge remote-tracking branch 'origin/master' into staging
2018-12-26 11:27:11 -05:00
Jeff
b088c7eba5
Merge branch 'gh-master'
2018-12-24 16:15:22 -05:00
Jeff Becker
21d1998a38
add graceful stop for path builders and friends
2018-12-24 11:10:56 -05:00
Jeff Becker
e835c5f69a
add graceful stop for path builders and friends
2018-12-24 11:09:05 -05:00
Jeff
a1476b24e7
don't use dead sessions
2018-12-23 09:04:26 -05:00
Jeff
4b2a1ea9f3
make format and attempt to fix #158
2018-12-23 08:29:11 -05:00
Rick
d529b3f446
at least don't try to break anything
...
(the previous implementation aligned to uint64_t, the new one probably should do so as well)
2018-12-22 12:58:41 -06:00
Rick
8d147252b8
restore logging
2018-12-22 12:58:16 -06:00
despair
b3e8099838
bug fixes
2018-12-22 12:58:13 -06:00
Jeff Becker
8c8172aeb1
Merge remote-tracking branch 'origin/master' into dev
2018-12-20 12:56:08 -05:00
Michael
037cb87523
Convert llarp::AlignedBuffer to be backed by std::array
2018-12-20 16:16:18 +00:00
Jeff Becker
01f2524145
flush ip packets such that they are sent same event loop tick
2018-12-20 08:04:00 -05:00
Jeff Becker
8e6046ff1c
order downstream packets
2018-12-20 07:41:39 -05:00
Jeff Becker
46bee291c2
order downstream packets
2018-12-20 07:41:17 -05:00
Jeff Becker
c5d4e37f59
make format
2018-12-17 15:47:08 -05:00
Jeff Becker
c454b5264c
Merge branch 'master' into dev
2018-12-17 08:25:27 -05:00
Ryan Tharp
db6945b6a0
fix debug spacing issue
2018-12-17 04:33:30 +00:00
Jeff Becker
b25223d1cc
Merge remote-tracking branch 'origin/master' into dev
2018-12-15 16:02:49 -05:00
Jeff Becker
b4d523a146
remove pedantic logging
2018-12-15 12:44:58 -05:00
Jeff Becker
64b2b9de08
eh
2018-12-15 12:41:38 -05:00
Jeff Becker
0f432456be
more
2018-12-15 12:39:15 -05:00
Jeff Becker
6df0f32093
log bad packets
2018-12-15 12:12:36 -05:00
Jeff Becker
98981c82cd
move packet flushing about
2018-12-15 11:56:35 -05:00
Jeff Becker
7ca82918b4
try setting tick
2018-12-15 11:43:17 -05:00
Michael
4257b62e88
Add .cpp files for all .hpp files
2018-12-15 16:21:52 +00:00
Jeff Becker
03cf865e45
don't use async job for flushing queue
2018-12-15 11:21:04 -05: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
Jeff Becker
bb0cd81f02
random.snode
2018-12-12 19:03:19 -05:00
Jeff Becker
cb685aaaab
remove unneeded logging
2018-12-12 15:39:31 -05:00
Jeff Becker
09e01adf32
flush snode traffic queues
2018-12-12 13:37:03 -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
7a52638add
Move handlers* 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
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
Jeff Becker
eed62b2d7f
ensure exit router is known
2018-12-10 10:44:18 -05:00
Jeff Becker
a1887dd884
ensure exit router is known
2018-12-10 10:39:22 -05:00
Michael
30e9dca2e5
Convert llarp_logic to be a C++ class
2018-12-10 14:15:11 +00:00
Jeff
24886ad180
Merge pull request #115 from majestrate/dev
...
fix issue #114
2018-12-10 07:32:52 -05:00
Jeff Becker
f6dbeb363c
filter bogon ranges to exit
2018-12-10 07:27:17 -05:00
Jeff
0c8f9edfb6
always hook mx
2018-12-07 18:36:53 -05:00
Jeff
617617bb4f
send reply if we have an address mapped
2018-12-07 17:46:30 -05:00
Jeff
88c3dd7c7a
send reply
2018-12-07 17:08:23 -05:00
Jeff
3eb78b6118
add mx record for .loki
2018-12-07 16:52:19 -05:00
Jeff
9a9538bf30
send dns reply if we have a path already
2018-12-07 15:56:01 -05:00
Jeff Becker
f63045d5a4
Merge remote-tracking branch 'origin/master' into dev
2018-12-05 09:41:35 -05:00
Jeff Becker
0f7053f77b
cut logging
2018-12-04 11:22:28 -05:00
Jeff Becker
40678f9019
add dnslib unit test coverage
2018-12-04 11:16:43 -05:00
Jeff Becker
1d1bde2e88
add dnslib
2018-12-03 17:22:59 -05:00
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
2018-12-03 12:24:56 -06:00
Jeff Becker
baa94ec345
make windows build happy
2018-12-03 09:39:30 -05: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
7bc3d94895
try fixing rdns for local interace's address
2018-11-30 09:14:30 -05:00
Jeff Becker
68faa14e3e
map local address for tun endpoint
2018-11-30 08:56:28 -05:00
Jeff Becker
79cffacafd
new exit packet buffer format
2018-11-29 16:19:20 -05:00
Jeff Becker
11372c9544
Merge branch 'dev' into snode-endpoint
2018-11-29 09:34:19 -05:00
Jeff Becker
85f9f46362
snode stubs (initial)
2018-11-29 08:12:35 -05:00
Jeff Becker
b9b7d3d1c7
better exit pad size
2018-11-28 13:18:08 -05:00
Jeff Becker
e6037ff060
pack exit traffic
2018-11-28 11:38:20 -05:00
Jeff
387d05282b
Merge pull request #58 from neuroscr/master
...
Major DNS refactor
2018-11-28 08:10:33 -05:00
Jeff Becker
75f5d748b6
Merge branch 'vanity' into dev
2018-11-28 07:33:03 -05:00
Jeff Becker
b004b9e2a1
fix up exit logic
2018-11-28 07:32:38 -05:00
Jeff Becker
e3e337b96f
Merge branch 'master' into dev
2018-11-26 17:53:42 -05:00
Jeff Becker
79040ef036
rx -> tx
2018-11-26 17:52:46 -05:00
Jeff Becker
7e4d74cbfc
add initial jni stuff for lokinet android. i fucking hate android so god damn much.
2018-11-26 17:46:22 -05:00
despair
65ff1ba991
reading from TUN using native async io: ✅
...
writing: ❌
2018-11-26 11:10:18 -06:00
Ryan Tharp
7874567611
Merge branch 'master' of https://github.com/loki-project/loki-network
2018-11-26 15:54:52 +00:00
Jeff Becker
25fac844eb
make format
2018-11-26 08:30:03 -05:00
Jeff Becker
a81b88cc93
Merge remote-tracking branch 'origin/master' into dev
2018-11-25 11:59:47 -05:00
Jeff
a33f334bc2
better exit path logic
2018-11-25 11:58:27 -05:00
Jeff Becker
c1e494c2c4
have llarp_ev_* use llarp_buffer_t
2018-11-23 09:37:26 -05:00
Jeff
067f6c7b26
make format and make it compile with clang
2018-11-22 12:53:53 -05:00
Ryan Tharp
1c6031c677
clang-format
2018-11-21 16:39:09 -08:00
Ryan Tharp
b69ef21bb4
fix another compile problem
2018-11-21 15:37:17 -08:00
despair
436025e0ca
fix utp flags leaking into the actual socket transmission
...
clang-format
2018-11-20 06:11:51 -06:00
despair
d1fa9ca342
is the resulting storage a proper string, or just a plain char array (no terminator)
...
eh
2018-11-20 02:38:18 -06:00
Jeff Becker
3718a7d016
Merge remote-tracking branch 'github/master' into dev
2018-11-19 07:01:42 -05:00
Jeff
23c8807d59
Merge pull request #54 from neuroscr/master
...
DNS QoL improvements
2018-11-18 15:13:25 -05:00
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.
2018-11-18 09:41:09 -08:00
Jeff Becker
e3dc4dca11
mark paths as dead when they need to and revert codel changes
2018-11-17 13:40:13 -05:00
Jeff Becker
8d613c182f
nullptr check
2018-11-15 18:07:39 -05:00
Jeff Becker
b56b3ad16d
don't remove ip mapping when endpoints are removed
2018-11-15 17:10:12 -05:00
Jeff Becker
17297837d9
that's dumb af, use std::unique_ptr
2018-11-15 16:47:05 -05:00
Jeff Becker
9d551ba768
more
2018-11-15 13:10:09 -05:00
Jeff Becker
937ab151ab
idk what is going on
2018-11-15 11:19:24 -05:00
Jeff Becker
9baf6ecfd9
idklol
2018-11-15 11:15:25 -05:00
Jeff Becker
723351eb4e
friendship with std::unordered_map is now over, std::map is my new best friend
2018-11-15 11:12:05 -05:00
Jeff Becker
c7c6905e1e
explicit type
2018-11-15 11:05:31 -05:00
Jeff Becker
207e312eb0
more logging
2018-11-15 11:00:16 -05:00
Jeff Becker
01724c8529
use const iter
2018-11-15 10:54:48 -05:00
Jeff Becker
6f796d031b
use const
2018-11-15 10:53:32 -05:00
Jeff Becker
7b188d0fde
more
2018-11-15 10:46:50 -05:00
Jeff Becker
715822c20d
logging
2018-11-15 10:43:58 -05:00
Jeff Becker
60ad2c76e0
try this
2018-11-15 09:44:57 -05:00
Jeff Becker
2bfdd7798c
use emplace?
2018-11-15 09:38:31 -05:00
Jeff Becker
d44872496f
gfdi
2018-11-15 09:16:10 -05:00
Jeff Becker
cd94da7ffe
gfdi
2018-11-15 09:12:17 -05:00
Jeff Becker
b689bbbcf6
gfdi
2018-11-15 09:08:42 -05:00
Jeff Becker
489d1e645b
actually add exit :p
2018-11-15 08:58:17 -05:00
Jeff Becker
355d09e22b
random fixes
2018-11-15 08:47:46 -05:00
Jeff Becker
658210b9d1
fix up exit tun, fix up codel to actually do its job
2018-11-15 08:13:19 -05:00
Jeff Becker
ca3a675ac8
more logging
2018-11-14 17:06:42 -05:00
Jeff Becker
b462090e9c
more
2018-11-14 16:47:58 -05:00
Jeff Becker
fa1333b13b
meh
2018-11-14 16:40:44 -05:00
Jeff Becker
b11bddad02
fixes
2018-11-14 16:31:21 -05:00
Jeff Becker
d24bc70a7e
try fix
2018-11-14 15:56:54 -05:00
Jeff Becker
fd4b452cdd
fix
2018-11-14 15:54:13 -05:00
Jeff Becker
56676002aa
wire up exit traffic
2018-11-14 14:34:17 -05:00
Jeff Becker
5dbe41608f
more exit stuff
2018-11-14 13:02:27 -05:00
Jeff Becker
f40e4c0c84
more exit stuff
2018-11-14 07:23:08 -05:00
Jeff Becker
09945dce62
initial exit/service node comm code with some unit tests (incomplete)
2018-11-12 11:43:40 -05:00
Jeff Becker
7b61cbb4a1
make dns port configurable, update default dns
2018-11-11 08:30:54 -05:00
Jeff Becker
fb0e6c3d9c
make dns configurable on runtime
2018-11-11 08:14:19 -05:00
Jeff Becker
960aa479e9
fixes for ancient rpi toolchain
2018-11-08 07:31:50 -05:00
Jeff Becker
7090a012f3
Merge remote-tracking branch 'micheal/wextra' into dev
2018-11-07 10:57:34 -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
Michael Thorpe
a2d5d80779
Enable warnings as errors
...
test criteria:
- Built from clean on macOS
2018-11-06 22:48:17 +00:00
Jeff Becker
f1cca956f9
make android compile again
2018-11-06 09:06:09 -05: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
82d8d3c04d
merge
2018-11-03 06:22:07 -07:00
Ryan Tharp
67390de0c2
merge
2018-11-03 06:19:18 -07:00
cathugger
73e6141023
ip: endianess swaps aren't needed, a bit of renaming and tweaking
...
Also `make format`.
2018-11-02 11:00:05 -04:00
Jeff Becker
dbd2c41909
use event loop for time
2018-10-29 12:48:36 -04:00
Ryan Tharp
9205b8172c
scan-build fixes
2018-10-27 15:40:12 -07:00
Jeff Becker
d3bada5564
fix windows
2018-10-19 12:54:08 -04:00
Jeff Becker
51baf43e99
fix
2018-10-19 12:47:06 -04:00
Jeff Becker
94e4a6798c
fix windows
2018-10-19 12:44:35 -04:00
Ryan Tharp
c3c2eda283
clang-format
2018-10-19 08:04:14 -07:00
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
2018-10-19 07:53:06 -07:00
Jeff Becker
d3278946f2
ipv4 bogon checking
2018-10-15 08:02:32 -04:00
cathugger
ca01daa89a
ip: support DCCP and UDP-Lite, TCP chksum twx; tun: more filtering
2018-10-15 00:56:14 +03:00
cathugger
d0c35803a5
tun+ip: filter packets at destination, drop instead of truncating
2018-10-13 21:57:31 +03:00
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.
2018-10-10 21:41:53 +00:00
cathugger
e1c7d8a696
some tweaks and fixups
2018-10-10 15:50:52 +00:00
cathugger
4971fae171
uint32_t byte ordering type safety
2018-10-10 15:16:10 +00:00
Jeff Becker
aa988a6fa4
Merge remote-tracking branch 'cathugger/master'
2018-10-10 08:10:04 -04:00
cathugger
05e6c31238
ip: some fixes and tweaks
2018-10-10 12:06:28 +00:00
Jeff Becker
32a028f6d8
Merge remote-tracking branch 'cathugger/master'
2018-10-10 07:48:44 -04:00
Jeff Becker
cbfc73515e
fix zeroing of addresses, put it in the right place
2018-10-10 07:47:30 -04:00
cathugger
0f8e0e9d58
tun: fix "fix "clear src/dst addresses and checksum before sending""
...
correct dst address is required for FlushSend to work, so do IP address and checksum null'ing there.
dang myself.
2018-10-10 03:28:53 +03:00
cathugger
4f7ae52cad
tun: fix "clear src/dst addresses and checksum before sending"
...
clearing of addresses and checksum was put in wrong place, so it null'd everything before writing to tun interface.
damnit jeff.
2018-10-10 03:00:48 +03:00
cathugger
2f4b0fbda6
ip: use delta TCP checksum calculation, don't recalculate ICMP checksum
2018-10-09 20:02:49 +03:00
cathugger
4cba59f3c4
tun+ip: clarify what happens where
2018-10-09 17:09:03 +03:00
Jeff Becker
eb9150431f
make it compile
2018-10-09 08:32:02 -04:00
Jeff Becker
6d7d6f6efa
clear src/dst addresses and checksum before sending (infoleak)
2018-10-09 08:29:46 -04:00
despair86
3c13101beb
clang-format
2018-10-06 12:04:52 -05:00
despair86
457d6fbaf6
rebase conflict
2018-10-06 12:04:50 -05:00
despair86
ca0d09142a
Finally put together some skeletal TUN code for NT
...
up next: debugging the windows client code
stretch goal: prototype hosting a full masternode on Windows Server (still _highly_ experimental when it _does_ appear)
2018-10-06 12:04:48 -05:00
Ryan Tharp
6738fcaa6a
make sure iptracker is configured on start
2018-10-04 11:20:52 -04:00
Ryan Tharp
a0082e95bb
change dll from tunEndpoint to router hidden service context, const some unchanging ptrs, use llarp::Addr more
2018-10-03 03:48:31 -07:00
Ryan Tharp
4b3b09736b
Merge branch 'master' of https://github.com/loki-project/loki-network
2018-10-02 23:11:44 +00:00
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)
2018-10-01 15:08:55 -05:00
despair86
7f809eb53b
fix windows build
2018-10-01 15:06:07 -05:00