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
Ryan Tharp
4cc482764d
clang format
2018-10-01 03:00:11 -07:00
Ryan Tharp
058ed4d4ea
Merge branch 'master' of https://github.com/neuroscr/loki-network
2018-10-01 09:03:31 +00:00
Jeff
e50cbf5acb
Merge branch 'master' of ssh://github.com/loki-project/loki-network
2018-09-30 11:25:59 -04:00
Jeff Becker
138c222a1a
dns port configurable at compile time (make this configurable on runtime plz)
2018-09-30 08:42:28 -04:00
Ryan Tharp
79d61dedc3
use new llarp::Addr based init
2018-09-29 03:28:55 -07:00
Jeff
d6463bf8de
Merge branch 'master' of ssh://github.com/loki-project/loki-network
2018-09-28 19:47:25 -04:00
Jeff
52da002488
comit
2018-09-28 19:47:18 -04:00
Jeff Becker
8a4b2e97a5
add lint target for makefile using clang tidy
...
run make format
2018-09-28 10:29:34 -04:00
Ryan Tharp
0ad4f43fe5
header clean up and clang-format
2018-09-24 06:09:01 -07:00
Ryan Tharp
31c89fc9f8
start of nameresolver config key, actually inform the dns tracker of tun gw ip, some pre-ipv6 work, attempting some endian fixes
2018-09-23 09:48:43 -07:00
Ryan Tharp
2b2e0007fa
active DNS relay (server/client) in tun interface
2018-09-22 03:25:16 -07:00
Jeff Becker
44eeda3041
fix ip mapping for new addresses so they don't use premapped addresses
2018-09-19 10:49:42 -04:00
Jeff Becker
a71d5f84bb
reduce log level
2018-09-19 09:37:46 -04:00
Jeff Becker
ebe30e81c9
try unscrewing things up
2018-09-18 13:48:26 -04:00
Jeff Becker
0c1e22650e
try calcuating tcp checksums right
...
try tracking convo tags correctly
2018-09-18 07:08:47 -04:00
Jeff Becker
1471e90fb5
intro handover
2018-09-17 20:32:11 -04:00
Jeff Becker
9ee7275a02
decrypt frames correctly and set return address
2018-09-17 20:18:33 -04:00
Jeff
689668d892
fix osx build
2018-09-17 14:59:12 -04:00
Jeff Becker
9ffcf66e58
more checks less logging
2018-09-17 11:32:37 -04:00
Jeff Becker
0945275fd5
make it compile
2018-09-16 08:53:23 -04:00
Jeff Becker
9ed3da1671
correctly map addresses
2018-09-16 08:51:16 -04:00
Jeff Becker
8114f63e70
use queues
2018-09-16 08:25:17 -04:00
Jeff Becker
4f691b8974
make tun write correct number of bytes
...
try doing correct ip checksum and for upper layers that need it too
supported right now are icmp, tcp, and udp. more will come later
probably.
2018-09-16 08:06:19 -04:00
Jeff Becker
354df88367
more ip endpoint fixes
...
spam dht with lookups less
2018-09-14 09:43:42 -04:00
Jeff Becker
6986f04418
basic router profiling and fix ip rewrite
2018-09-13 12:41:53 -04:00
Jeff Becker
3d424b57a7
client side endpoint improvements
2018-09-11 12:21:43 -04:00
Jeff Becker
baf2e1fb3c
client improvements
...
for real do correct timestamp comparison for introsets
2018-09-11 09:21:35 -04:00
Jeff Becker
2993e834a0
fix ip stuff
2018-09-10 15:31:29 -04:00
Jeff Becker
320fbdf3bc
always traffic
2018-09-10 14:04:30 -04:00
Jeff Becker
c3a7f64344
expire introsets correctly and allow multiple tun if
2018-09-10 12:36:36 -04:00
Jeff Becker
1952ece99d
more logging
2018-09-10 07:08:09 -04:00
Jeff Becker
8bae1a4735
move codel off of pointer types
2018-08-31 10:41:04 -04:00
despair86
79c992a9be
Microsoft libc6.x and libc7.x do not have C99 printf semantics, mingw-w64 handles this inline
2018-08-23 13:44:45 -05:00
despair86
23ecd03c71
win32 native threading vs pthreads on mingw-w64
...
also, msc++ implements all of C++17
2018-08-23 13:44:44 -05:00
Jeff
367258551b
fix osx build
2018-08-23 14:02:02 -04:00
Jeff Becker
b7039f6e5c
more tun stuff
2018-08-22 11:52:10 -04:00
Jeff Becker
dbac1334e0
disable promises in win32
2018-08-21 14:39:18 -04:00
Jeff Becker
4e2f0ccbf8
* add ProcessIf in CoDel queue to requeue unprocessed items
...
* more tun code
* make event loop tick and write with tun
2018-08-21 14:17:16 -04:00
Jeff Becker
4aebbda640
more tun stuff
2018-08-20 15:12:12 -04:00
Jeff Becker
377cc78144
fix crash
2018-08-18 10:01:21 -04:00
Jeff Becker
1a1f93c171
* more tun stuff
...
* use std::unique_ptr where bare pointers aren't absolutely required
2018-08-17 15:49:58 -04:00
Jeff Becker
08d6121a5a
more tun code
2018-08-16 10:34:15 -04:00
Jeff Becker
04bf8d6116
some tun interface code
2018-08-15 11:36:34 -04:00
Jeff Becker
d5532e4de4
more boilerplate and enable tun/tap build
2018-08-08 15:37:33 -04:00