Skip to content

Commit 20732dc

Browse files
thaJeztahjsturtevant
authored andcommitted
pkg/cri/(server|sbserver): criService.getTLSConfig() add TODO to verify nolint
This `//nolint` was added in containerd/cri@f5c7ac9 to suppress warnings about the `NameToCertificate` function being deprecated: // Deprecated: NameToCertificate only allows associating a single certificate // with a given name. Leave that field nil to let the library select the first // compatible chain from Certificates. Looking at that, it was deprecated in Go 1.14 through golang/go@eb93c68 (https://go-review.googlesource.com/c/go/+/205059), which describes: crypto/tls: select only compatible chains from Certificates Now that we have a full implementation of the logic to check certificate compatibility, we can let applications just list multiple chains in Certificates (for example, an RSA and an ECDSA one) and choose the most appropriate automatically. NameToCertificate only maps each name to one chain, so simply deprecate it, and while at it simplify its implementation by not stripping trailing dots from the SNI (which is specified not to have any, see RFC 6066, Section 3) and by not supporting multi-level wildcards, which are not a thing in the WebPKI (and in crypto/x509). We should at least have a comment describing why we are ignoring this, but preferably review whether we should still use it. Signed-off-by: Sebastiaan van Stijn <[email protected]>
1 parent cc651da commit 20732dc

File tree

2 files changed

+2
-2
lines changed

2 files changed

+2
-2
lines changed

pkg/cri/sbserver/image_pull.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -318,7 +318,7 @@ func (c *criService) getTLSConfig(registryTLSConfig criconfig.TLSConfig) (*tls.C
318318
if len(cert.Certificate) != 0 {
319319
tlsConfig.Certificates = []tls.Certificate{cert}
320320
}
321-
tlsConfig.BuildNameToCertificate() // nolint:staticcheck
321+
tlsConfig.BuildNameToCertificate() //nolint:staticcheck // TODO(thaJeztah): verify if we should ignore the deprecation; see https://github.com/containerd/containerd/pull/7349/files#r990644833
322322
}
323323

324324
if registryTLSConfig.CAFile != "" {

pkg/cri/server/image_pull.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -318,7 +318,7 @@ func (c *criService) getTLSConfig(registryTLSConfig criconfig.TLSConfig) (*tls.C
318318
if len(cert.Certificate) != 0 {
319319
tlsConfig.Certificates = []tls.Certificate{cert}
320320
}
321-
tlsConfig.BuildNameToCertificate() // nolint:staticcheck
321+
tlsConfig.BuildNameToCertificate() //nolint:staticcheck // TODO(thaJeztah): verify if we should ignore the deprecation; see https://github.com/containerd/containerd/pull/7349/files#r990644833
322322
}
323323

324324
if registryTLSConfig.CAFile != "" {

0 commit comments

Comments
 (0)