@@ -261,7 +261,7 @@ func (cv chainValidator) validate(rawChain [][]byte) ([]*x509.Certificate, error
261261 verifyOpts := x509.VerifyOptions {
262262 Roots : roots ,
263263 Intermediates : intermediatePool ,
264- KeyUsages : cv . extKeyUsages ,
264+ KeyUsages : []x509. ExtKeyUsage { x509 . ExtKeyUsageAny } ,
265265 CurrentTime : time .UnixMilli (2 ),
266266 CertificatePolicies : nil ,
267267 }
@@ -342,15 +342,15 @@ func chainsEquivalent(inChain []*x509.Certificate, verifiedChain []*x509.Certifi
342342}
343343
344344// removeExtension removes a given extension from a list.
345- func removeExtension (extensions []pkix. Extension , oid asn1.ObjectIdentifier ) []pkix.Extension {
345+ func removeExtension (oid asn1.ObjectIdentifier , extensions []pkix.Extension ) {
346346 i := 0
347347 for _ , e := range extensions {
348348 if ! e .Id .Equal (oid ) {
349349 extensions [i ] = e
350350 i ++
351351 }
352352 }
353- return extensions [:i ]
353+ extensions = extensions [:i ]
354354}
355355
356356// relaxCert modifies parsed certificates fields to relax verification constraints.
@@ -360,7 +360,7 @@ func relaxCert(cert *x509.Certificate) {
360360 cert .UnknownExtKeyUsage = nil
361361
362362 // Name constraints
363- cert . Extensions = removeExtension (cert .Extensions , oidExtensionNameConstraints )
363+ removeExtension (oidExtensionNameConstraints , cert .Extensions )
364364 cert .PermittedDNSDomainsCritical = false
365365 cert .PermittedDNSDomains = nil
366366 cert .ExcludedDNSDomains = nil
@@ -378,7 +378,7 @@ func relaxCert(cert *x509.Certificate) {
378378 cert .MaxPathLenZero = false
379379
380380 // Policies
381- cert . Extensions = removeExtension (cert .Extensions , oidExtensionCertificatePolicies )
381+ removeExtension (oidExtensionCertificatePolicies , cert .Extensions )
382382 cert .Policies = []x509.OID {mustNewOIDFromInts (oidAnyPolicyExtension )}
383383 cert .PolicyIdentifiers = nil
384384 cert .PolicyMappings = nil
0 commit comments