From 9963c35b7da89442cddb245a51cec48d0e318539 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=BA=90=E6=96=87=E9=9B=A8?= <41315874+fumiama@users.noreply.github.com> Date: Sun, 24 Apr 2022 18:55:03 +0800 Subject: [PATCH] public data in cmd packet --- cmd.go | 24 ++++++++++++------------ reg.go | 8 ++++---- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/cmd.go b/cmd.go index 345a752..40e38c5 100644 --- a/cmd.go +++ b/cmd.go @@ -36,7 +36,7 @@ var ( type CmdPacket struct { io.ReaderFrom t *tea.TEA - data []byte + Data []byte rawCmdPacket } @@ -51,7 +51,7 @@ type rawCmdPacket struct { func NewCmdPacket(cmd uint8, data []byte, t *tea.TEA) (c *CmdPacket) { c = pool.Get().(*CmdPacket) c.t = t - c.data = data + c.Data = data c.cmd = cmd c.md5 = md5.Sum(data) return @@ -95,7 +95,7 @@ func ReadCmdPacket(f io.Reader, t *tea.TEA) (c *CmdPacket, err error) { //go:nosplit func (c *CmdPacket) Refresh(cmd uint8, data []byte, t *tea.TEA) { c.t = t - c.data = data + c.Data = data c.cmd = cmd c.md5 = md5.Sum(data) } @@ -120,27 +120,27 @@ func (c *CmdPacket) ReadFrom(f io.Reader) (n int64, err error) { // Write should not be used due to the full-copy of buf func (c *CmdPacket) Write(buf []byte) (n int, err error) { - oldlen := len(c.data) - c.data = append(c.data, buf...) - if len(c.data) < 1+1+16 { + oldlen := len(c.Data) + c.Data = append(c.Data, buf...) + if len(c.Data) < 1+1+16 { return len(buf), nil } - if len(c.data) < 1+1+16+int(c.len) { + if len(c.Data) < 1+1+16+int(c.len) { return len(buf), nil } - r := (*rawCmdPacket)(*(*unsafe.Pointer)(unsafe.Pointer(&c.data))) + r := (*rawCmdPacket)(*(*unsafe.Pointer)(unsafe.Pointer(&c.Data))) c.cmd = r.cmd c.len = r.len c.md5 = r.md5 copy(c.raw[:], r.raw[:c.len]) - c.data = nil + c.Data = nil return 1 + 1 + 16 + int(c.len) - oldlen, nil } //go:nosplit func (c *CmdPacket) Encrypt(seq uint8) (raw []byte) { setseq(c.t, seq) - c.len = uint8(c.t.EncryptLittleEndianTo(c.data, sumtable, c.raw[:])) + c.len = uint8(c.t.EncryptLittleEndianTo(c.Data, sumtable, c.raw[:])) (*slice)(unsafe.Pointer(&raw)).Data = unsafe.Pointer(&c.rawCmdPacket) (*slice)(unsafe.Pointer(&raw)).Len = 1 + 1 + 16 + int(c.len) (*slice)(unsafe.Pointer(&raw)).Cap = 1 + 1 + 16 + 255 @@ -152,7 +152,7 @@ func (c *CmdPacket) Decrypt(seq uint8) error { setseq(c.t, seq) d := c.t.DecryptLittleEndian(c.raw[:c.len], sumtable) if d != nil && c.md5 == md5.Sum(d) { - c.data = d + c.Data = d return nil } return ErrMd5Mismatch @@ -161,7 +161,7 @@ func (c *CmdPacket) Decrypt(seq uint8) error { //go:nosplit func (c *CmdPacket) Put() { c.cmd = 0 - c.data = nil + c.Data = nil pool.Put(c) } diff --git a/reg.go b/reg.go index 25f42a2..7a0ba08 100644 --- a/reg.go +++ b/reg.go @@ -106,7 +106,7 @@ func (r *Regedit) Get(key string) (string, error) { if err != nil { return "", ErrDecAck } - a := string(p.data) + a := string(p.Data) if a == "erro" && p.cmd == ACKERRO { return "", ErrInternalServer } @@ -143,7 +143,7 @@ func (r *Regedit) Set(key, value string) error { if err != nil { return ErrDecAck } - a := BytesToString(ack.data) + a := BytesToString(ack.Data) if a == "erro" || ack.cmd == ACKERRO { return ErrInternalServer } @@ -162,7 +162,7 @@ func (r *Regedit) Set(key, value string) error { if err != nil { return ErrDecAck } - a = BytesToString(ack.data) + a = BytesToString(ack.Data) if a == "erro" || ack.cmd == ACKERRO { return ErrInternalServer } @@ -197,7 +197,7 @@ func (r *Regedit) Del(key string) error { if err != nil { return ErrDecAck } - a := BytesToString(ack.data) + a := BytesToString(ack.Data) if a == "erro" || ack.cmd == ACKERRO { return ErrInternalServer }