gvisor/pkg/tcpip/transport/tcp
Kevin Krakauer 121db29a93 Ping support via IPv4 raw sockets.
Broadly, this change:
* Enables sockets to be created via `socket(AF_INET, SOCK_RAW, IPPROTO_ICMP)`.
* Passes the network-layer (IP) header up the stack to the transport endpoint,
  which can pass it up to the socket layer. This allows a raw socket to return
  the entire IP packet to users.
* Adds functions to stack.TransportProtocol, stack.Stack, stack.transportDemuxer
  that enable incoming packets to be delivered to raw endpoints. New raw sockets
  of other protocols (not ICMP) just need to register with the stack.
* Enables ping.endpoint to return IP headers when created via SOCK_RAW.

PiperOrigin-RevId: 235993280
Change-Id: I60ed994f5ff18b2cbd79f063a7fdf15d093d845a
2019-02-27 14:31:21 -08:00
..
testing/context Remove license comments 2019-01-31 11:12:53 -08:00
BUILD Remove license comments 2019-01-31 11:12:53 -08:00
accept.go Implement SO_REUSEPORT for TCP and UDP sockets 2018-12-28 11:27:14 -08:00
connect.go Do not drop packets w/ missing TCP timestamps. 2019-02-11 10:23:43 -08:00
cubic.go Use correct company name in copyright header 2018-10-19 16:35:11 -07:00
dual_stack_test.go Use correct company name in copyright header 2018-10-19 16:35:11 -07:00
endpoint.go Ping support via IPv4 raw sockets. 2019-02-27 14:31:21 -08:00
endpoint_state.go Add a SACK scoreboard to TCP endpoints. 2019-02-25 15:20:04 -08:00
forwarder.go Ping support via IPv4 raw sockets. 2019-02-27 14:31:21 -08:00
protocol.go Ping support via IPv4 raw sockets. 2019-02-27 14:31:21 -08:00
rcv.go Use correct company name in copyright header 2018-10-19 16:35:11 -07:00
reno.go Use correct company name in copyright header 2018-10-19 16:35:11 -07:00
sack.go Use correct company name in copyright header 2018-10-19 16:35:11 -07:00
sack_scoreboard.go Add a SACK scoreboard to TCP endpoints. 2019-02-25 15:20:04 -08:00
sack_scoreboard_test.go Fix IsLost check to match the description in RFC6675. 2019-01-29 18:13:48 -08:00
segment.go Add a SACK scoreboard to TCP endpoints. 2019-02-25 15:20:04 -08:00
segment_heap.go Use correct company name in copyright header 2018-10-19 16:35:11 -07:00
segment_queue.go Use correct company name in copyright header 2018-10-19 16:35:11 -07:00
segment_state.go Add a SACK scoreboard to TCP endpoints. 2019-02-25 15:20:04 -08:00
snd.go Add a SACK scoreboard to TCP endpoints. 2019-02-25 15:20:04 -08:00
snd_state.go Use correct company name in copyright header 2018-10-19 16:35:11 -07:00
tcp_sack_test.go Use correct company name in copyright header 2018-10-19 16:35:11 -07:00
tcp_test.go Test that full segments will be sent when delay/cork is enabled 2018-11-29 15:46:38 -08:00
tcp_timestamp_test.go Do not drop packets w/ missing TCP timestamps. 2019-02-11 10:23:43 -08:00
timer.go Use correct company name in copyright header 2018-10-19 16:35:11 -07:00