diff --git a/lib/pnet/packet/in.go b/lib/pnet/packet/in.go index ae846d0ed0140d6fa8ef7824b694086be0c097d6..5c96fe56786eb21655445150b8052bc8c435fdc3 100644 --- a/lib/pnet/packet/in.go +++ b/lib/pnet/packet/in.go @@ -52,7 +52,7 @@ func (T In) done() bool { func (T In) Type() Type { if T.done() { - panic("Read after Send") + panic("Read after Done") } return T.buf.typ } @@ -61,7 +61,7 @@ func (T In) Type() Type { // NOTE: Full will be invalid after Done is called func (T In) Full() []byte { if T.done() { - panic("Read after Send") + panic("Read after Done") } return T.buf.buf } @@ -75,7 +75,7 @@ func (T In) Remaining() []byte { func (T In) Reset() { if T.done() { - panic("Read after Send") + panic("Read after Done") } T.buf.pos = 0 } diff --git a/lib/pnet/packet/out.go b/lib/pnet/packet/out.go index 84b7bda2ec500a11c6582aeb840b45fec70fc421..a030b71f6950c5b22676231f772137cf5107c147 100644 --- a/lib/pnet/packet/out.go +++ b/lib/pnet/packet/out.go @@ -14,6 +14,12 @@ type OutBuf struct { rev int } +func MakeOutBuf(buf []byte) OutBuf { + return OutBuf{ + buf: buf, + } +} + func (T *OutBuf) Reset() { T.typ = None T.buf = T.buf[:0]