9 "github.com/flynn/noise"
10 vors "go.stargrave.org/vors/internal"
33 rxCS, txCS *noise.CipherState
38 func (peer *Peer) Close() {
39 peer.aliveOnce.Do(func() {
47 func (peer *Peer) Rx() {
49 buf, err := vors.PktRead(peer.conn)
51 peer.logger.Error("rx", "err", err)
54 buf, err = peer.rxCS.Decrypt(buf[:0], nil, buf)
56 peer.logger.Error("rx decrypt", "err", err)
64 func (peer *Peer) Tx() {
65 for buf := range peer.tx {
69 buf, err := peer.txCS.Encrypt(buf[:0], nil, buf)
71 peer.logger.Error("tx encrypt", "err", err)
74 err = vors.PktWrite(peer.conn, buf)
76 peer.logger.Error("tx", "err", err)