warn instead of crash on unexpected packet

This commit is contained in:
Admin Else
2026-04-02 18:49:50 +02:00
parent abb0fa4d37
commit 272dcb4d36
2 changed files with 9 additions and 4 deletions
+4 -2
View File
@@ -109,7 +109,10 @@ func (l *LoginServer) OnLoginAcknowledged(_ *v1_21_8.LoginToServerPacketLoginAck
}
func (l *LoginServer) OnDefault(event event.Unhandled) (err error) {
err = fmt.Errorf("unexpected event during login: %#v", event)
if _, ok := event.Val.(proto_base.EncodeDecodeAble); !ok {
return
}
slog.Warn("unexpected packet during login serving", "packet", event.Val)
return
}
@@ -160,7 +163,6 @@ func WithCompatibleVersions(versions ...int32) LoginServerSetting {
func ServeLogin(c *proto.Conn, settings ...LoginServerSetting) (ret *LoginServer, err error) {
ret = &LoginServer{Conn: c}
ret.RegisterCritical(ret.OnDefault)
ret.RegisterIgnore(event.Close{})
ret.RegisterCriticalUntilLatest(ret.OnHandshake)
ret.RegisterCriticalUntilLatest(ret.OnLoginStart)
ret.RegisterCriticalUntilLatest(ret.OnLoginAcknowledged)