Merge "pjproject_bundled: Crash on pj_ssl_get_info() while ioqueue_on_read_complete()."

pull/7/head
Joshua Colp 8 years ago committed by Gerrit Code Review
commit 62386dd1df

@ -0,0 +1,32 @@
Index: /pjproject/trunk/pjlib/src/pj/ssl_sock_ossl.c
===================================================================
--- a/pjlib/src/pj/ssl_sock_ossl.c (revision 5564)
+++ b/pjlib/src/pj/ssl_sock_ossl.c (revision 5565)
@@ -145,5 +145,6 @@
SSL_STATE_NULL,
SSL_STATE_HANDSHAKING,
- SSL_STATE_ESTABLISHED
+ SSL_STATE_ESTABLISHED,
+ SSL_STATE_ERROR
};
@@ -1907,4 +1908,8 @@
buf->len += size_;
+ if (status != PJ_SUCCESS) {
+ ssock->ssl_state = SSL_STATE_ERROR;
+ }
+
ret = (*ssock->param.cb.on_data_read)(ssock, buf->data,
buf->len, status,
@@ -2658,5 +2663,9 @@
/* Current cipher */
cipher = SSL_get_current_cipher(ssock->ossl_ssl);
- info->cipher = (SSL_CIPHER_get_id(cipher) & 0x00FFFFFF);
+ if (cipher) {
+ info->cipher = (SSL_CIPHER_get_id(cipher) & 0x00FFFFFF);
+ } else {
+ info->cipher = PJ_TLS_UNKNOWN_CIPHER;
+ }
/* Remote address */
Loading…
Cancel
Save