Differences From Artifact [b3a209020a]:
- File
src/OFTLSStream.h
— part of check-in
[112eb62f7b]
at
2021-11-13 20:28:25
on branch trunk
— Add OFSecureTransportTLSStream
This implements OFTLSStream using Apple's Secure Transport. While Secure
Transport is declared deprecated by Apple, Apple so far has failed to
provide a suitable replacement. They recommend Network.framework as a
replacement, however it can neither work on arbitrary sockets, nor can
it do STARTTLS. (user: js, size: 5359) [annotate] [blame] [check-ins using]
To Artifact [d05dc14c91]:
- File src/OFTLSStream.h — part of check-in [3ed8cf7a52] at 2021-11-21 10:40:27 on branch trunk — OFTLSStream: wrappedStream -> underlyingStream (user: js, size: 5377) [annotate] [blame] [check-ins using]
| ︙ | ︙ | |||
61 62 63 64 65 66 67 | * if available. * * Subclasses need to override @ref lowlevelReadIntoBuffer:length:, * @ref lowlevelWriteBuffer:length: and * @ref asyncPerformClientHandshakeWithHost:runLoopMode:. The method * @ref hasDataInReadBuffer should be overridden to return `true` if the TLS * stream has cached unprocessed data internally, while returning | | | | | | | | 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 |
* if available.
*
* Subclasses need to override @ref lowlevelReadIntoBuffer:length:,
* @ref lowlevelWriteBuffer:length: and
* @ref asyncPerformClientHandshakeWithHost:runLoopMode:. The method
* @ref hasDataInReadBuffer should be overridden to return `true` if the TLS
* stream has cached unprocessed data internally, while returning
* `self.underlyingStream.hasDataInReadBuffer` if it does not have any
* unprocessed data. In order to get access to the underlying stream,
* @ref underlyingStream can be used.
*/
@interface OFTLSStream: OFStream <OFReadyForReadingObserving,
OFReadyForWritingObserving>
{
OFStream <OFReadyForReadingObserving, OFReadyForWritingObserving>
*_underlyingStream;
bool _verifiesCertificates;
OF_RESERVE_IVARS(OFTLSStream, 4)
}
/**
* @brief The underlying stream.
*/
@property (readonly, nonatomic) OFStream <OFReadyForReadingObserving,
OFReadyForWritingObserving> *underlyingStream;
/**
* @brief The delegate for asynchronous operations on the stream.
*
* @note The delegate is retained for as long as asynchronous operations are
* still ongoing.
*/
|
| ︙ | ︙ |