summaryrefslogtreecommitdiffhomepage
path: root/pkg/tcpip/transport
diff options
context:
space:
mode:
authorgVisor bot <gvisor-bot@google.com>2020-03-06 20:34:15 +0000
committergVisor bot <gvisor-bot@google.com>2020-03-06 20:34:15 +0000
commitd80c5b0c6b44bb145788d699b8ffac109c5937d6 (patch)
tree7ff5ca6054a625835c606216a0a4578cfffc285c /pkg/tcpip/transport
parent57eb9dd84e0153bb1848c0246d86ef23d116d9a2 (diff)
parent6fa5cee82c0f515b001dee5f3840e1f875b2f477 (diff)
Merge release-20200219.0-122-g6fa5cee (automated)
Diffstat (limited to 'pkg/tcpip/transport')
-rwxr-xr-xpkg/tcpip/transport/icmp/icmp_packet_list.go8
-rwxr-xr-xpkg/tcpip/transport/packet/packet_list.go8
-rwxr-xr-xpkg/tcpip/transport/raw/raw_packet_list.go8
-rwxr-xr-xpkg/tcpip/transport/tcp/tcp_endpoint_list.go8
-rwxr-xr-xpkg/tcpip/transport/tcp/tcp_segment_list.go8
-rwxr-xr-xpkg/tcpip/transport/udp/udp_packet_list.go8
6 files changed, 36 insertions, 12 deletions
diff --git a/pkg/tcpip/transport/icmp/icmp_packet_list.go b/pkg/tcpip/transport/icmp/icmp_packet_list.go
index deeab60ae..ddee31adb 100755
--- a/pkg/tcpip/transport/icmp/icmp_packet_list.go
+++ b/pkg/tcpip/transport/icmp/icmp_packet_list.go
@@ -135,8 +135,9 @@ func (l *icmpPacketList) InsertBefore(a, e *icmpPacket) {
// Remove removes e from l.
func (l *icmpPacketList) Remove(e *icmpPacket) {
- prev := icmpPacketElementMapper{}.linkerFor(e).Prev()
- next := icmpPacketElementMapper{}.linkerFor(e).Next()
+ linker := icmpPacketElementMapper{}.linkerFor(e)
+ prev := linker.Prev()
+ next := linker.Next()
if prev != nil {
icmpPacketElementMapper{}.linkerFor(prev).SetNext(next)
@@ -149,6 +150,9 @@ func (l *icmpPacketList) Remove(e *icmpPacket) {
} else {
l.tail = prev
}
+
+ linker.SetNext(nil)
+ linker.SetPrev(nil)
}
// Entry is a default implementation of Linker. Users can add anonymous fields
diff --git a/pkg/tcpip/transport/packet/packet_list.go b/pkg/tcpip/transport/packet/packet_list.go
index e8c4cba0d..ad27c7c06 100755
--- a/pkg/tcpip/transport/packet/packet_list.go
+++ b/pkg/tcpip/transport/packet/packet_list.go
@@ -135,8 +135,9 @@ func (l *packetList) InsertBefore(a, e *packet) {
// Remove removes e from l.
func (l *packetList) Remove(e *packet) {
- prev := packetElementMapper{}.linkerFor(e).Prev()
- next := packetElementMapper{}.linkerFor(e).Next()
+ linker := packetElementMapper{}.linkerFor(e)
+ prev := linker.Prev()
+ next := linker.Next()
if prev != nil {
packetElementMapper{}.linkerFor(prev).SetNext(next)
@@ -149,6 +150,9 @@ func (l *packetList) Remove(e *packet) {
} else {
l.tail = prev
}
+
+ linker.SetNext(nil)
+ linker.SetPrev(nil)
}
// Entry is a default implementation of Linker. Users can add anonymous fields
diff --git a/pkg/tcpip/transport/raw/raw_packet_list.go b/pkg/tcpip/transport/raw/raw_packet_list.go
index a0138e8cc..e8c1bc997 100755
--- a/pkg/tcpip/transport/raw/raw_packet_list.go
+++ b/pkg/tcpip/transport/raw/raw_packet_list.go
@@ -135,8 +135,9 @@ func (l *rawPacketList) InsertBefore(a, e *rawPacket) {
// Remove removes e from l.
func (l *rawPacketList) Remove(e *rawPacket) {
- prev := rawPacketElementMapper{}.linkerFor(e).Prev()
- next := rawPacketElementMapper{}.linkerFor(e).Next()
+ linker := rawPacketElementMapper{}.linkerFor(e)
+ prev := linker.Prev()
+ next := linker.Next()
if prev != nil {
rawPacketElementMapper{}.linkerFor(prev).SetNext(next)
@@ -149,6 +150,9 @@ func (l *rawPacketList) Remove(e *rawPacket) {
} else {
l.tail = prev
}
+
+ linker.SetNext(nil)
+ linker.SetPrev(nil)
}
// Entry is a default implementation of Linker. Users can add anonymous fields
diff --git a/pkg/tcpip/transport/tcp/tcp_endpoint_list.go b/pkg/tcpip/transport/tcp/tcp_endpoint_list.go
index 32ac43dca..62c042aff 100755
--- a/pkg/tcpip/transport/tcp/tcp_endpoint_list.go
+++ b/pkg/tcpip/transport/tcp/tcp_endpoint_list.go
@@ -135,8 +135,9 @@ func (l *endpointList) InsertBefore(a, e *endpoint) {
// Remove removes e from l.
func (l *endpointList) Remove(e *endpoint) {
- prev := endpointElementMapper{}.linkerFor(e).Prev()
- next := endpointElementMapper{}.linkerFor(e).Next()
+ linker := endpointElementMapper{}.linkerFor(e)
+ prev := linker.Prev()
+ next := linker.Next()
if prev != nil {
endpointElementMapper{}.linkerFor(prev).SetNext(next)
@@ -149,6 +150,9 @@ func (l *endpointList) Remove(e *endpoint) {
} else {
l.tail = prev
}
+
+ linker.SetNext(nil)
+ linker.SetPrev(nil)
}
// Entry is a default implementation of Linker. Users can add anonymous fields
diff --git a/pkg/tcpip/transport/tcp/tcp_segment_list.go b/pkg/tcpip/transport/tcp/tcp_segment_list.go
index 9b21b87ad..27f17f037 100755
--- a/pkg/tcpip/transport/tcp/tcp_segment_list.go
+++ b/pkg/tcpip/transport/tcp/tcp_segment_list.go
@@ -135,8 +135,9 @@ func (l *segmentList) InsertBefore(a, e *segment) {
// Remove removes e from l.
func (l *segmentList) Remove(e *segment) {
- prev := segmentElementMapper{}.linkerFor(e).Prev()
- next := segmentElementMapper{}.linkerFor(e).Next()
+ linker := segmentElementMapper{}.linkerFor(e)
+ prev := linker.Prev()
+ next := linker.Next()
if prev != nil {
segmentElementMapper{}.linkerFor(prev).SetNext(next)
@@ -149,6 +150,9 @@ func (l *segmentList) Remove(e *segment) {
} else {
l.tail = prev
}
+
+ linker.SetNext(nil)
+ linker.SetPrev(nil)
}
// Entry is a default implementation of Linker. Users can add anonymous fields
diff --git a/pkg/tcpip/transport/udp/udp_packet_list.go b/pkg/tcpip/transport/udp/udp_packet_list.go
index 00535d242..2ae846eaa 100755
--- a/pkg/tcpip/transport/udp/udp_packet_list.go
+++ b/pkg/tcpip/transport/udp/udp_packet_list.go
@@ -135,8 +135,9 @@ func (l *udpPacketList) InsertBefore(a, e *udpPacket) {
// Remove removes e from l.
func (l *udpPacketList) Remove(e *udpPacket) {
- prev := udpPacketElementMapper{}.linkerFor(e).Prev()
- next := udpPacketElementMapper{}.linkerFor(e).Next()
+ linker := udpPacketElementMapper{}.linkerFor(e)
+ prev := linker.Prev()
+ next := linker.Next()
if prev != nil {
udpPacketElementMapper{}.linkerFor(prev).SetNext(next)
@@ -149,6 +150,9 @@ func (l *udpPacketList) Remove(e *udpPacket) {
} else {
l.tail = prev
}
+
+ linker.SetNext(nil)
+ linker.SetPrev(nil)
}
// Entry is a default implementation of Linker. Users can add anonymous fields