From 0c4c55a3da970d607dfe7c6b0166627d77434bc9 Mon Sep 17 00:00:00 2001 From: Joel Sing Date: Sun, 21 Aug 2022 18:17:12 +0000 Subject: Ensure that SSL_{peek,read,write}() are not called if QUIC is in use. ok tb@ --- lib/libssl/ssl_lib.c | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) (limited to 'lib/libssl') diff --git a/lib/libssl/ssl_lib.c b/lib/libssl/ssl_lib.c index 9af1934dd63..515065de6cc 100644 --- a/lib/libssl/ssl_lib.c +++ b/lib/libssl/ssl_lib.c @@ -1,4 +1,4 @@ -/* $OpenBSD: ssl_lib.c,v 1.301 2022/08/17 07:39:19 jsing Exp $ */ +/* $OpenBSD: ssl_lib.c,v 1.302 2022/08/21 18:17:11 jsing Exp $ */ /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) * All rights reserved. * @@ -1029,6 +1029,11 @@ SSL_read(SSL *s, void *buf, int num) return -1; } + if (SSL_is_quic(s)) { + SSLerror(s, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); + return (-1); + } + if (s->internal->handshake_func == NULL) { SSLerror(s, SSL_R_UNINITIALIZED); return (-1); @@ -1068,6 +1073,11 @@ SSL_peek(SSL *s, void *buf, int num) return -1; } + if (SSL_is_quic(s)) { + SSLerror(s, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); + return (-1); + } + if (s->internal->handshake_func == NULL) { SSLerror(s, SSL_R_UNINITIALIZED); return (-1); @@ -1106,6 +1116,11 @@ SSL_write(SSL *s, const void *buf, int num) return -1; } + if (SSL_is_quic(s)) { + SSLerror(s, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); + return (-1); + } + if (s->internal->handshake_func == NULL) { SSLerror(s, SSL_R_UNINITIALIZED); return (-1); -- cgit v1.2.3