handling of broken packets

This commit is contained in:
bixilon 2020-06-03 14:28:32 +02:00
parent 11f95213d3
commit 3d5a1249da
No known key found for this signature in database
GPG Key ID: 5CAD791931B09AC4

View File

@ -136,15 +136,14 @@ public class Network {
while (binQueueIn.size() > 0) {
// read data
byte[] raw = binQueueIn.get(0);
byte[] decrypted = binQueueIn.get(0);
InPacketBuffer inPacketBuffer;
if (encryptionEnabled) {
// decrypt
byte[] decrypted = cipherDecrypt.update(raw);
inPacketBuffer = new InPacketBuffer(decrypted);
} else {
inPacketBuffer = new InPacketBuffer(raw);
decrypted = cipherDecrypt.update(decrypted);
}
try {
inPacketBuffer = new InPacketBuffer(decrypted);
Packets.Clientbound p = connection.getVersion().getProtocol().getPacketByCommand(connection.getConnectionState(), inPacketBuffer.getCommand());
Class<? extends ClientboundPacket> clazz = Protocol.getPacketByPacket(p);
@ -161,6 +160,10 @@ public class Network {
// safety first, but will not occur
e.printStackTrace();
}
} catch (ArrayIndexOutOfBoundsException e) {
Log.protocol("Received broken packet!");
e.printStackTrace();
}
binQueueIn.remove(0);
}