You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on May 20, 2020. It is now read-only.
Missing effectiveNetProtos means that such endpoint won't be closed correctly: while stack.RegisterTransportEndpoint is called with hardcoded netProtos in ForwarderRequest.CreateEndpoints, the UnregisterTransportEndpoint in endpoint.Close is called with netprotos == nil.
The endpoint returned by
udp.ForwarderRequest.CreateEndpointdoesn't haveeffectiveNetProtosfilled (it'snil).Maybe I'm missing something and I should do some initialization by hand?
There're two things that make me think this is not true:
tcp.ForwarderRequest.CreateEndpointhave theireffectiveNetProtosset.udp.Forwarderat https://github.com/google/gvisor/blob/master/pkg/tcpip/adapters/gonet/gonet_test.go#L354 doesn't do anything more thanCreateEndpoint.Missing
effectiveNetProtosmeans that such endpoint won't be closed correctly: whilestack.RegisterTransportEndpointis called with hardcodednetProtosinForwarderRequest.CreateEndpoints, theUnregisterTransportEndpointinendpoint.Closeis called withnetprotos == nil.This means that the code as simple as
misses new packets if the source port is reused.