Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(296)

Unified Diff: java/src/org/apache/tomcat/jni/SSLExt.java

Issue 2842333002: Updated netty-tcnative to version 2.0.0.Final (Closed)
Patch Set: Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « java/src/org/apache/tomcat/jni/SSLContext.java ('k') | java/src/org/apache/tomcat/jni/SSLSocket.java » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: java/src/org/apache/tomcat/jni/SSLExt.java
diff --git a/java/src/org/apache/tomcat/jni/SSLExt.java b/java/src/org/apache/tomcat/jni/SSLExt.java
deleted file mode 100644
index e794de08b8888c7660c2928840b3122c9d6b57bc..0000000000000000000000000000000000000000
--- a/java/src/org/apache/tomcat/jni/SSLExt.java
+++ /dev/null
@@ -1,159 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.tomcat.jni;
-
-/**
- * Support TLS extensions and extra methods.
- *
- * The methods are separated to make it easier for java code to
- * support existing native library - it can check if this class can
- * be loaded in order to use the exensions.
- *
- * @author Costin Manolache
- */
-public final class SSLExt {
-
-
- /**
- * Set advertised NPN protocol.
- * This is only available for recent or patched openssl.
- *
- * Example: "\x06spdy/2"
- *
- * Works with TLS1, doesn't with SSL2/SSL3
- *
- * Servers sends list in ServerHelo, client selects it and
- * sends it back after ChangeChipher
- *
- * Not supported in 1.0.0, seems to be in 1.0.1 and after
- */
- public static native int setNPN(long tcctx, byte[] proto, int len);
-
- /**
- * Get other side's advertised protocols.
- * Only works after handshake.
- */
- public static native int getNPN(long tcsock, byte[] proto);
-
- /**
- * Enabling dump/debugging on the socket. Both raw and decrypted
- * packets will be logged.
- */
- public static native int debug(long tcsock);
-
- /**
- * Server: Extract the session data associated with the socket.
- * Must be saved, keyed by session ID.
- */
- public static native byte[] getSessionData(long tcsock);
-
- /**
- * Server: Set the session data for a socket.
- */
- public static native int setSessionData(long tcsock, byte[] data, int len);
-
-
- /**
- * Client: get the ticket received from server, if tickets are supported.
- */
- public static native int getTicket(long tcsock, byte[] resBuf);
-
- /**
- * Client: set the previously received ticket.
- */
- public static native int setTicket(long tcsock, byte[] data, int len);
-
- /**
- * Set the key used by server to generate tickets.
- * Key must be 48 bytes.
- */
- public static native int setTicketKeys(long ctx, byte[] data, int len);
-
- /**
- * For client side calls. Data should be a \0 terminated string
- */
- public static native int setSNI(long tcsock, byte[] data, int len);
-
- /**
- * Return the last openssl error
- */
- public static native String sslErrReasonErrorString();
-
- public static native long sslCtxSetMode(long ctx, long mode);
-
- /* Allow SSL_write(..., n) to return r with 0 < r < n (i.e. report success
- * when just a single record has been written): */
- public static final int SSL_MODE_ENABLE_PARTIAL_WRITE = 0x1;
-
- /* Make it possible to retry SSL_write() with changed buffer location
- * (buffer contents must stay the same!); this is not the default to avoid
- * the misconception that non-blocking SSL_write() behaves like
- * non-blocking write(): */
- public static final int SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER = 0x2;
-
- /* Don't attempt to automatically build certificate chain */
- static final int SSL_MODE_NO_AUTO_CHAIN = 0x8;
-
- /* Save RAM by releasing read and write buffers when they're empty. (SSL3 and
- * TLS only.) "Released" buffers are put onto a free-list in the context
- * or just freed (depending on the context's setting for freelist_max_len). */
- public static final int SSL_MODE_RELEASE_BUFFERS = 0x10;
-
- // 1.1
- //static final int SSL_MODE_HANDSHAKE_CUTTHROUGH = ..;
-
- /**
- * SSL_set_mode
- */
- public static native long sslSetMode(long tcsock, long mode);
-
- public static int setNPN(long sslContext, byte[] spdyNPN) {
- try {
- return SSLExt.setNPN(sslContext, spdyNPN, spdyNPN.length);
- } catch (Throwable t) {
- t.printStackTrace();
- return -1;
- }
- }
-
- /**
- * Higher level method, checking if the specified protocol has been
- * negotiated.
- */
- public static boolean checkNPN(long tcsocket, byte[] expected) {
- byte[] npn = new byte[expected.length + 1];
- int npnLen = 0;
- try {
- npnLen = SSLExt.getNPN(tcsocket, npn);
- if (npnLen != expected.length) {
- return false;
- }
- } catch (Throwable t) {
- // ignore
- return false;
- }
- for (int i = 0; i < expected.length; i++) {
- if (expected[i] != npn[i]) {
- return false;
- }
- }
- return true;
- }
-
-
-
-}
« no previous file with comments | « java/src/org/apache/tomcat/jni/SSLContext.java ('k') | java/src/org/apache/tomcat/jni/SSLSocket.java » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698