summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortb <>2019-05-08 23:49:45 +0000
committertb <>2019-05-08 23:49:45 +0000
commitd1a312acc442e47e1b15497d8fde0777e3e7a55c (patch)
tree6758d8e63f3d58f8917493da50700ccc8ffac958
parent8eb3e6ba91afeb09f96f9f79c8d49b027678c1e3 (diff)
downloadopenbsd-d1a312acc442e47e1b15497d8fde0777e3e7a55c.tar.gz
openbsd-d1a312acc442e47e1b15497d8fde0777e3e7a55c.tar.bz2
openbsd-d1a312acc442e47e1b15497d8fde0777e3e7a55c.zip
In DTLS, use_srtp is part of the extended server hello while in TLSv1.3,
it is an encrypted extension. Include it in the server hello for now. This will have to be revisited once TLSv1.3 gets there. Fixes SRTP negotiation. Problem found by two rust-openssl regress failures reported by mikeb. with & ok beck
-rw-r--r--src/lib/libssl/ssl_tlsext.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/lib/libssl/ssl_tlsext.c b/src/lib/libssl/ssl_tlsext.c
index 0e37cc3cc0..62b8251ec4 100644
--- a/src/lib/libssl/ssl_tlsext.c
+++ b/src/lib/libssl/ssl_tlsext.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: ssl_tlsext.c,v 1.44 2019/03/25 17:21:18 jsing Exp $ */ 1/* $OpenBSD: ssl_tlsext.c,v 1.45 2019/05/08 23:49:45 tb Exp $ */
2/* 2/*
3 * Copyright (c) 2016, 2017, 2019 Joel Sing <jsing@openbsd.org> 3 * Copyright (c) 2016, 2017, 2019 Joel Sing <jsing@openbsd.org>
4 * Copyright (c) 2017 Doug Hogan <doug@openbsd.org> 4 * Copyright (c) 2017 Doug Hogan <doug@openbsd.org>
@@ -1822,7 +1822,8 @@ static struct tls_extension tls_extensions[] = {
1822#ifndef OPENSSL_NO_SRTP 1822#ifndef OPENSSL_NO_SRTP
1823 { 1823 {
1824 .type = TLSEXT_TYPE_use_srtp, 1824 .type = TLSEXT_TYPE_use_srtp,
1825 .messages = SSL_TLSEXT_MSG_CH | SSL_TLSEXT_MSG_EE, 1825 .messages = SSL_TLSEXT_MSG_CH | SSL_TLSEXT_MSG_SH /* XXX */ |
1826 SSL_TLSEXT_MSG_EE,
1826 .client = { 1827 .client = {
1827 .needs = tlsext_srtp_client_needs, 1828 .needs = tlsext_srtp_client_needs,
1828 .build = tlsext_srtp_client_build, 1829 .build = tlsext_srtp_client_build,