diff options
author | jkim <jkim@FreeBSD.org> | 2015-01-08 23:42:41 +0000 |
---|---|---|
committer | jkim <jkim@FreeBSD.org> | 2015-01-08 23:42:41 +0000 |
commit | 4f9b1cef1a6825f03178937e0feb39a2b2d046c8 (patch) | |
tree | 6c2f3cb14d70e0247fe500835bed3d3588c3025e /crypto/openssl/ssl/s2_pkt.c | |
parent | cfd5b20c8bb6e3677ef84152d28058c0ead0de39 (diff) | |
parent | a350427e88bc6ff288594c964ca0f57464062eb0 (diff) | |
download | FreeBSD-src-4f9b1cef1a6825f03178937e0feb39a2b2d046c8.zip FreeBSD-src-4f9b1cef1a6825f03178937e0feb39a2b2d046c8.tar.gz |
Merge OpenSSL 1.0.1k.
Diffstat (limited to 'crypto/openssl/ssl/s2_pkt.c')
-rw-r--r-- | crypto/openssl/ssl/s2_pkt.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/crypto/openssl/ssl/s2_pkt.c b/crypto/openssl/ssl/s2_pkt.c index 8bb6ab8..acd61dc 100644 --- a/crypto/openssl/ssl/s2_pkt.c +++ b/crypto/openssl/ssl/s2_pkt.c @@ -265,7 +265,11 @@ static int ssl2_read_internal(SSL *s, void *buf, int len, int peek) if ((!s->s2->clear_text) && (s->s2->rlength >= (unsigned int)mac_size)) { - ssl2_enc(s,0); + if(!ssl2_enc(s,0)) + { + SSLerr(SSL_F_SSL2_READ_INTERNAL,SSL_R_DECRYPTION_FAILED); + return(-1); + } s->s2->ract_data_length-=mac_size; ssl2_mac(s,mac,0); s->s2->ract_data_length-=s->s2->padding; @@ -616,7 +620,8 @@ static int n_do_ssl_write(SSL *s, const unsigned char *buf, unsigned int len) s->s2->wact_data_length=len+p; ssl2_mac(s,s->s2->mac_data,1); s->s2->wlength+=p+mac_size; - ssl2_enc(s,1); + if(ssl2_enc(s,1) < 1) + return -1; } /* package up the header */ |