commit | ec95ff307ca042ef8c642607ba5c471e5eec4999 | [log] [tgz] |
---|---|---|
author | Bhasker Hariharan <bhaskerh@google.com> | Thu Oct 10 15:13:39 2019 -0700 |
committer | gVisor bot <gvisor-bot@google.com> | Thu Oct 10 15:14:14 2019 -0700 |
tree | 5965c690a627eb363f453b2ac3b63620779d3225 | |
parent | b298b28eb88517b942ffa4d37b49567ab68b0cd3 [diff] |
Fix bugs in fragment handling. Strengthen the header.IPv4.IsValid check to correctly check for IHL/TotalLength fields. Also add a check to make sure fragmentOffsets + size of the fragment do not cause a wrap around for the end of the fragment. PiperOrigin-RevId: 274049313
Netstack is a network stack written in Go.
Try it out on Linux by installing the tun_tcp_echo demo:
go install github.com/google/netstack/tcpip/sample/tun_tcp_echo
Create a TUN device with:
[sudo] ip tuntap add user <username> mode tun <device-name> [sudo] ip link set <device-name> up [sudo] ip addr add <ipv4-address>/<mask-length> dev <device-name>
Then run with:
tun_tcp_echo <device-name> <ipv4-address> <port>
Please see CONTRIBUTING.md for more details.
Netstack is primarily developed as part of gVisor and any issues/bugs should be filed against the gVisor repository as this repo is not actively monitored for bug reports.
This is not an official Google product (experimental or otherwise), it is just code that happens to be owned by Google.