summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoey Grover <joeygrover@gmail.com>2017-05-18 19:13:50 +0100
committerGitHub <noreply@github.com>2017-05-18 19:13:50 +0100
commit1d21d1f96344d81342940159d0b65c8fcdb21112 (patch)
treeb4ec4a4138837f21bc18eb39ed721f4e5bd60274
parentd72d75059ebe5326ba209ee7d767a1b81d059a55 (diff)
parent018de51cb222c6b0b3fad68e4431f10e6770a22d (diff)
downloadsdl_android-1d21d1f96344d81342940159d0b65c8fcdb21112.tar.gz
Merge pull request #474 from smartdevicelink/bugfix/issue_473
Update buffer read size for encrypted payloads to match TLS record standard
-rw-r--r--sdl_android/src/main/java/com/smartdevicelink/protocol/WiProProtocol.java3
-rw-r--r--sdl_android/src/main/java/com/smartdevicelink/streaming/StreamPacketizer.java9
2 files changed, 10 insertions, 2 deletions
diff --git a/sdl_android/src/main/java/com/smartdevicelink/protocol/WiProProtocol.java b/sdl_android/src/main/java/com/smartdevicelink/protocol/WiProProtocol.java
index 7b36b1689..af6973d2e 100644
--- a/sdl_android/src/main/java/com/smartdevicelink/protocol/WiProProtocol.java
+++ b/sdl_android/src/main/java/com/smartdevicelink/protocol/WiProProtocol.java
@@ -25,6 +25,7 @@ public class WiProProtocol extends AbstractProtocol {
public static final int V2_HEADER_SIZE = 12;
private static int HEADER_SIZE = 8;
private static int MAX_DATA_SIZE = V1_V2_MTU_SIZE - HEADER_SIZE;
+ private static int TLS_MAX_RECORD_SIZE = 16384;
int hashID = 0;
int messageID = 0;
@@ -147,7 +148,7 @@ public class WiProProtocol extends AbstractProtocol {
if (session == null)
return;
- byte[] dataToRead = new byte[4096];
+ byte[] dataToRead = new byte[TLS_MAX_RECORD_SIZE];
SdlSecurityBase sdlSec = session.getSdlSecurity();
if (sdlSec == null)
return;
diff --git a/sdl_android/src/main/java/com/smartdevicelink/streaming/StreamPacketizer.java b/sdl_android/src/main/java/com/smartdevicelink/streaming/StreamPacketizer.java
index 525d94739..40cc7d5ed 100644
--- a/sdl_android/src/main/java/com/smartdevicelink/streaming/StreamPacketizer.java
+++ b/sdl_android/src/main/java/com/smartdevicelink/streaming/StreamPacketizer.java
@@ -14,7 +14,14 @@ public class StreamPacketizer extends AbstractPacketizer implements Runnable{
private Thread t = null;
- private final static int BUFF_READ_SIZE = 1024;
+
+ private final static int TLS_MAX_RECORD_SIZE = 16384;
+ private final static int TLS_RECORD_HEADER_SIZE = 5;
+ private final static int TLS_RECORD_MES_AUTH_CDE_SIZE = 32;
+ private final static int TLS_MAX_RECORD_PADDING_SIZE = 256;
+
+
+ private final static int BUFF_READ_SIZE = TLS_MAX_RECORD_SIZE - TLS_RECORD_HEADER_SIZE - TLS_RECORD_MES_AUTH_CDE_SIZE - TLS_MAX_RECORD_PADDING_SIZE;
public SdlConnection sdlConnection = null;
private Object mPauseLock;