From 12d9cf6fabb53d18da3602564f45ff6fbbf032d6 Mon Sep 17 00:00:00 2001 From: Googler Date: Tue, 26 Feb 2019 14:57:27 -0800 Subject: Adds a WriteRawPacket method to the InjectableLinkEndpoint interface. Also exposes ipv4.MaxTotalSize since it is a generally useful constant. PiperOrigin-RevId: 235799755 Change-Id: I1fa8d5294bf355acf5527cfdf274b3687d3c8b13 --- pkg/tcpip/link/fdbased/endpoint.go | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'pkg/tcpip/link/fdbased') diff --git a/pkg/tcpip/link/fdbased/endpoint.go b/pkg/tcpip/link/fdbased/endpoint.go index 20f379ab0..fa980716d 100644 --- a/pkg/tcpip/link/fdbased/endpoint.go +++ b/pkg/tcpip/link/fdbased/endpoint.go @@ -288,6 +288,11 @@ func (e *endpoint) WritePacket(r *stack.Route, hdr buffer.Prependable, payload b return rawfile.NonBlockingWrite2(e.fd, hdr.View(), payload.ToView()) } +// WriteRawPacket writes a raw packet directly to the file descriptor. +func (e *endpoint) WriteRawPacket(dest tcpip.Address, packet []byte) *tcpip.Error { + return rawfile.NonBlockingWrite(e.fd, packet) +} + func (e *endpoint) capViews(k, n int, buffers []int) int { c := 0 for i, s := range buffers { -- cgit v1.2.3