configuration protocol support draft
This commit is contained in:
@ -79,7 +79,7 @@ func Encrypt(conn *net.Conn, name string, serverKey *rsa.PrivateKey) (*Resp, err
|
||||
|
||||
func encryptionRequest(conn *net.Conn, publicKey, verifyToken []byte) error {
|
||||
return conn.WritePacket(pk.Marshal(
|
||||
packetid.LoginEncryptionRequest,
|
||||
packetid.ClientboundLoginEncryptionRequest,
|
||||
pk.String(""),
|
||||
pk.ByteArray(publicKey),
|
||||
pk.ByteArray(verifyToken),
|
||||
@ -92,7 +92,7 @@ func encryptionResponse(conn *net.Conn, serverKey *rsa.PrivateKey, verifyToken [
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if p.ID != packetid.LoginEncryptionResponse {
|
||||
if packetid.ServerboundPacketID(p.ID) != packetid.ServerboundLoginEncryptionResponse {
|
||||
return nil, fmt.Errorf("0x%02X is not Encryption Response", p.ID)
|
||||
}
|
||||
|
||||
|
@ -96,8 +96,8 @@ func (d *MojangLoginHandler) AcceptLogin(conn *net.Conn, protocol int32) (name s
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
if p.ID != packetid.LoginStart {
|
||||
err = wrongPacketErr{expect: packetid.LoginStart, get: p.ID}
|
||||
if packetid.ServerboundPacketID(p.ID) != packetid.ServerboundLoginStart {
|
||||
err = wrongPacketErr{expect: int32(packetid.ServerboundLoginStart), get: p.ID}
|
||||
return
|
||||
}
|
||||
|
||||
@ -133,7 +133,7 @@ func (d *MojangLoginHandler) AcceptLogin(conn *net.Conn, protocol int32) (name s
|
||||
// set compression
|
||||
if d.Threshold >= 0 {
|
||||
err = conn.WritePacket(pk.Marshal(
|
||||
packetid.LoginCompression,
|
||||
packetid.ClientboundLoginCompression,
|
||||
pk.VarInt(d.Threshold),
|
||||
))
|
||||
if err != nil {
|
||||
@ -152,7 +152,7 @@ func (d *MojangLoginHandler) AcceptLogin(conn *net.Conn, protocol int32) (name s
|
||||
}
|
||||
// send login success
|
||||
err = conn.WritePacket(pk.Marshal(
|
||||
packetid.LoginSuccess,
|
||||
packetid.ClientboundLoginSuccess,
|
||||
pk.UUID(id),
|
||||
pk.String(name),
|
||||
pk.Array(properties),
|
||||
|
@ -59,15 +59,15 @@ func (s *Server) acceptListPing(conn *net.Conn, clientProtocol int32) {
|
||||
return
|
||||
}
|
||||
|
||||
switch p.ID {
|
||||
case packetid.StatusResponse: // List
|
||||
switch packetid.ClientboundPacketID(p.ID) {
|
||||
case packetid.ClientboundStatusResponse: // List
|
||||
var resp []byte
|
||||
resp, err = s.listResp(clientProtocol)
|
||||
if err != nil {
|
||||
break
|
||||
}
|
||||
err = conn.WritePacket(pk.Marshal(0x00, pk.String(resp)))
|
||||
case packetid.StatusPongResponse: // Ping
|
||||
case packetid.ClientboundStatusPongResponse: // Ping
|
||||
err = conn.WritePacket(p)
|
||||
}
|
||||
if err != nil {
|
||||
|
@ -80,7 +80,7 @@ func (s *Server) AcceptConn(conn *net.Conn) {
|
||||
var loginErr LoginFailErr
|
||||
if errors.As(err, &loginErr) {
|
||||
_ = conn.WritePacket(pk.Marshal(
|
||||
packetid.LoginDisconnect,
|
||||
packetid.ClientboundLoginDisconnect,
|
||||
loginErr.reason,
|
||||
))
|
||||
}
|
||||
|
Reference in New Issue
Block a user