Gentoo Archives: gentoo-commits

From: "Bjarke Istrup Pedersen (gurligebis)" <gurligebis@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in net-wireless/wpa_supplicant/files: wpa_supplicant-2.1-WPA-fix.patch
Date: Tue, 25 Feb 2014 07:53:56
Message-Id: 20140225075353.004292004E@flycatcher.gentoo.org
1 gurligebis 14/02/25 07:53:52
2
3 Added: wpa_supplicant-2.1-WPA-fix.patch
4 Log:
5 Adding patch to fix bug #501828
6
7 (Portage version: 2.2.8-r1/cvs/Linux i686, signed Manifest commit with key 15AE484C)
8
9 Revision Changes Path
10 1.1 net-wireless/wpa_supplicant/files/wpa_supplicant-2.1-WPA-fix.patch
11
12 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-wireless/wpa_supplicant/files/wpa_supplicant-2.1-WPA-fix.patch?rev=1.1&view=markup
13 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-wireless/wpa_supplicant/files/wpa_supplicant-2.1-WPA-fix.patch?rev=1.1&content-type=text/plain
14
15 Index: wpa_supplicant-2.1-WPA-fix.patch
16 ===================================================================
17 From b62d5b5450101676a0c05691b4bcd94e11426397 Mon Sep 17 00:00:00 2001
18 From: Jouni Malinen <j@××.fi>
19 Date: Wed, 19 Feb 2014 09:56:02 +0000
20 Subject: Revert "OpenSSL: Do not accept SSL Client certificate for server"
21
22 This reverts commit 51e3eafb68e15e78e98ca955704be8a6c3a7b304. There are
23 too many deployed AAA servers that include both id-kp-clientAuth and
24 id-kp-serverAuth EKUs for this change to be acceptable as a generic rule
25 for AAA authentication server validation. OpenSSL enforces the policy of
26 not connecting if only id-kp-clientAuth is included. If a valid EKU is
27 listed with it, the connection needs to be accepted.
28
29 Signed-off-by: Jouni Malinen <j@××.fi>
30 ---
31 diff --git a/src/crypto/tls.h b/src/crypto/tls.h
32 index 287fd33..feba13f 100644
33 --- a/src/crypto/tls.h
34 +++ b/src/crypto/tls.h
35 @@ -41,8 +41,7 @@ enum tls_fail_reason {
36 TLS_FAIL_ALTSUBJECT_MISMATCH = 6,
37 TLS_FAIL_BAD_CERTIFICATE = 7,
38 TLS_FAIL_SERVER_CHAIN_PROBE = 8,
39 - TLS_FAIL_DOMAIN_SUFFIX_MISMATCH = 9,
40 - TLS_FAIL_SERVER_USED_CLIENT_CERT = 10
41 + TLS_FAIL_DOMAIN_SUFFIX_MISMATCH = 9
42 };
43
44 union tls_event_data {
45 diff --git a/src/crypto/tls_openssl.c b/src/crypto/tls_openssl.c
46 index a13fa38..8cf1de8 100644
47 --- a/src/crypto/tls_openssl.c
48 +++ b/src/crypto/tls_openssl.c
49 @@ -105,7 +105,6 @@ struct tls_connection {
50 unsigned int ca_cert_verify:1;
51 unsigned int cert_probe:1;
52 unsigned int server_cert_only:1;
53 - unsigned int server:1;
54
55 u8 srv_cert_hash[32];
56
57 @@ -1480,16 +1479,6 @@ static int tls_verify_cb(int preverify_ok, X509_STORE_CTX *x509_ctx)
58 TLS_FAIL_SERVER_CHAIN_PROBE);
59 }
60
61 - if (!conn->server && err_cert && preverify_ok && depth == 0 &&
62 - (err_cert->ex_flags & EXFLAG_XKUSAGE) &&
63 - (err_cert->ex_xkusage & XKU_SSL_CLIENT)) {
64 - wpa_printf(MSG_WARNING, "TLS: Server used client certificate");
65 - openssl_tls_fail_event(conn, err_cert, err, depth, buf,
66 - "Server used client certificate",
67 - TLS_FAIL_SERVER_USED_CLIENT_CERT);
68 - preverify_ok = 0;
69 - }
70 -
71 if (preverify_ok && context->event_cb != NULL)
72 context->event_cb(context->cb_ctx,
73 TLS_CERT_CHAIN_SUCCESS, NULL);
74 @@ -2541,8 +2530,6 @@ openssl_handshake(struct tls_connection *conn, const struct wpabuf *in_data,
75 int res;
76 struct wpabuf *out_data;
77
78 - conn->server = !!server;
79 -
80 /*
81 * Give TLS handshake data from the server (if available) to OpenSSL
82 * for processing.
83 --
84 cgit v0.9.2