1
0
mirror of https://github.com/v2fly/v2ray-core.git synced 2026-04-30 01:29:09 -04:00

support packet transfer type in mux

This commit is contained in:
Darien Raymond
2017-05-02 22:23:07 +02:00
parent 96da76c5b0
commit 7a4bab4940
13 changed files with 258 additions and 161 deletions

View File

@@ -1,6 +1,7 @@
package serial
import "strconv"
import "io"
// Uint16ToBytes serializes an uint16 into bytes in big endian order.
func Uint16ToBytes(value uint16, b []byte) []byte {
@@ -11,6 +12,14 @@ func Uint16ToString(value uint16) string {
return strconv.Itoa(int(value))
}
func ReadUint16(reader io.Reader) (uint16, error) {
var b [2]byte
if _, err := io.ReadFull(reader, b[:]); err != nil {
return 0, err
}
return BytesToUint16(b[:]), nil
}
func WriteUint16(value uint16) func([]byte) (int, error) {
return func(b []byte) (int, error) {
b = Uint16ToBytes(value, b[:0])