Michael
1c0cf72c02
Rename endian.h
2018-11-20 00:52:19 +00: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
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
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
360ccc33de
ip: more one's complement math improvements
2018-10-13 21:31:50 +03:00
cathugger
4d5f5fecfa
ip: make things fragmentation-aware, cleanup UDP handling; also format
...
one's complement math is pretty fun
2018-10-13 18:42:47 +03:00
cathugger
18c20396b6
add {h,n}uint16_t types, optimize TCP/UDP checksuming
...
use static functions + switch instead of lambda functions + map.
2018-10-12 04:38:16 +00: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
257ce99f43
ip: fix UDP checksum offset
2018-10-10 17:51:37 +00:00
cathugger
4971fae171
uint32_t byte ordering type safety
2018-10-10 15:16:10 +00:00
cathugger
05e6c31238
ip: some fixes and tweaks
2018-10-10 12:06:28 +00:00
cathugger
5169df546c
ip: UDP checksum recalculation support
2018-10-10 05:38:59 +03:00
cathugger
7fd501e528
ip: use deltachksum for IPv4 headers aswell
2018-10-10 04:59:52 +03:00
cathugger
36ea776d07
ip: try to fix deltachksum
2018-10-10 04:29:44 +03:00
cathugger
ed39cb98e1
ip: (try to) fix deltachksum
2018-10-10 00:56:20 +03:00
cathugger
c515e4a248
ip: avoid pointless length checks
2018-10-10 00:09:16 +03:00
cathugger
a92e7c2104
ip: fix stupid MIN thing
2018-10-09 20:49:20 +03:00
cathugger
b5392c5679
make format
2018-10-09 20:09:45 +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
despair86
4afa358c49
fix win32 build
2018-09-19 20:41:47 -05:00
Jeff Becker
095170d11e
fix windows build
2018-09-19 07:53:16 -04:00
Jeff Becker
efc6e23c6f
fix tcp checksum calc
2018-09-18 18:53:48 -04:00
Jeff Becker
0c1e22650e
try calcuating tcp checksums right
...
try tracking convo tags correctly
2018-09-18 07:08:47 -04:00
Jeff
689668d892
fix osx build
2018-09-17 14:59:12 -04:00
Jeff Becker
9f9f9d9bb1
correct tcp checksum recalc (probably)
2018-09-16 09:13:52 -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
d3eef5c8b7
more netns code
2018-08-26 08:51:22 -04:00
despair86
e71c00f736
header fix
2018-08-23 13:48:41 -05:00
Ricardo Villegas
3cca107041
more header fixes
...
-despair86
2018-08-23 13:44:43 -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
4aebbda640
more tun stuff
2018-08-20 15:12:12 -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