object impl
- Source
- SSLEngine.scala
- Alphabetic
- By Inheritance
- impl
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- val EmptyBytes: Chunk[Byte]
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
buffer2Bytes(buffer: ByteBuffer): Chunk[Byte]
Supplied buffer is consumed to produce bytes.
Supplied buffer is consumed to produce bytes.
It is expected that buffer is in write-ready state.
Buffer is cleared to be fresh to receive new output data
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
fillBuffer(bytes: Chunk[Byte], buffer: ByteBuffer): ByteBuffer
With supplied bytes fill the supplied buffer.
With supplied bytes fill the supplied buffer. Note that this may create new buffer, if supplied buffer is not able to hold bytes supplied.
This expected supplied buffer to be in write-ready state, while resulting buffer is in read-ready state
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
-
def
resizeBufferW(buffer: ByteBuffer, desired: Int): ByteBuffer
Creates new buffer of
desired
size.Creates new buffer of
desired
size. Resulting buffer is ready to be written at full capacity. All data in buffer are lost- buffer
Buffer to resize, potentially with some data
- desired
Desired size of new buffer
-
def
runTasks[F[_]](engine: javax.net.ssl.SSLEngine)(implicit F: Async[F], S: Strategy): F[Unit]
runs all available tasks , retruning when tasks has been finished *
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
def
unwrap[F[_]](engine: javax.net.ssl.SSLEngine, bytes: Chunk[Byte], buffers: Ref[F, (ByteBuffer, ByteBuffer)])(implicit F: Async[F], S: Strategy): F[Result]
Perform
un-wrap
operation on engine.Perform
un-wrap
operation on engine.Note that apart of performing the un-wrap, this handles following:
- acquires un-wrap lock - if the un-wrap resulted in NEED_TASK, then tha task i executed with supplied
S
strategy - If the buffer UNDERFLOW is returned then we memoize the bytes with signal received and request for more bytes to input - If the buffer OVERFLOWAs the last operation this releases the acquired lock to prevent concurrent unwraps to be executed simultaneously.
- engine
SSL Engine this operates on
- bytes
Bytes to wrap
- buffers
Contains reference to active buffers used to perform I/O. The first buffer is buffer with encrypted data. Second buffer is buffer with decrypted data. Second buffer is always empty, when this finishes, while first buffer may contain data to be used at next invocation of unwrap.
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
wrap[F[_]](engine: javax.net.ssl.SSLEngine, bytes: Chunk[Byte], buffers: Ref[F, (ByteBuffer, ByteBuffer)])(implicit F: Async[F], S: Strategy): F[Result]
Perform
wrap
operation on engine.Perform
wrap
operation on engine.Note that apart of performing the wrap, this handles following:
- acquires wrap lock - if the wrap resulted in NEED_TASK, then tha task i executed with supplied
S
strategy - If the buffer UNDER/OVERFLOW is signalled new destination buffer is allocated and returnedAs the last operation this releases the acquired wrap lock, to prevent two concurrent wraps to be executed.
- engine
SSL Engine this operates on
- bytes
Bytes to wrap
- buffers
Contains reference to active buffers used to perform I/O. The first buffer is buffer with application data. Second buffer is buffer with encrypted data. Second buffer is always empty, when this finishes, while first buffer may contain data to be used at next invocation of wrap.
-
def
wrapUnwrap[F[_]](engine: javax.net.ssl.SSLEngine, bytes: Chunk[Byte], buffers: Ref[F, (ByteBuffer, ByteBuffer)])(op: impl.EngineOpName.Value)(implicit F: Async[F], S: Strategy): F[Result]
helper to perform wrap/unwrap *
- object EngineOpName extends Enumeration