opt/samba/v2-0001-s4-lib-tls-use-gnutls_priority_set_direct.patch
Alan Mizrahi 6dccc13e36 [notify] samba: updated 4.1.17 -> 4.2.1
New dependencies added: nss_wrapper, socket_wrapper and uid_wrapper

Added patches to fix building with gnutls >= 3.4.0 and krb5
2015-05-01 18:10:36 +09:00

61 lines
2.2 KiB
Diff

From 17f386f2a9462efe4d4cbf58e55d164923e11af5 Mon Sep 17 00:00:00 2001
From: Evangelos Foutras <evangelos@foutrelis.com>
Date: Mon, 13 Apr 2015 23:11:14 +0300
Subject: [PATCH v2] s4:lib/tls: use gnutls_priority_set_direct()
gnutls_certificate_type_set_priority() was removed in GnuTLS 3.4.0.
---
source4/lib/tls/tls.c | 3 +--
source4/lib/tls/tls_tstream.c | 7 +------
2 files changed, 2 insertions(+), 8 deletions(-)
diff --git a/source4/lib/tls/tls.c b/source4/lib/tls/tls.c
index b9182ad..2fe4ff7 100644
--- a/source4/lib/tls/tls.c
+++ b/source4/lib/tls/tls.c
@@ -572,7 +572,6 @@ struct socket_context *tls_init_client(struct socket_context *socket_ctx,
{
struct tls_context *tls;
int ret = 0;
- const int cert_type_priority[] = { GNUTLS_CRT_X509, GNUTLS_CRT_OPENPGP, 0 };
struct socket_context *new_sock;
NTSTATUS nt_status;
@@ -598,7 +597,7 @@ struct socket_context *tls_init_client(struct socket_context *socket_ctx,
gnutls_certificate_set_x509_trust_file(tls->xcred, ca_path, GNUTLS_X509_FMT_PEM);
TLSCHECK(gnutls_init(&tls->session, GNUTLS_CLIENT));
TLSCHECK(gnutls_set_default_priority(tls->session));
- gnutls_certificate_type_set_priority(tls->session, cert_type_priority);
+ gnutls_priority_set_direct(tls->session, "NORMAL:+CTYPE-OPENPGP", NULL);
TLSCHECK(gnutls_credentials_set(tls->session, GNUTLS_CRD_CERTIFICATE, tls->xcred));
talloc_set_destructor(tls, tls_destructor);
diff --git a/source4/lib/tls/tls_tstream.c b/source4/lib/tls/tls_tstream.c
index f19f5c5..5b2329b 100644
--- a/source4/lib/tls/tls_tstream.c
+++ b/source4/lib/tls/tls_tstream.c
@@ -967,11 +967,6 @@ struct tevent_req *_tstream_tls_connect_send(TALLOC_CTX *mem_ctx,
#if ENABLE_GNUTLS
struct tstream_tls *tlss;
int ret;
- static const int cert_type_priority[] = {
- GNUTLS_CRT_X509,
- GNUTLS_CRT_OPENPGP,
- 0
- };
#endif /* ENABLE_GNUTLS */
req = tevent_req_create(mem_ctx, &state,
@@ -1014,7 +1009,7 @@ struct tevent_req *_tstream_tls_connect_send(TALLOC_CTX *mem_ctx,
return tevent_req_post(req, ev);
}
- gnutls_certificate_type_set_priority(tlss->tls_session, cert_type_priority);
+ gnutls_priority_set_direct(tlss->tls_session, "NORMAL:+CTYPE-OPENPGP", NULL);
ret = gnutls_credentials_set(tlss->tls_session,
GNUTLS_CRD_CERTIFICATE,
--
2.3.5