1
0
mirror of https://github.com/v2fly/v2ray-core.git synced 2024-06-24 08:25:23 +00:00

move back to serial

This commit is contained in:
Darien Raymond 2018-11-03 13:03:02 +01:00
parent 128a90b98b
commit 77c03f0da5
No known key found for this signature in database
GPG Key ID: 7251FFA14BB18169
12 changed files with 31 additions and 32 deletions

View File

@ -9,7 +9,7 @@ import (
"v2ray.com/core/common/buf"
"v2ray.com/core/common/net"
"v2ray.com/core/common/protocol"
"v2ray.com/core/common/vio"
"v2ray.com/core/common/serial"
)
type SessionStatus byte
@ -65,7 +65,7 @@ func (f FrameMetadata) WriteTo(b *buf.Buffer) error {
lenBytes := b.Bytes()
len0 := b.Len()
if _, err := vio.WriteUint16(b, f.SessionID); err != nil {
if _, err := serial.WriteUint16(b, f.SessionID); err != nil {
return err
}
@ -91,7 +91,7 @@ func (f FrameMetadata) WriteTo(b *buf.Buffer) error {
// Unmarshal reads FrameMetadata from the given reader.
func (f *FrameMetadata) Unmarshal(reader io.Reader) error {
metaLen, err := vio.ReadUint16(reader)
metaLen, err := serial.ReadUint16(reader)
if err != nil {
return err
}

View File

@ -5,7 +5,7 @@ import (
"v2ray.com/core/common/buf"
"v2ray.com/core/common/crypto"
"v2ray.com/core/common/vio"
"v2ray.com/core/common/serial"
)
// PacketReader is an io.Reader that reads whole chunk of Mux frames every time.
@ -28,7 +28,7 @@ func (r *PacketReader) ReadMultiBuffer() (buf.MultiBuffer, error) {
return nil, io.EOF
}
size, err := vio.ReadUint16(r.reader)
size, err := serial.ReadUint16(r.reader)
if err != nil {
return nil, err
}

View File

@ -5,7 +5,7 @@ import (
"v2ray.com/core/common/buf"
"v2ray.com/core/common/net"
"v2ray.com/core/common/protocol"
"v2ray.com/core/common/vio"
"v2ray.com/core/common/serial"
)
type Writer struct {
@ -66,7 +66,7 @@ func writeMetaWithFrame(writer buf.Writer, meta FrameMetadata, data buf.MultiBuf
if err := meta.WriteTo(frame); err != nil {
return err
}
if _, err := vio.WriteUint16(frame, uint16(data.Len())); err != nil {
if _, err := serial.WriteUint16(frame, uint16(data.Len())); err != nil {
return err
}

View File

@ -6,8 +6,8 @@ import (
"v2ray.com/core/common"
"v2ray.com/core/common/buf"
"v2ray.com/core/common/net"
"v2ray.com/core/common/serial"
"v2ray.com/core/common/task"
"v2ray.com/core/common/vio"
)
type AddressOption func(*AddressParser)
@ -167,7 +167,7 @@ func (p *AddressParser) ReadAddressPort(buffer *buf.Buffer, input io.Reader) (ne
}
func (p *AddressParser) writePort(writer io.Writer, port net.Port) error {
return common.Error2(vio.WriteUint16(writer, port.Value()))
return common.Error2(serial.WriteUint16(writer, port.Value()))
}
func (p *AddressParser) writeAddress(writer io.Writer, address net.Address) error {

View File

@ -1,4 +1,4 @@
package vio
package serial
import (
"encoding/binary"

View File

@ -1,4 +1,4 @@
package vio_test
package serial_test
import (
"testing"
@ -6,14 +6,14 @@ import (
"v2ray.com/core/common"
"v2ray.com/core/common/buf"
"v2ray.com/core/common/compare"
"v2ray.com/core/common/vio"
"v2ray.com/core/common/serial"
)
func TestUint32Serial(t *testing.T) {
b := buf.New()
defer b.Release()
n, err := vio.WriteUint32(b, 10)
n, err := serial.WriteUint32(b, 10)
common.Must(err)
if n != 4 {
t.Error("expect 4 bytes writtng, but actually ", n)

View File

@ -10,7 +10,7 @@ import (
"v2ray.com/core/common"
"v2ray.com/core/common/buf"
"v2ray.com/core/common/bytespool"
"v2ray.com/core/common/vio"
"v2ray.com/core/common/serial"
)
const (
@ -70,7 +70,7 @@ func NewChunkReader(reader io.Reader, auth *Authenticator) *ChunkReader {
}
func (v *ChunkReader) ReadMultiBuffer() (buf.MultiBuffer, error) {
size, err := vio.ReadUint16(v.reader)
size, err := serial.ReadUint16(v.reader)
if err != nil {
return nil, newError("failed to read size")
}

View File

@ -7,7 +7,7 @@ import (
"v2ray.com/core/common/buf"
"v2ray.com/core/common/net"
"v2ray.com/core/common/protocol"
"v2ray.com/core/common/vio"
"v2ray.com/core/common/serial"
)
const (
@ -260,7 +260,7 @@ func writeSocks4Response(writer io.Writer, errCode byte, address net.Address, po
defer buffer.Release()
common.Must2(buffer.WriteBytes(0x00, errCode))
common.Must2(vio.WriteUint16(buffer, port.Value()))
common.Must2(serial.WriteUint16(buffer, port.Value()))
common.Must2(buffer.Write(address.IP()))
return buf.WriteAllBytes(writer, buffer.Bytes())
}

View File

@ -16,15 +16,15 @@ import (
"v2ray.com/core/common/crypto"
"v2ray.com/core/common/dice"
"v2ray.com/core/common/protocol"
"v2ray.com/core/common/vio"
"v2ray.com/core/common/serial"
"v2ray.com/core/proxy/vmess"
)
func hashTimestamp(h hash.Hash, t protocol.Timestamp) []byte {
vio.WriteUint64(h, uint64(t))
vio.WriteUint64(h, uint64(t))
vio.WriteUint64(h, uint64(t))
vio.WriteUint64(h, uint64(t))
serial.WriteUint64(h, uint64(t))
serial.WriteUint64(h, uint64(t))
serial.WriteUint64(h, uint64(t))
serial.WriteUint64(h, uint64(t))
return h.Sum(nil)
}
@ -59,7 +59,7 @@ func (c *ClientSession) EncodeRequestHeader(header *protocol.RequestHeader, writ
timestamp := protocol.NewTimestampGenerator(protocol.NowTime(), 30)()
account := header.User.Account.(*vmess.MemoryAccount)
idHash := c.idHash(account.AnyValidID().Bytes())
common.Must2(vio.WriteUint64(idHash, uint64(timestamp)))
common.Must2(serial.WriteUint64(idHash, uint64(timestamp)))
common.Must2(writer.Write(idHash.Sum(nil)))
buffer := buf.New()

View File

@ -8,8 +8,8 @@ import (
"v2ray.com/core/common/buf"
"v2ray.com/core/common/net"
"v2ray.com/core/common/protocol"
"v2ray.com/core/common/serial"
"v2ray.com/core/common/uuid"
"v2ray.com/core/common/vio"
)
var (
@ -96,11 +96,11 @@ func (f *CommandSwitchAccountFactory) Marshal(command interface{}, writer io.Wri
common.Must2(writer.Write([]byte(hostStr)))
}
common.Must2(vio.WriteUint16(writer, cmd.Port.Value()))
common.Must2(serial.WriteUint16(writer, cmd.Port.Value()))
idBytes := cmd.ID.Bytes()
common.Must2(writer.Write(idBytes))
common.Must2(vio.WriteUint16(writer, cmd.AlterIds))
common.Must2(serial.WriteUint16(writer, cmd.AlterIds))
common.Must2(writer.Write([]byte{byte(cmd.Level)}))
common.Must2(writer.Write([]byte{cmd.ValidMin}))

View File

@ -5,10 +5,9 @@ import (
"sync"
"time"
"v2ray.com/core/common/vio"
"v2ray.com/core/common"
"v2ray.com/core/common/protocol"
"v2ray.com/core/common/serial"
"v2ray.com/core/common/task"
)
@ -66,7 +65,7 @@ func (v *TimedUserValidator) generateNewHashes(nowSec protocol.Timestamp, user *
genBeginSec = nowSec - cacheDurationSec
}
for ts := genBeginSec; ts <= genEndSec; ts++ {
common.Must2(vio.WriteUint64(idHash, uint64(ts)))
common.Must2(serial.WriteUint64(idHash, uint64(ts)))
idHash.Sum(hashValue[:0])
idHash.Reset()

View File

@ -6,8 +6,8 @@ import (
"v2ray.com/core/common"
"v2ray.com/core/common/protocol"
"v2ray.com/core/common/serial"
"v2ray.com/core/common/uuid"
"v2ray.com/core/common/vio"
. "v2ray.com/core/proxy/vmess"
. "v2ray.com/ext/assert"
)
@ -39,7 +39,7 @@ func TestUserValidator(t *testing.T) {
testSmallLag := func(lag time.Duration) {
ts := protocol.Timestamp(time.Now().Add(time.Second * lag).Unix())
idHash := hasher(id.Bytes())
common.Must2(vio.WriteUint64(idHash, uint64(ts)))
common.Must2(serial.WriteUint64(idHash, uint64(ts)))
userHash := idHash.Sum(nil)
euser, ets, found := v.Get(userHash)
@ -61,7 +61,7 @@ func TestUserValidator(t *testing.T) {
testBigLag := func(lag time.Duration) {
ts := protocol.Timestamp(time.Now().Add(time.Second * lag).Unix())
idHash := hasher(id.Bytes())
common.Must2(vio.WriteUint64(idHash, uint64(ts)))
common.Must2(serial.WriteUint64(idHash, uint64(ts)))
userHash := idHash.Sum(nil)
euser, _, found := v.Get(userHash)