diff options
author | Joel Sing <jsing@cvs.openbsd.org> | 2014-10-22 15:29:32 +0000 |
---|---|---|
committer | Joel Sing <jsing@cvs.openbsd.org> | 2014-10-22 15:29:32 +0000 |
commit | 1abb3c9d5a6152b332ae182a6c56cf60f6dd19e4 (patch) | |
tree | 55ae9b21d2594ee1f3ae0eb100be9ca4a0e620af /lib | |
parent | 19f3ac4db8ac2dd00fe3332249cb7ba2c775640b (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.c | 4 |
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 */ |