summaryrefslogtreecommitdiffhomepage
path: root/pkg/tcpip/transport/icmp/endpoint_state.go
diff options
context:
space:
mode:
authorgVisor bot <gvisor-bot@google.com>2019-08-08 19:42:12 +0000
committergVisor bot <gvisor-bot@google.com>2019-08-08 19:42:12 +0000
commit3e8a2e033f3e1245d027592aa490d38fbf86f20b (patch)
tree858bdde11fe4fb67735253e43635a93afd55c490 /pkg/tcpip/transport/icmp/endpoint_state.go
parent4f3f4cd15b73ab00d6423717cf9bfb2b8b709779 (diff)
parent13a98df49ea1b36cd21c528293b626a6a3639f0b (diff)
Merge 13a98df4 (automated)
Diffstat (limited to 'pkg/tcpip/transport/icmp/endpoint_state.go')
-rw-r--r--pkg/tcpip/transport/icmp/endpoint_state.go26
1 files changed, 1 insertions, 25 deletions
diff --git a/pkg/tcpip/transport/icmp/endpoint_state.go b/pkg/tcpip/transport/icmp/endpoint_state.go
index 99b8c4093..43551d642 100644
--- a/pkg/tcpip/transport/icmp/endpoint_state.go
+++ b/pkg/tcpip/transport/icmp/endpoint_state.go
@@ -15,7 +15,6 @@
package icmp
import (
- "gvisor.dev/gvisor/pkg/tcpip"
"gvisor.dev/gvisor/pkg/tcpip/buffer"
"gvisor.dev/gvisor/pkg/tcpip/stack"
)
@@ -63,28 +62,5 @@ func (e *endpoint) loadRcvBufSizeMax(max int) {
// afterLoad is invoked by stateify.
func (e *endpoint) afterLoad() {
- e.stack = stack.StackFromEnv
-
- if e.state != stateBound && e.state != stateConnected {
- return
- }
-
- var err *tcpip.Error
- if e.state == stateConnected {
- e.route, err = e.stack.FindRoute(e.regNICID, e.bindAddr, e.id.RemoteAddress, e.netProto, false /* multicastLoop */)
- if err != nil {
- panic(*err)
- }
-
- e.id.LocalAddress = e.route.LocalAddress
- } else if len(e.id.LocalAddress) != 0 { // stateBound
- if e.stack.CheckLocalAddress(e.regNICID, e.netProto, e.id.LocalAddress) == 0 {
- panic(tcpip.ErrBadLocalAddress)
- }
- }
-
- e.id, err = e.registerWithStack(e.regNICID, []tcpip.NetworkProtocolNumber{e.netProto}, e.id)
- if err != nil {
- panic(*err)
- }
+ stack.StackFromEnv.RegisterRestoredEndpoint(e)
}