diff --git a/server/login_server.go b/server/login_server.go index 9d948d3..707845f 100644 --- a/server/login_server.go +++ b/server/login_server.go @@ -163,12 +163,13 @@ func (l *LoginServer) OnEncryptionResponse(packet *v1_21_8.LoginToServerPacketEn return } - serverId := crypto.AuthDigest([]byte(l.ServerId), sharedSecret, l.PublicKeyBytes) - _, err = api.HasJoined(l.Requested.Name, serverId, "") + err = l.SetSecret(sharedSecret) if err != nil { return } - err = l.SetSecret(sharedSecret) + + serverId := crypto.AuthDigest([]byte(l.ServerId), sharedSecret, l.PublicKeyBytes) + _, err = api.HasJoined(l.Requested.Name, serverId, "") if err != nil { return } @@ -240,6 +241,7 @@ func ServeLogin(c *proto.Conn, settings ...LoginServerSetting) (ret *LoginServer ret.RegisterCriticalUntilLatest(ret.OnLoginAcknowledged) ret.RegisterCriticalUntilLatest(ret.OnStatusRequest) ret.RegisterCriticalUntilLatest(ret.OnStatusPing) + ret.RegisterCriticalUntilLatest(ret.OnEncryptionResponse) for _, s := range settings { s(ret) } diff --git a/server/server.go b/server/server.go index 6e58ac8..c4e2182 100644 --- a/server/server.go +++ b/server/server.go @@ -78,6 +78,7 @@ func StartServerWithOnConn(listenAddr string, onConn func(c *proto.Conn) (err er if errors.Is(connErr, ShutDownServerErr) { running = false } + c.Log.Error("closing connection", "err", connErr) if connErr != nil { connErr = Kick(c, text.Pretty(connErr.Error()), "") } diff --git a/tools/registry_data_hunter/main.go b/tools/registry_data_hunter/main.go index 5761a49..5673576 100644 --- a/tools/registry_data_hunter/main.go +++ b/tools/registry_data_hunter/main.go @@ -25,6 +25,8 @@ func wontFail[T any](v T, err error) T { return v } +// THIS IS REDUNDANT USE LOGIN PACKET IN MINECRAFT DATA + var ( // Edit these two Version = "1.21.11"