aboutsummaryrefslogtreecommitdiff
path: root/openssl/src
diff options
context:
space:
mode:
Diffstat (limited to 'openssl/src')
-rw-r--r--openssl/src/ssl/error.rs17
1 files changed, 9 insertions, 8 deletions
diff --git a/openssl/src/ssl/error.rs b/openssl/src/ssl/error.rs
index 18e44cd6..b7e29c15 100644
--- a/openssl/src/ssl/error.rs
+++ b/openssl/src/ssl/error.rs
@@ -99,17 +99,18 @@ impl fmt::Display for Error {
Some(_) => fmt.write_str("a nonblocking read call would have blocked"),
None => fmt.write_str("the operation should be retried"),
},
+ ErrorCode::WANT_WRITE => match self.io_error() {
+ Some(_) => fmt.write_str("a nonblocking write call would have blocked"),
+ None => fmt.write_str("the operation should be retried"),
+ },
ErrorCode::SYSCALL => match self.io_error() {
- Some(err) => write!(fmt, "the inner stream returned an error: {}", err),
+ Some(err) => write!(fmt, "{}", err),
None => fmt.write_str("unexpected EOF"),
},
- ErrorCode::SSL => {
- fmt.write_str("OpenSSL error")?;
- if let Some(ref err) = self.ssl_error() {
- write!(fmt, ": {}", err)?
- }
- Ok(())
- }
+ ErrorCode::SSL => match self.ssl_error() {
+ Some(e) => write!(fmt, "{}", e),
+ None => fmt.write_str("OpenSSL error"),
+ },
ErrorCode(code) => write!(fmt, "unknown error code {}", code),
}
}