diff options
Diffstat (limited to 'pkg/tcpip/stack')
-rwxr-xr-x | pkg/tcpip/stack/packet_buffer.go | 9 | ||||
-rwxr-xr-x | pkg/tcpip/stack/stack_state_autogen.go | 2 |
2 files changed, 10 insertions, 1 deletions
diff --git a/pkg/tcpip/stack/packet_buffer.go b/pkg/tcpip/stack/packet_buffer.go index 9505a4e92..9367de180 100755 --- a/pkg/tcpip/stack/packet_buffer.go +++ b/pkg/tcpip/stack/packet_buffer.go @@ -13,7 +13,10 @@ package stack -import "gvisor.dev/gvisor/pkg/tcpip/buffer" +import ( + "gvisor.dev/gvisor/pkg/tcpip" + "gvisor.dev/gvisor/pkg/tcpip/buffer" +) // A PacketBuffer contains all the data of a network packet. // @@ -59,6 +62,10 @@ type PacketBuffer struct { // Hash is the transport layer hash of this packet. A value of zero // indicates no valid hash has been set. Hash uint32 + + // Owner is implemented by task to get the uid and gid. + // Only set for locally generated packets. + Owner tcpip.PacketOwner } // Clone makes a copy of pk. It clones the Data field, which creates a new diff --git a/pkg/tcpip/stack/stack_state_autogen.go b/pkg/tcpip/stack/stack_state_autogen.go index 61c3fdec2..7f038a856 100755 --- a/pkg/tcpip/stack/stack_state_autogen.go +++ b/pkg/tcpip/stack/stack_state_autogen.go @@ -42,6 +42,7 @@ func (x *PacketBuffer) save(m state.Map) { m.Save("NetworkHeader", &x.NetworkHeader) m.Save("TransportHeader", &x.TransportHeader) m.Save("Hash", &x.Hash) + m.Save("Owner", &x.Owner) } func (x *PacketBuffer) afterLoad() {} @@ -54,6 +55,7 @@ func (x *PacketBuffer) load(m state.Map) { m.Load("NetworkHeader", &x.NetworkHeader) m.Load("TransportHeader", &x.TransportHeader) m.Load("Hash", &x.Hash) + m.Load("Owner", &x.Owner) } func (x *TransportEndpointID) beforeSave() {} |