131 references to TlsOperationStatus
System.Net.Security (131)
System\Net\Security\TlsBufferSession.cs (7)
21
/// <see cref="
TlsOperationStatus
.NeedsTlsContext"/> so the caller can supply the
36
public
TlsOperationStatus
Handshake(ReadOnlySpan<byte> source, Span<byte> destination, out int bytesConsumed, out int bytesWritten)
47
public
TlsOperationStatus
Write(ReadOnlySpan<byte> source, Span<byte> destination, out int bytesConsumed, out int bytesWritten)
58
public
TlsOperationStatus
Read(ReadOnlySpan<byte> source, Span<byte> destination, out int bytesConsumed, out int bytesWritten)
66
public
TlsOperationStatus
Shutdown(Span<byte> destination, out int bytesWritten)
74
public
TlsOperationStatus
DrainPendingOutput(Span<byte> destination, out int bytesWritten)
84
public
TlsOperationStatus
RequestClientCertificate(Span<byte> destination, out int bytesWritten)
System\Net\Security\TlsContext.cs (2)
109
/// <see cref="
TlsOperationStatus
.NeedsTlsContext"/> with
146
/// returns <see cref="
TlsOperationStatus
.NeedsCertificateValidation"/> and the caller
System\Net\Security\TlsSession.cs (101)
41
/// Contract: any operation may return <see cref="
TlsOperationStatus
.DestinationTooSmall"/>
304
/// <see cref="
TlsOperationStatus
.NeedsCertificateValidation"/>). The certificates are
324
/// <see cref="
TlsOperationStatus
.NeedsCertificateValidation"/> and before
401
/// <see cref="
TlsOperationStatus
.NeedsCertificateValidation"/> and the next
598
/// session that suspended with <see cref="
TlsOperationStatus
.NeedsTlsContext"/>
605
/// <see cref="
TlsOperationStatus
.NeedsTlsContext"/> and the passed context is
682
/// <see cref="
TlsOperationStatus
.CertificateRequested"/>: callers that need to
719
/// is suspended on <see cref="
TlsOperationStatus
.CertificateRequested"/> so the caller can
814
private protected
TlsOperationStatus
HandshakeBufferedCore(
842
return
TlsOperationStatus
.NeedsCertificateValidation;
848
return
TlsOperationStatus
.NeedsTlsContext;
858
return
TlsOperationStatus
.Complete;
868
return _pendingBuffer.ActiveLength > 0 ?
TlsOperationStatus
.DestinationTooSmall :
TlsOperationStatus
.Complete;
890
return
TlsOperationStatus
.NeedMoreData;
901
return
TlsOperationStatus
.NeedMoreData;
938
return
TlsOperationStatus
.NeedMoreData;
952
return
TlsOperationStatus
.NeedsTlsContext;
963
return
TlsOperationStatus
.NeedMoreData;
1072
return
TlsOperationStatus
.DestinationTooSmall;
1100
return
TlsOperationStatus
.DestinationTooSmall;
1107
?
TlsOperationStatus
.NeedsCertificateValidation
1108
:
TlsOperationStatus
.Complete;
1113
return
TlsOperationStatus
.NeedsCertificateValidation;
1118
return
TlsOperationStatus
.CertificateRequested;
1130
return
TlsOperationStatus
.Complete;
1133
return
TlsOperationStatus
.NeedMoreData;
1141
private protected
TlsOperationStatus
WriteBufferedCore(
1160
return _pendingBuffer.ActiveLength > 0 ?
TlsOperationStatus
.DestinationTooSmall :
TlsOperationStatus
.Complete;
1165
return
TlsOperationStatus
.Complete;
1206
return _pendingBuffer.ActiveLength > 0 ?
TlsOperationStatus
.DestinationTooSmall :
TlsOperationStatus
.Complete;
1211
private protected
TlsOperationStatus
ReadBufferedCore(
1230
return
TlsOperationStatus
.DestinationTooSmall;
1291
return
TlsOperationStatus
.Complete;
1296
return
TlsOperationStatus
.Closed;
1316
return
TlsOperationStatus
.Complete;
1331
private
TlsOperationStatus
TryDrainBufferedPlaintext(Span<byte> plaintext, out int bytesWritten)
1337
return
TlsOperationStatus
.NeedMoreData;
1353
return
TlsOperationStatus
.NeedMoreData;
1359
return
TlsOperationStatus
.NeedMoreData;
1378
return
TlsOperationStatus
.Complete;
1400
private protected
TlsOperationStatus
RequestClientCertificateBufferedCore(Span<byte> ciphertext, out int bytesWritten)
1446
return _pendingBuffer.ActiveLength > 0 ?
TlsOperationStatus
.DestinationTooSmall :
TlsOperationStatus
.Complete;
1460
/// Returns <see cref="
TlsOperationStatus
.DestinationTooSmall"/> if the caller must
1462
/// otherwise <see cref="
TlsOperationStatus
.Closed"/> once all bytes have
1465
private protected
TlsOperationStatus
ShutdownBufferedCore(Span<byte> ciphertext, out int bytesWritten)
1472
return
TlsOperationStatus
.Closed;
1526
return _pendingBuffer.ActiveLength > 0 ?
TlsOperationStatus
.DestinationTooSmall :
TlsOperationStatus
.Closed;
1531
private protected
TlsOperationStatus
DrainPendingOutputCore(Span<byte> ciphertext, out int bytesWritten)
1535
return _pendingBuffer.ActiveLength > 0 ?
TlsOperationStatus
.DestinationTooSmall :
TlsOperationStatus
.Complete;
1930
private protected
TlsOperationStatus
HandshakeSocketCore()
1938
return
TlsOperationStatus
.Complete;
1941
TlsOperationStatus
? fast = null;
1966
return
TlsOperationStatus
.DestinationTooSmall;
1972
TlsOperationStatus
status = HandshakeBufferedCore(
2001
return
TlsOperationStatus
.DestinationTooSmall;
2009
case
TlsOperationStatus
.Complete:
2010
return
TlsOperationStatus
.Complete;
2012
case
TlsOperationStatus
.NeedMoreData:
2026
return
TlsOperationStatus
.NeedMoreData;
2030
return
TlsOperationStatus
.Closed;
2034
case
TlsOperationStatus
.DestinationTooSmall:
2049
private protected
TlsOperationStatus
ReadSocketCore(Span<byte> buffer, out int bytesRead)
2060
TlsOperationStatus
? fast = null;
2073
TlsOperationStatus
status = ReadBufferedCore(
2086
if (status ==
TlsOperationStatus
.Complete && produced > 0)
2088
return
TlsOperationStatus
.Complete;
2090
if (status ==
TlsOperationStatus
.Closed)
2092
return
TlsOperationStatus
.Closed;
2094
if (status ==
TlsOperationStatus
.Complete && produced == 0)
2099
if (status !=
TlsOperationStatus
.NeedMoreData)
2118
return
TlsOperationStatus
.NeedMoreData;
2122
return
TlsOperationStatus
.Closed;
2128
private protected
TlsOperationStatus
WriteSocketCore(ReadOnlySpan<byte> buffer, out int bytesWritten)
2139
TlsOperationStatus
? fast = null;
2153
return
TlsOperationStatus
.DestinationTooSmall;
2161
return
TlsOperationStatus
.Complete;
2170
TlsOperationStatus
encStatus = WriteBufferedCore(
2196
return
TlsOperationStatus
.DestinationTooSmall;
2202
if (encStatus ==
TlsOperationStatus
.DestinationTooSmall)
2206
return
TlsOperationStatus
.DestinationTooSmall;
2208
if (encStatus !=
TlsOperationStatus
.Complete)
2221
return
TlsOperationStatus
.Complete;
2231
private
TlsOperationStatus
DriveBufferedOpOverSocket(Func<Span<byte>, (
TlsOperationStatus
status, int written)> op)
2243
return
TlsOperationStatus
.DestinationTooSmall;
2252
(
TlsOperationStatus
status, int written) = op(scratch);
2270
return
TlsOperationStatus
.DestinationTooSmall;
2283
private protected
TlsOperationStatus
ShutdownSocketCore()
2286
TlsOperationStatus
s = ShutdownBufferedCore(dest, out int w);
2290
private protected
TlsOperationStatus
RequestClientCertificateSocketCore()
2293
TlsOperationStatus
s = RequestClientCertificateBufferedCore(dest, out int w);
2302
partial void TryFastHandshake(ref
TlsOperationStatus
? result);
2303
partial void TryPeekClientHello(ref
TlsOperationStatus
? result);
2304
partial void TryFastRead(Span<byte> buffer, ref int bytesRead, ref
TlsOperationStatus
? result);
2305
partial void TryFastWrite(ReadOnlySpan<byte> buffer, ref int bytesWritten, ref
TlsOperationStatus
? result);
System\Net\Security\TlsSession.OpenSsl.cs (16)
112
partial void TryPeekClientHello(ref
TlsOperationStatus
? result)
124
result =
TlsOperationStatus
.NeedsTlsContext;
145
result =
TlsOperationStatus
.NeedMoreData;
173
result =
TlsOperationStatus
.NeedsTlsContext;
217
partial void TryFastHandshake(ref
TlsOperationStatus
? result)
229
result =
TlsOperationStatus
.Complete;
235
partial void TryFastRead(Span<byte> buffer, ref int bytesRead, ref
TlsOperationStatus
? result)
244
result =
TlsOperationStatus
.Complete;
253
result =
TlsOperationStatus
.Complete;
259
partial void TryFastWrite(ReadOnlySpan<byte> buffer, ref int bytesWritten, ref
TlsOperationStatus
? result)
268
result =
TlsOperationStatus
.Complete;
277
result =
TlsOperationStatus
.Complete;
300
private static
TlsOperationStatus
MapSslError(Interop.Ssl.SslErrorCode error, string sslErrorTemplate)
304
Interop.Ssl.SslErrorCode.SSL_ERROR_WANT_READ =>
TlsOperationStatus
.NeedMoreData,
305
Interop.Ssl.SslErrorCode.SSL_ERROR_WANT_WRITE =>
TlsOperationStatus
.DestinationTooSmall,
306
Interop.Ssl.SslErrorCode.SSL_ERROR_ZERO_RETURN =>
TlsOperationStatus
.Closed,
System\Net\Security\TlsSocketSession.cs (5)
42
public
TlsOperationStatus
Handshake() => HandshakeSocketCore();
45
public
TlsOperationStatus
Read(Span<byte> buffer, out int bytesRead)
49
public
TlsOperationStatus
Write(ReadOnlySpan<byte> buffer, out int bytesWritten)
53
public
TlsOperationStatus
Shutdown() => ShutdownSocketCore();
56
public
TlsOperationStatus
RequestClientCertificate() => RequestClientCertificateSocketCore();