From 2e11023096add1fd12ab61fc3119b5aa28dcb667 Mon Sep 17 00:00:00 2001 From: Christoph Hagen Date: Fri, 8 Dec 2023 15:53:01 +0100 Subject: [PATCH] Check device message size --- Sources/App/DeviceManager.swift | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/Sources/App/DeviceManager.swift b/Sources/App/DeviceManager.swift index a236dd2..8ee45a5 100644 --- a/Sources/App/DeviceManager.swift +++ b/Sources/App/DeviceManager.swift @@ -113,12 +113,17 @@ final class DeviceManager { } func processDeviceResponse(_ buffer: ByteBuffer) { - guard let data = buffer.getData(at: 0, length: buffer.readableBytes), - data.count == SignedMessage.size else { + guard let data = buffer.getData(at: 0, length: buffer.readableBytes) else { log("Failed to get data buffer received from device") self.resumeDeviceRequest(with: .invalidMessageSizeFromDevice) return } + + guard data.count == SignedMessage.size else { + print("Invalid size of device message: \(data.count)") + self.resumeDeviceRequest(with: .invalidMessageSizeFromDevice) + return + } self.resumeDeviceRequest(with: data) }