]> Cypherpunks repositories - gostls13.git/commit
crypto/tls: don't require an explicit client-auth EKU.
authorAdam Langley <agl@golang.org>
Mon, 8 Jun 2015 21:24:18 +0000 (14:24 -0700)
committerAdam Langley <agl@golang.org>
Tue, 9 Jun 2015 15:48:24 +0000 (15:48 +0000)
commitc72b8aa3b36632f7bf96111346a554667dd08f7f
treea631c1e865348a0674e037bfa8ab00f723f90cae
parentb39487b68d8fcdaac0b83ec606ef7f176f9aabff
crypto/tls: don't require an explicit client-auth EKU.

Previously we enforced both that the extended key usages of a client
certificate chain allowed for client authentication, and that the
client-auth EKU was in the leaf certificate.

This change removes the latter requirement. It's still the case that the
chain must be compatible with the client-auth EKU (i.e. that a parent
certificate isn't limited to another usage, like S/MIME), but we'll now
accept a leaf certificate with no EKUs for client-auth.

While it would be nice if all client certificates were explicit in their
intended purpose, I no longer feel that this battle is worthwhile.

Fixes #11087.

Change-Id: I777e695101cbeba069b730163533e2977f4dc1fc
Reviewed-on: https://go-review.googlesource.com/10806
Reviewed-by: Andrew Gerrand <adg@golang.org>
Run-TryBot: Adam Langley <agl@golang.org>
src/crypto/tls/handshake_server.go