Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/quite/humla-spongycastle.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Dettman <peter.dettman@bouncycastle.org>2013-06-20 17:56:23 +0400
committerPeter Dettman <peter.dettman@bouncycastle.org>2013-06-20 17:56:23 +0400
commit8f79f999f84dee49eb8a8244dd47d71f94b641cc (patch)
treefbc6d0e94de5b51690382481b31ec540d05ec0c9 /core/src/main/java/org/bouncycastle/crypto/tls/DTLSProtocol.java
parentb56d8809108ba95756880d95f971a624fd9da84d (diff)
Add support for max_fragment_length extension to D/TLS protocols
Diffstat (limited to 'core/src/main/java/org/bouncycastle/crypto/tls/DTLSProtocol.java')
-rw-r--r--core/src/main/java/org/bouncycastle/crypto/tls/DTLSProtocol.java12
1 files changed, 12 insertions, 0 deletions
diff --git a/core/src/main/java/org/bouncycastle/crypto/tls/DTLSProtocol.java b/core/src/main/java/org/bouncycastle/crypto/tls/DTLSProtocol.java
index 680ac260..e27580c1 100644
--- a/core/src/main/java/org/bouncycastle/crypto/tls/DTLSProtocol.java
+++ b/core/src/main/java/org/bouncycastle/crypto/tls/DTLSProtocol.java
@@ -4,6 +4,7 @@ import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.security.SecureRandom;
+import java.util.Hashtable;
import java.util.Vector;
import org.bouncycastle.util.Arrays;
@@ -37,6 +38,17 @@ public abstract class DTLSProtocol
}
}
+ protected static short evaluateMaxFragmentLengthExtension(Hashtable clientExtensions, Hashtable serverExtensions,
+ short alertDescription) throws IOException
+ {
+ short maxFragmentLength = TlsExtensionsUtils.getMaxFragmentLengthExtension(serverExtensions);
+ if (maxFragmentLength >= 0 && maxFragmentLength != TlsExtensionsUtils.getMaxFragmentLengthExtension(clientExtensions))
+ {
+ throw new TlsFatalAlert(alertDescription);
+ }
+ return maxFragmentLength;
+ }
+
protected static byte[] generateCertificate(Certificate certificate)
throws IOException
{