Commit 78c77b28 authored by Christopher Dumoulin's avatar Christopher Dumoulin
Browse files

Add SslStream::from_raw_parts

parent 164bb84b
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
@@ -3474,6 +3474,18 @@ impl<S: Read + Write> SslStream<S> {
        }
    }

    /// Constructs an `SslStream` from a pointer to the underlying OpenSSL `SSL` struct.
    ///
    /// This is useful if the handshake has already been completed elsewhere.
    ///
    /// # Safety
    ///
    /// The caller must ensure the pointer is valid.
    pub unsafe fn from_raw_parts(ssl: *mut ffi::SSL, stream: S) -> Self {
        let ssl = Ssl::from_ptr(ssl);
        Self::new_base(ssl, stream)
    }

    /// Like `read`, but returns an `ssl::Error` rather than an `io::Error`.
    ///
    /// It is particularly useful with a nonblocking socket, where the error value will identify if