added [internal.ws.frame] types (draft)
This commit is contained in:
parent
6e3c4a77c4
commit
7db4d2ee1f
|
@ -0,0 +1,34 @@
|
||||||
|
package opcode
|
||||||
|
|
||||||
|
import (
|
||||||
|
"git.xdrm.io/gws/internal/ws/frame"
|
||||||
|
)
|
||||||
|
|
||||||
|
// Represents OpCode Values
|
||||||
|
const (
|
||||||
|
// frame continuation
|
||||||
|
CONTINUATION frame.OpCode = 0x00
|
||||||
|
|
||||||
|
// frame type
|
||||||
|
TEXT frame.OpCode = 0x01
|
||||||
|
BINARY frame.OpCode = 0x02
|
||||||
|
|
||||||
|
// reserved for non-control frames
|
||||||
|
RSV1 frame.OpCode = 0x03
|
||||||
|
RSV2 frame.OpCode = 0x04
|
||||||
|
RSV3 frame.OpCode = 0x05
|
||||||
|
RSV4 frame.OpCode = 0x06
|
||||||
|
|
||||||
|
// connection close
|
||||||
|
CLOSE frame.OpCode = 0x08
|
||||||
|
|
||||||
|
// ping pong
|
||||||
|
PING frame.OpCode = 0x09
|
||||||
|
PONG frame.OpCode = 0x0A
|
||||||
|
|
||||||
|
// reserved for control frames
|
||||||
|
CRSV1 frame.OpCode = 0x0B
|
||||||
|
CRSV2 frame.OpCode = 0x0C
|
||||||
|
CRSV3 frame.OpCode = 0x0D
|
||||||
|
CRSV4 frame.OpCode = 0x0E
|
||||||
|
)
|
|
@ -0,0 +1,20 @@
|
||||||
|
package frame
|
||||||
|
|
||||||
|
// Represents an OpCode
|
||||||
|
type OpCode byte
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// Represents a frame metadata
|
||||||
|
type FrameMeta struct {
|
||||||
|
fin bool
|
||||||
|
opc OpCode
|
||||||
|
msk []byte // len: 4 if set, else empty
|
||||||
|
}
|
||||||
|
|
||||||
|
// Represents a frame payload
|
||||||
|
type Frame struct {
|
||||||
|
met FrameMeta
|
||||||
|
buf []byte
|
||||||
|
len uint64
|
||||||
|
}
|
Loading…
Reference in New Issue