SSLEngine.Unwrap Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Überlädt
| Name | Beschreibung |
|---|---|
| Unwrap(ByteBuffer, ByteBuffer) |
Versucht, SSL/TLS-Netzwerkdaten in einen Nur-Text-Anwendungsdatenpuffer zu decodieren. |
| Unwrap(ByteBuffer, ByteBuffer[]) |
Versucht, SSL/TLS-Netzwerkdaten in eine Sequenz von Nur-Text-Anwendungsdatenpuffern zu decodieren. |
| Unwrap(ByteBuffer, ByteBuffer[], Int32, Int32) |
Versucht, SSL/TLS-Netzwerkdaten in eine Unterteilung von Nur-Text-Anwendungsdatenpuffern zu decodieren. |
Unwrap(ByteBuffer, ByteBuffer)
Versucht, SSL/TLS-Netzwerkdaten in einen Nur-Text-Anwendungsdatenpuffer zu decodieren.
[Android.Runtime.Register("unwrap", "(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;", "GetUnwrap_Ljava_nio_ByteBuffer_Ljava_nio_ByteBuffer_Handler")]
public virtual Javax.Net.Ssl.SSLEngineResult? Unwrap(Java.Nio.ByteBuffer? src, Java.Nio.ByteBuffer? dst);
[<Android.Runtime.Register("unwrap", "(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;", "GetUnwrap_Ljava_nio_ByteBuffer_Ljava_nio_ByteBuffer_Handler")>]
abstract member Unwrap : Java.Nio.ByteBuffer * Java.Nio.ByteBuffer -> Javax.Net.Ssl.SSLEngineResult
override this.Unwrap : Java.Nio.ByteBuffer * Java.Nio.ByteBuffer -> Javax.Net.Ssl.SSLEngineResult
Parameter
- src
- ByteBuffer
ein ByteBuffer enthaltende eingehende Netzwerkdaten.
- dst
- ByteBuffer
ein ByteBuffer , um eingehende Anwendungsdaten zu enthalten.
Gibt zurück
ein SSLEngineResult Beschreiben des Ergebnisses dieses Vorgangs.
- Attribute
Ausnahmen
wenn beim Verarbeiten der Daten ein Problem aufgetreten ist.
wenn einer der Zielpuffer schreibgeschützt ist.
wenn src oder dst ist null.
wenn das Modul nicht über alle erforderlichen Einstellungen verfügt (z. B. Client-/Servermodus nicht festgelegt).
Hinweise
Versucht, SSL/TLS-Netzwerkdaten in einen Nur-Text-Anwendungsdatenpuffer zu decodieren.
Ein Aufruf dieser Methode verhält sich genauso wie der Aufruf: <blockquote>
{@link #unwrap(ByteBuffer, ByteBuffer [], int, int)
engine.unwrap(src, new ByteBuffer [] { dst }, 0, 1);}
</blockquote>
Java Dokumentation für javax.net.ssl.SSLEngine.unwrap(java.nio.ByteBuffer, java.nio.ByteBuffer).
Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.
Gilt für:
Unwrap(ByteBuffer, ByteBuffer[])
Versucht, SSL/TLS-Netzwerkdaten in eine Sequenz von Nur-Text-Anwendungsdatenpuffern zu decodieren.
[Android.Runtime.Register("unwrap", "(Ljava/nio/ByteBuffer;[Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;", "GetUnwrap_Ljava_nio_ByteBuffer_arrayLjava_nio_ByteBuffer_Handler")]
public virtual Javax.Net.Ssl.SSLEngineResult? Unwrap(Java.Nio.ByteBuffer? src, Java.Nio.ByteBuffer[]? dsts);
[<Android.Runtime.Register("unwrap", "(Ljava/nio/ByteBuffer;[Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;", "GetUnwrap_Ljava_nio_ByteBuffer_arrayLjava_nio_ByteBuffer_Handler")>]
abstract member Unwrap : Java.Nio.ByteBuffer * Java.Nio.ByteBuffer[] -> Javax.Net.Ssl.SSLEngineResult
override this.Unwrap : Java.Nio.ByteBuffer * Java.Nio.ByteBuffer[] -> Javax.Net.Ssl.SSLEngineResult
Parameter
- src
- ByteBuffer
ein ByteBuffer enthaltende eingehende Netzwerkdaten.
- dsts
- ByteBuffer[]
ein Array von ByteBuffers, das eingehende Anwendungsdaten enthält.
Gibt zurück
ein SSLEngineResult Beschreiben des Ergebnisses dieses Vorgangs.
- Attribute
Ausnahmen
wenn beim Verarbeiten der Daten ein Problem aufgetreten ist.
wenn einer der Zielpuffer schreibgeschützt ist.
wenn src oder dsts ist null.
wenn das Modul nicht über alle erforderlichen Einstellungen verfügt (z. B. Client-/Servermodus nicht festgelegt).
Hinweise
Versucht, SSL/TLS-Netzwerkdaten in eine Sequenz von Nur-Text-Anwendungsdatenpuffern zu decodieren.
Ein Aufruf dieser Methode verhält sich genauso wie der Aufruf: <blockquote>
{@link #unwrap(ByteBuffer, ByteBuffer [], int, int)
engine.unwrap(src, dsts, 0, dsts.length);}
</blockquote>
Java Dokumentation für javax.net.ssl.SSLEngine.unwrap(java.nio.ByteBuffer, java.nio.ByteBuffer[]).
Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.
Gilt für:
Unwrap(ByteBuffer, ByteBuffer[], Int32, Int32)
Versucht, SSL/TLS-Netzwerkdaten in eine Unterteilung von Nur-Text-Anwendungsdatenpuffern zu decodieren.
[Android.Runtime.Register("unwrap", "(Ljava/nio/ByteBuffer;[Ljava/nio/ByteBuffer;II)Ljavax/net/ssl/SSLEngineResult;", "GetUnwrap_Ljava_nio_ByteBuffer_arrayLjava_nio_ByteBuffer_IIHandler")]
public abstract Javax.Net.Ssl.SSLEngineResult? Unwrap(Java.Nio.ByteBuffer? src, Java.Nio.ByteBuffer[]? dsts, int offset, int length);
[<Android.Runtime.Register("unwrap", "(Ljava/nio/ByteBuffer;[Ljava/nio/ByteBuffer;II)Ljavax/net/ssl/SSLEngineResult;", "GetUnwrap_Ljava_nio_ByteBuffer_arrayLjava_nio_ByteBuffer_IIHandler")>]
abstract member Unwrap : Java.Nio.ByteBuffer * Java.Nio.ByteBuffer[] * int * int -> Javax.Net.Ssl.SSLEngineResult
Parameter
- src
- ByteBuffer
ein ByteBuffer enthaltende eingehende Netzwerkdaten.
- dsts
- ByteBuffer[]
ein Array von ByteBuffers, das eingehende Anwendungsdaten enthält.
- offset
- Int32
Der Offset innerhalb des Pufferarrays des ersten Puffers, aus dem Bytes übertragen werden sollen; es darf nicht negativ und nicht größer als dsts.lengthsein.
- length
- Int32
Die maximale Anzahl von Puffern, auf die zugegriffen werden soll; es darf nicht negativ und nicht größer als dsts.length - offset sein.
Gibt zurück
ein SSLEngineResult Beschreiben des Ergebnisses dieses Vorgangs.
- Attribute
Ausnahmen
wenn beim Verarbeiten der Daten ein Problem aufgetreten ist.
wenn length größer als dsts.length - offset.
wenn einer der Zielpuffer schreibgeschützt ist.
wenn src, dsts, oder einer der Einträge in dsts ist .null
wenn das Modul nicht über alle erforderlichen Einstellungen verfügt (z. B. Client-/Servermodus nicht festgelegt).
Hinweise
Versucht, SSL/TLS-Netzwerkdaten in eine Unterteilung von Nur-Text-Anwendungsdatenpuffern zu decodieren. Dieser "Punktierungsvorgang" decodiert in einem einzelnen Aufruf eine Folge von Bytes in eine oder mehrere einer bestimmten Sequenz von Puffern. Die Streuung von Unwraps ist häufig hilfreich, wenn Netzwerkprotokolle oder Dateiformate implementiert werden, die z. B. Daten in Segmente gruppieren, die aus einer oder mehreren Headern mit fester Länge bestehen, gefolgt von einem Textkörper mit variabler Länge. Weitere Informationen zum Punktieren und java.nio.channels.ScatteringByteChannel#read(ByteBuffer[], int, int) weitere Informationen zum Subsequence-Verhalten finden Sie java.nio.channels.ScatteringByteChannel unter .
Abhängig vom Status der SSLEngine kann diese Methode Netzwerkdaten nutzen, ohne Anwendungsdaten zu erzeugen (z. B. kann es Handshake-Daten verbrauchen.)
Die Anwendung ist dafür verantwortlich, die Netzwerkdaten zuverlässig vom Peer zu erhalten, und für das Aufrufen von Unwrap() für die Daten in der Reihenfolge, in der sie empfangen wurde. Die Anwendung muss mehrere Aufrufe dieser Methode ordnungsgemäß synchronisieren.
Wenn dies SSLEngine noch nicht den ersten Handshake gestartet hat, startet diese Methode automatisch den Handshake.
Diese Methode versucht, ein vollständiges SSL/TLS-Netzwerkpaket zu verbrauchen, verbraucht jedoch nie mehr als die Summe der in den Puffern verbleibenden Bytes. Jede ByteBufferPosition wird aktualisiert, um die Menge der verbrauchten oder produzierten Daten widerzuspiegeln. Die Grenzwerte bleiben unverändert.
Der zugrunde liegende Arbeitsspeicher, der von den src und dsts ByteBufferden n verwendet wird, darf nicht identisch sein.
Der eingehende Netzwerkpuffer kann aufgrund dieses Aufrufs geändert werden: Wenn das Netzwerkdatenpaket für einen bestimmten sekundären Zweck erforderlich ist, sollten die Daten vor dem Aufrufen dieser Methode dupliziert werden. Hinweis: Die Netzwerkdaten sind für eine zweite SSLEngine nicht nützlich, da jede SSLEngine einen eindeutigen Zufallszustand enthält, der die SSL/TLS-Nachrichten beeinflusst.
Weitere Informationen zum Schließen des Moduls finden Sie in der Klassenbeschreibung.
Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.