Nice
RustAdmin (6 kb) закачан 11 января 2017 г. Joxi
[SERVER][UNHANDLED] GroupDestroy
Discussion in 'Rust Discussion' started by Dark Knight, Dec 5, 2016.
-
Смена портов помогла!
Changing ports helped! -
You suggest IP-server actually change? -
185.71.1.25:27015 -> 185.71.1.25:27017
Me ddos 109.171.67.55
Rcon breaks 185.14.28.168 -
Post your reports here [SERVER][UNHANDLED] Group destroyed • /r/playrust
Let's notify developers
P.S. change port - it's not solution -
why this spamming error if only on the modded servers? is this an oxide vulnerability?
many servers at same time has this error. -
Wulf Community Admin
-
Code:
UnityEngine.Debug.LogWarning("[SERVER][UNHANDLED] " + packet.type);
What does it mean? Maybe Oxide team can fix it themselves?) -
Wulf Community Admin
-
-
Wulf Community Admin
-
-
I sent to Facepunch support some info about this problem with proof of concept.
Waiting for answer... -
Code:// ServerMgr private void OnNetworkMessage(Message packet) { Message.Type type = packet.type; switch (type) { case Message.Type.RPCMessage: if (!packet.connection.isAuthenticated) { return; } using (TimeWarning.New("OnRPCMessage", 20L)) { this.OnRPCMessage(packet); } return; case Message.Type.EntityPosition: case Message.Type.ConsoleMessage: case Message.Type.Effect: case Message.Type.Message: case Message.Type.RequestUserInformation: IL_3A: switch (type) { case Message.Type.Auth: if (packet.connection.state != Connection.State.Welcoming) { return; } using (TimeWarning.New("OnClientAuth", 20L)) { this.OnClientAuth(packet); } return; case Message.Type.Ready: if (!packet.connection.isAuthenticated) { return; } using (TimeWarning.New("ClientReady", 20L)) { this.ClientReady(packet); } return; } Debug.LogWarning("[SERVER][UNHANDLED] " + packet.type); return; case Message.Type.ConsoleCommand: if (!packet.connection.isAuthenticated) { return; } using (TimeWarning.New("OnClientCommand", 20L)) { ConsoleNetwork.OnClientCommand(packet); } return; case Message.Type.DisconnectReason: { string str = packet.read.String(); Debug.Log(packet.connection.ToString() + " disconnecting: " + str); return; } case Message.Type.Tick: if (!packet.connection.isAuthenticated) { return; } using (TimeWarning.New("OnPlayerTick", 20L)) { this.OnPlayerTick(packet); } return; case Message.Type.GiveUserInformation: using (TimeWarning.New("GiveUserInformation", 20L)) { this.OnGiveUserInformation(packet); } return; } goto IL_3A; }
Code:// Network.Message.Type public const Message.Type GroupDestroy = 8;
The message itself and its type is created by the client for any reason and is assigned to this client function:
Code:// Client private void OnGroupDestroy(Message msg) { uint uid = msg.read.GroupID(); List<BaseNetworkable> list = Pool.GetList<BaseNetworkable>(); BaseNetworkable.clientEntities.FindInGroup(uid, list); for (int i = 0; i < list.Count; i++) { BaseNetworkable baseNetworkable = list[i]; if (!(baseNetworkable == null)) { if (!(baseNetworkable.gameObject == null)) { if (!baseNetworkable.ShouldDestroyWithGroup()) { baseNetworkable.LogEntry(BaseMonoBehaviour.LogEntryType.Network, 1, "skipping OnGroupDestroy - ShouldDestroyWithGroup == false"); } else { baseNetworkable.NetworkDestroy(baseNetworkable.ShouldDestroyImmediately()); } } } } Pool.FreeList<BaseNetworkable>(ref list); }
-
Mb oxide developers can add the possibility of use hook for OnNetworkMessage method? Then we can just check packet type and block him if he incorrect.
Or in oxidemod patch remove debug log in this method. -
Wulf Community Admin
-
Some one send incorrect packet to server and you propose ignore this message, when the server crashes because of it?
Do you think that if you hide it, the server will not fall? -
Wulf Community Admin
-
-
Wulf Community Admin