mirror of
https://github.com/v2fly/v2ray-core.git
synced 2024-12-21 01:27:03 -05:00
Update protocol for better decription
This commit is contained in:
parent
b0849dd23b
commit
d785fa0156
@ -2,7 +2,7 @@
|
||||
package vmess
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"fmt"
|
||||
"io"
|
||||
)
|
||||
|
||||
@ -21,18 +21,17 @@ type VMessInput struct {
|
||||
}
|
||||
|
||||
func Read(reader io.Reader) (input *VMessInput, err error) {
|
||||
buffer := make([]byte, 17 /* version + user hash */)
|
||||
nBytes, err := reader.Read(buffer)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
if nBytes != len(buffer) {
|
||||
err = fmt.Errorf("Unexpected length of header %d", nBytes)
|
||||
return
|
||||
}
|
||||
|
||||
return
|
||||
buffer := make([]byte, 17 /* version + user hash */)
|
||||
nBytes, err := reader.Read(buffer)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
if nBytes != len(buffer) {
|
||||
err = fmt.Errorf("Unexpected length of header %d", nBytes)
|
||||
return
|
||||
}
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
type VMessOutput [4]byte
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
* 16 字节:md5(用户 VID + 'ASK')
|
||||
|
||||
指令部分:
|
||||
* 1 字节:随机填充长度 M (M <= 32)
|
||||
* 1 字节:随机填充长度 M (0 < M <= 32)
|
||||
* M 字节:随机填充内容
|
||||
* 1 字节:保留,总是 0x00
|
||||
* 16 字节:请求数据 IV
|
||||
@ -29,7 +29,7 @@
|
||||
* 4 字节:IPv4
|
||||
* 1 字节长度 + 域名
|
||||
* 16 字节:IPv6
|
||||
* 1 字节:随机填充长度 M2 (M2 <= 32)
|
||||
* 1 字节:随机填充长度 M2 (0 < M2 <= 32),使得指令部分长度为 16 的倍数字节
|
||||
* M2 字节:随机填充内容
|
||||
|
||||
数据部分
|
||||
|
Loading…
Reference in New Issue
Block a user