Skip to content

Commit 1b44b8a

Browse files
mcpherrinmjprenken
andauthored
Cert-checker: Don't require clientEKU (#7939)
This is required now that we're going to issue certificates with only the server EKU. Fixes #7938 --------- Co-authored-by: James Renken <jprenken@users.noreply.github.com>
1 parent 7209bc2 commit 1b44b8a

File tree

2 files changed

+4
-2
lines changed

2 files changed

+4
-2
lines changed

cmd/cert-checker/main.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -422,7 +422,9 @@ func (c *certChecker) checkCert(ctx context.Context, cert core.Certificate, igno
422422
}
423423
}
424424
// Check the cert has the correct key usage extensions
425-
if !slices.Equal(parsedCert.ExtKeyUsage, []zX509.ExtKeyUsage{zX509.ExtKeyUsageServerAuth, zX509.ExtKeyUsageClientAuth}) {
425+
serverAndClient := slices.Equal(parsedCert.ExtKeyUsage, []zX509.ExtKeyUsage{zX509.ExtKeyUsageServerAuth, zX509.ExtKeyUsageClientAuth})
426+
serverOnly := slices.Equal(parsedCert.ExtKeyUsage, []zX509.ExtKeyUsage{zX509.ExtKeyUsageServerAuth})
427+
if !(serverAndClient || serverOnly) {
426428
problems = append(problems, "Certificate has incorrect key usage extensions")
427429
}
428430

cmd/cert-checker/main_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -291,7 +291,7 @@ func TestCheckCert(t *testing.T) {
291291
delete(problemsMap, p)
292292
}
293293
for k := range problemsMap {
294-
t.Errorf("Expected problem but didn't find it: '%s'.", k)
294+
t.Errorf("Expected problem but didn't find '%s' in problems: %q.", k, problems)
295295
}
296296

297297
// Same settings as above, but the stored serial number in the DB is invalid.

0 commit comments

Comments
 (0)