diff options
author | Muller, Alexander (A.) <amulle19@ford.com> | 2016-06-01 00:56:08 -0700 |
---|---|---|
committer | Muller, Alexander (A.) <amulle19@ford.com> | 2016-06-01 00:56:08 -0700 |
commit | 137812c8cf1cbe9506b045ec47137c8257894c75 (patch) | |
tree | dc08c414727d7de8538221e6225d3df4ef8d3401 | |
parent | c50f3b0478397d30feaac6a1f86e84242c123333 (diff) | |
download | sdl_ios-137812c8cf1cbe9506b045ec47137c8257894c75.tar.gz |
Added payload length checks for encryption/decryption.
-rw-r--r-- | SmartDeviceLink/SDLProtocol.m | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/SmartDeviceLink/SDLProtocol.m b/SmartDeviceLink/SDLProtocol.m index ede0f4de3..af86c2a80 100644 --- a/SmartDeviceLink/SDLProtocol.m +++ b/SmartDeviceLink/SDLProtocol.m @@ -304,7 +304,7 @@ typedef NSNumber SDLServiceTypeBox; header.bytesInPayload = (UInt32)data.length; header.messageID = ++_messageID; - if (encryption) { + if (encryption && data.length) { NSError *encryptError = nil; data = [self.securityManager encryptData:data withError:&encryptError]; @@ -366,8 +366,8 @@ typedef NSNumber SDLServiceTypeBox; NSUInteger payloadLength = payloadSize; NSData *payload = [self.receiveBuffer subdataWithRange:NSMakeRange(payloadOffset, payloadLength)]; - // If the message in encrypted, try to decrypt it - if (header.encrypted) { + // If the message in encrypted and there is payload, try to decrypt it + if (header.encrypted && payload.length) { NSError *decryptError = nil; payload = [self.securityManager decryptData:payload withError:&decryptError]; |