@Override public ByteBuffer getByteBuffer() { return ((WorkerThread) Thread.currentThread()).getInputBB(); } }
@Override public ByteBuffer getByteBuffer() { return ((WorkerThread) Thread.currentThread()).getInputBB(); } }
public ByteBuffer getByteBuffer() { final WorkerThread workerThread = (WorkerThread) Thread.currentThread(); if (workerThread.getSSLEngine() != null) { return workerThread.getInputBB(); } return null; } });
public ByteBuffer getSecuredInputByteBuffer() { return workerThread().getInputBB(); }
public ByteBuffer getSecuredInputByteBuffer() { return workerThread().getInputBB(); }
/** * Read and decrypt bytes from the underlying SSL connections. All * the SSLEngine operations are delegated to class {@link SSLUtils}. * @return number of bytes read * @throws java.io.IOException */ protected int doSecureRead() throws IOException{ final WorkerThread workerThread = (WorkerThread)Thread.currentThread(); int bytesRead = SSLUtils.doSecureRead((SocketChannel) key.channel(), workerThread.getSSLEngine(), byteBuffer, workerThread.getInputBB()); byteBuffer.flip(); return bytesRead; }
/** * Read and decrypt bytes from the underlying SSL connections. All * the SSLEngine operations are delegated to class {@link SSLUtils}. * @return number of bytes read * @throws java.io.IOException */ protected int doSecureRead() throws IOException{ final WorkerThread workerThread = (WorkerThread)Thread.currentThread(); int bytesRead = SSLUtils.doSecureRead((SocketChannel) key.channel(), workerThread.getSSLEngine(), byteBuffer, workerThread.getInputBB()); byteBuffer.flip(); return bytesRead; }
/** * Returns <code>ByteBuffer</code>, where PUReadFilter will read data * * @return <code>ByteBuffer</code> */ @Override public ByteBuffer getByteBuffer() { final WorkerThread workerThread = (WorkerThread) Thread.currentThread(); final SSLEngine sslEngine = workerThread.getSSLEngine(); if (sslEngine != null) { ByteBuffer secureInputBuffer = workerThread.getInputBB(); if (secureInputBuffer == null) { final int securedBBSize = sslEngine.getSession().getPacketBufferSize(); secureInputBuffer = ByteBuffer.allocate(securedBBSize * 2); workerThread.setInputBB(secureInputBuffer); } return secureInputBuffer; } return null; } }
ByteBuffer byteBuffer = workerThread.getByteBuffer(); ByteBuffer outputBB = workerThread.getOutputBB(); ByteBuffer inputBB = workerThread.getInputBB();
ByteBuffer byteBuffer = workerThread.getByteBuffer(); ByteBuffer outputBB = workerThread.getOutputBB(); ByteBuffer inputBB = workerThread.getInputBB();
ByteBuffer byteBuffer = workerThread.getByteBuffer(); ByteBuffer outputBB = workerThread.getOutputBB(); ByteBuffer inputBB = workerThread.getInputBB();
/** * Get the peer certificate list by initiating a new handshake. * @param key {@link SelectionKey} * @param needClientAuth * @return Object[] An array of X509Certificate. * @throws java.io.IOException */ public static Object[] doPeerCertificateChain(SelectionKey key, boolean needClientAuth) throws IOException { final WorkerThread workerThread = (WorkerThread)Thread.currentThread(); ByteBuffer byteBuffer = workerThread.getByteBuffer(); ByteBuffer inputBB = workerThread.getInputBB(); ByteBuffer outputBB = workerThread.getOutputBB(); SSLEngine sslEngine = workerThread.getSSLEngine(); return SSLUtils.doPeerCertificateChain((SocketChannel) key.channel(), byteBuffer, inputBB, outputBB, sslEngine, needClientAuth, InputReader.getDefaultReadTimeout()); }
final ByteBuffer securedBuffer = thread.getInputBB(); if (securedBuffer.position() > 0) { final int initialPosition = byteBuffer.position();
ByteBuffer byteBuffer = workerThread.getByteBuffer(); ByteBuffer outputBB = workerThread.getOutputBB(); ByteBuffer inputBB = workerThread.getInputBB(); SSLEngine sslEngine = workerThread.getSSLEngine();
ByteBuffer byteBuffer = workerThread.getByteBuffer(); ByteBuffer outputBB = workerThread.getOutputBB(); ByteBuffer inputBB = workerThread.getInputBB(); SSLEngine sslEngine = workerThread.getSSLEngine();
private void saveSecuredBufferRemainders(SelectionKey selectionKey) { ThreadAttachment attachment = (ThreadAttachment) selectionKey.attachment(); WorkerThread workerThread = (WorkerThread) Thread.currentThread(); if (attachment == null || workerThread.getAttachment() != attachment) { Controller.logger().log(Level.FINE, "SelectionKey ThreadAttachment is NULL or doesn't " + "correspond to the current thread, when saving buffers"); return; } ByteBuffer inputBB = workerThread.getInputBB(); if (inputBB != null && inputBB.hasRemaining()) { workerThread.updateAttachment(attachment.getMode() | Mode.INPUT_BB); } else { workerThread.updateAttachment(attachment.getMode() & (Integer.MAX_VALUE ^ Mode.INPUT_BB)); } ByteBuffer outputBB = workerThread.getOutputBB(); if (outputBB != null && outputBB.hasRemaining()) { workerThread.updateAttachment(attachment.getMode() | Mode.OUTPUT_BB); } else { workerThread.updateAttachment(attachment.getMode() & (Integer.MAX_VALUE ^ Mode.OUTPUT_BB)); } }