summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorJoel Sing <jsing@cvs.openbsd.org>2014-10-22 15:29:32 +0000
committerJoel Sing <jsing@cvs.openbsd.org>2014-10-22 15:29:32 +0000
commit1abb3c9d5a6152b332ae182a6c56cf60f6dd19e4 (patch)
tree55ae9b21d2594ee1f3ae0eb100be9ca4a0e620af /lib
parent19f3ac4db8ac2dd00fe3332249cb7ba2c775640b (diff)
Avoid a NULL pointer dereference that can be triggered by
SSL3_RT_HANDSHAKE replays. Reported by Markus Stenberg <markus.stenberg at iki.fi> - thanks! ok deraadt@
Diffstat (limited to 'lib')
-rw-r--r--lib/libssl/d1_pkt.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/libssl/d1_pkt.c b/lib/libssl/d1_pkt.c
index 6f3ee262175..7aa5aac7523 100644
--- a/lib/libssl/d1_pkt.c
+++ b/lib/libssl/d1_pkt.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: d1_pkt.c,v 1.35 2014/10/18 16:13:16 jsing Exp $ */
+/* $OpenBSD: d1_pkt.c,v 1.36 2014/10/22 15:29:31 jsing Exp $ */
/*
* DTLS implementation written by Nagendra Modadugu
* (nagendra@cs.stanford.edu) for the OpenSSL project 2005.
@@ -586,7 +586,7 @@ again:
* would be dropped unnecessarily.
*/
if (!(s->d1->listen && rr->type == SSL3_RT_HANDSHAKE &&
- *p == SSL3_MT_CLIENT_HELLO) &&
+ p != NULL && *p == SSL3_MT_CLIENT_HELLO) &&
!dtls1_record_replay_check(s, bitmap)) {
rr->length = 0;
s->packet_length=0; /* dump this record */