Spec-Zone.ru › OpenJDK 21

Класс SSLEngineResult

java.lang.Object
javax.net.ssl.SSLEngineResult
public class SSLEngineResult extends Object
Оборачивает состояние результата, полученного в результате SSLEngine вызовов ВВОД/ВЫВОД.

SSLEngine предоставляет способ установления защищённых сеансов связи между двумя узлами. SSLEngine операции обычно потребляют байты из входного буфера и производят байты в выходном буфере. Этот класс предоставляет значения результата операции, описывающие состояние SSLEngine, включая указания о необходимых операциях для завершения текущего рукопожатия. Наконец, он сообщает количество потребленных и произведённых байтов в результате этой операции.

Since:
1.5
См. также:
  • SSLEngine
  • SSLEngine.wrap(ByteBuffer, ByteBuffer)
  • SSLEngine.unwrap(ByteBuffer, ByteBuffer)

Краткое описание вложенных классов

Модификатор и тип Класс Описание
static enum  SSLEngineResult.HandshakeStatus
Перечисление SSLEngineResult, описывающее текущее состояние рукопожатия этого SSLEngine.
static enum  SSLEngineResult.Status
Перечисление SSLEngineResult, описывающее общий результат SSLEngine операции.

Краткое описание конструкторов

Конструктор Описание
SSLEngineResult(SSLEngineResult.Status status, SSLEngineResult.HandshakeStatus handshakeStatus, int bytesConsumed, int bytesProduced)
Инициализирует новый экземпляр этого класса.
SSLEngineResult(SSLEngineResult.Status status, SSLEngineResult.HandshakeStatus handshakeStatus, int bytesConsumed, int bytesProduced, long sequenceNumber)
Инициализирует новый экземпляр этого класса.

Краткое описание методов

Модификатор и тип Метод Описание
final int bytesConsumed()
Возвращает количество байтов, потреблённых из входного буфера.
final int bytesProduced()
Возвращает количество байтов, записанных в выходной буфер.
final SSLEngineResult.HandshakeStatus getHandshakeStatus()
Возвращает статус рукопожатия для данной SSLEngine операции.
final SSLEngineResult.Status getStatus()
Возвращает результат данной SSLEngine операции.
final long sequenceNumber()
Возвращает номер последовательности произведённого или потреблённого SSL/TLS/DTLS-записи (необязательная операция).
String toString()
Возвращает строковое представление этого объекта.

Методы, унаследованные от класса java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Подробное описание конструкторов

SSLEngineResult

public SSLEngineResult(SSLEngineResult.Status status, SSLEngineResult.HandshakeStatus handshakeStatus, int bytesConsumed, int bytesProduced)
Инициализирует новый экземпляр этого класса.
Параметры:
status - результат операции.
handshakeStatus - текущий статус рукопожатия.
bytesConsumed - количество байтов, потреблённых из исходного ByteBuffer
bytesProduced - количество байтов, размещённых в целевом ByteBuffer
Исключения:
IllegalArgumentException - если аргументы status или handshakeStatus равны null, или если bytesConsumed или bytesProduced отрицательны.

SSLEngineResult

public SSLEngineResult(SSLEngineResult.Status status, SSLEngineResult.HandshakeStatus handshakeStatus, int bytesConsumed, int bytesProduced, long sequenceNumber)
Инициализирует новый экземпляр этого класса.
Параметры:
status - результат операции.
handshakeStatus - текущий статус рукопожатия.
bytesConsumed - количество байтов, потреблённых из исходного ByteBuffer
bytesProduced - количество байтов, размещённых в целевом ByteBuffer
sequenceNumber - номер последовательности (unsigned long) произведённой или потреблённой SSL/TLS/DTLS записи, или -1L если запись не производилась или не потреблялась
Исключения:
IllegalArgumentException - если аргументы status или handshakeStatus равны null, или если bytesConsumed или bytesProduced отрицательны
Since:
9

Подробное описание методов

getStatus

public final SSLEngineResult.Status getStatus()
Возвращает результат данной SSLEngine операции.
Возвращает:
результат

getHandshakeStatus

public final SSLEngineResult.HandshakeStatus getHandshakeStatus()
Возвращает статус рукопожатия для данной SSLEngine операции.
Возвращает:
статус рукопожатия

bytesConsumed

public final int bytesConsumed()
Возвращает количество байтов, потреблённых из входного буфера.
Возвращает:
количество потреблённых байтов.

bytesProduced

public final int bytesProduced()
Возвращает количество байтов, записанных в выходной буфер.
Возвращает:
количество произведённых байтов

sequenceNumber

public final long sequenceNumber()
Возвращает номер последовательности произведённой или потреблённой SSL/TLS/DTLS записи (необязательная операция).
Примечание API:
Обратите внимание, что номер последовательности является unsigned long и не может превышать -1L. Желательно использовать unsigned long сравнение для сравнения unsigned long значений (см. также Long.compareUnsigned()).

Для протоколов DTLS первые 16 бит номера последовательности представляют счётчик (эпоху), который увеличивается при каждом изменении состояния шифра. Оставшиеся 48 бит справа от номера последовательности представляют последовательность записи, которая поддерживается отдельно для каждой эпохи.

Примечание реализации:
Рекомендуется, чтобы поставщики никогда не допускали увеличения номера последовательности до -1L. Если номер последовательности близок к переполнению, следует запросить переподключение, в противном случае соединение должно быть немедленно закрыто. Это должно автоматически выполняться базовой реализацией.
Возвращает:
номер последовательности произведённой или потреблённой SSL/TLS/DTLS записи; или -1L если запись не производилась или не потреблялась, или данная операция не поддерживается базовым поставщиком
Since:
9
См. также:
  • Long.compareUnsigned(long, long)

toString

public String toString()
Возвращает строковое представление этого объекта.
Переопределяет:
toString в классе Object
Возвращает:
строковое представление объекта.

© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.base/javax/net/ssl/SSLEngineResult.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API