From 421c18687ee343894bc362b27da20a7080efef41 Mon Sep 17 00:00:00 2001 From: "dmy@lab" Date: Sun, 10 Jan 2016 13:47:37 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=97=A0=E7=94=A8=E6=B3=A8?= =?UTF-8?q?=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tscipher/cipher.go | 35 ----------------------------------- 1 file changed, 35 deletions(-) diff --git a/tscipher/cipher.go b/tscipher/cipher.go index 8cd4b44..b73badb 100644 --- a/tscipher/cipher.go +++ b/tscipher/cipher.go @@ -58,7 +58,6 @@ func NewCarrier(conn net.Conn, cipher Cipher, queCache *cache.UnblockingQueueCac } func (this *Carrier) GetReceiveBuff() []byte { - // log.Debug("id %d receivebuff Get, len %d", this.AttachedTunnelID, len(this.receiveBuff)) buff := this.receiveBuff _b := make([]byte, len(buff), cap(buff)) //必须这样写,没错。 copy(_b, buff) @@ -67,7 +66,6 @@ func (this *Carrier) GetReceiveBuff() []byte { func (this *Carrier) SetReceiveBuff(buff []byte) { this.receiveBuff = buff - // log.Debug("id %d receivebuff set, len %d", this.AttachedTunnelID, len(this.receiveBuff)) } func NewCipher(cipherName string) (cipher Cipher) { @@ -86,10 +84,7 @@ func NewCipher(cipherName string) (cipher Cipher) { func WrapPackage(data []byte) []byte { //把要加密传输的数据打包成一定的格式,避免发送了100自己,只收到90字节的问题。 sizeOfData := len(data) binSize := utils.Int2binary(sizeOfData, 10) - // header := make([]byte, 18) - // header = append(append(append(header, StartMark...), binSize...), EndMark...) header := append(append(StartMark, binSize...), EndMark...) - // log.Error("size of header %d %x", len(header), header) //加密 key := []byte("#2GD+.>dt`Qdp") key = key @@ -109,8 +104,6 @@ func UnwrapPackage(pacakge []byte) (data []byte, rest []byte, err error) { for i, v := range cipheredHeader { header[i] = v ^ key[i%len(key)] } - // log.Error("receive header %d %x", len(header), header) - // log.Error("receive pacakge %d %x", len(pacakge[:180]), pacakge[:180]) start := header[:4] end := header[14:] binSize := header[4:14] @@ -144,10 +137,7 @@ func UnwrapPackage(pacakge []byte) (data []byte, rest []byte, err error) { } func SendData(carrier *Carrier) (n int, err error) { - // cache, nByte := carrier.Cache.Get() msg, nByte := carrier.Msg.Get() - // fmt.Printf("SendData id %s get msg %d\n", carrier.AttachedTunnelID, nByte) - // fmt.Printf("id %s get cache\n", carrier.AttachedTunnelID) if len(msg) < nByte { log.Panic("Cache of send is too small") } @@ -163,23 +153,16 @@ func SendData(carrier *Carrier) (n int, err error) { //打包 wraped := WrapPackage(encrypedByte[:nByte]) n, err = carrier.Conn.Write(wraped) - // log.Debug("Ready to write id %s, 18 byte %s", carrier.AttachedTunnelID, string(wraped[:18])) - // copy(carrier.Cache, encrypedByte[:nByte]) // in case of debugging - // carrier.Cache.Put(msg, len(msg)) carrier.Cache.Put(make([]byte, 1024*4), 1024*4) - // fmt.Printf("SendData %s id put cache\n", carrier.AttachedTunnelID) return } func RowReceiveData(carrier *Carrier) (n int, err error) { cache, _ := carrier.Cache.Get() - // fmt.Printf("RowReceiveData id %s get cache\n", carrier.AttachedTunnelID) n, err = carrier.Conn.Read(cache) if err != nil { n = 0 } - // carrier.Cache.Put(cache, n) - // fmt.Printf("RowReceiveData id %s pet msg\n", carrier.AttachedTunnelID) carrier.Msg.Put(cache, n) return } @@ -204,27 +187,22 @@ func ReceiveData(carrier *Carrier) (n int, err error) { log.Debug("return NotPackageError %s", carrier.AttachedTunnelID) return 0, err } - // log.Debug("id %s length of package %d", carrier.AttachedTunnelID, len(packageData)) if err == nil { //够一个完整的包 capBuff := cap(carrier.GetReceiveBuff()) _buff := make([]byte, 0, capBuff) //释放 _buff = append(_buff, _rest...) - // log.Debug("id %s carrier.SetReceiveBuff(_buff)", carrier.AttachedTunnelID) carrier.SetReceiveBuff(_buff) break } //如果读到的数据不够一个完整的包 - // log.Debug("id %s to read wrapedPackage %d", carrier.AttachedTunnelID, len(wrapedPackage)) if len(wrapedPackage) > 0 { n, err = carrier.Conn.Read(cache) if err != nil { log.Error("ERROR %s", err) } - // log.Debug("id %s to Conn.Read %d", carrier.AttachedTunnelID, n) } else { n, err = io.ReadAtLeast(carrier.Conn, cache, 18) - // log.Debug("id %s to ReadAtLeast", carrier.AttachedTunnelID) } if err != nil { @@ -232,26 +210,13 @@ func ReceiveData(carrier *Carrier) (n int, err error) { return n, err } wrapedPackage = append(wrapedPackage, cache[:n]...) - - // log.Debug("id %s length of conn %d", carrier.AttachedTunnelID, n) - // log.Debug("id %s first 18 %s from %s", carrier.AttachedTunnelID, string(wrapedPackage[:18]), carrier.Conn.RemoteAddr().String()) - } - - // if len(carrier.GetReceiveBuff()) > 0 { - // log.Debug("id %s trailing %d from %s", carrier.AttachedTunnelID, len(carrier.GetReceiveBuff()), carrier.Conn.RemoteAddr().String()) - // log.Debug("id %s 18 byte of trailing %s", carrier.AttachedTunnelID, string(carrier.GetReceiveBuff()[:18])) - // } decrypted, err := carrier.Cipher.Decrypt(packageData) if err != nil { n = 0 return } n = len(decrypted) - // copy(cache, decrypted) - // carrier.Cache.Put(decrypted, n) - // fmt.Printf("ReceiveData id %s get msg\n", carrier.AttachedTunnelID) carrier.Msg.Put(decrypted, n) - // fmt.Printf("id %s put cache\n", carrier.AttachedTunnelID) return }