mirror of
				https://github.com/optim-enterprises-bv/vault.git
				synced 2025-10-30 18:17:55 +00:00 
			
		
		
		
	Dont add the error from validating via issuer signature if the subsequent verification from extraCas succeeds (#28597)
* Dont add the error from validating via issuer signature if the subsequent verification from extraCas succeeds * changelog
This commit is contained in:
		
							
								
								
									
										3
									
								
								changelog/28597.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								changelog/28597.txt
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,3 @@ | ||||
| ```release-note:bug | ||||
| auth/cert: When using ocsp_ca_certificates, an error was produced though extra certs validation succeeded. | ||||
| ``` | ||||
| @@ -495,15 +495,19 @@ func validateOCSPParsedResponse(ocspRes *ocsp.Response, subject, issuer *x509.Ce | ||||
| 			var matchedCA *x509.Certificate | ||||
|  | ||||
| 			// Assumption 1 failed, try 2 | ||||
| 			if err := ocspRes.Certificate.CheckSignatureFrom(issuer); err != nil { | ||||
| 				// Assumption 2 failed, try 3 | ||||
| 				overallErr = multierror.Append(overallErr, err) | ||||
|  | ||||
| 				m, err := verifySignature(ocspRes, extraCas) | ||||
| 				if err != nil { | ||||
| 					overallErr = multierror.Append(overallErr, err) | ||||
| 			if sigFromIssuerErr := ocspRes.Certificate.CheckSignatureFrom(issuer); sigFromIssuerErr != nil { | ||||
| 				if len(extraCas) > 0 { | ||||
| 					// Assumption 2 failed, try 3 | ||||
| 					m, err := verifySignature(ocspRes, extraCas) | ||||
| 					if err != nil { | ||||
| 						overallErr = multierror.Append(overallErr, sigFromIssuerErr) | ||||
| 						overallErr = multierror.Append(overallErr, err) | ||||
| 					} else { | ||||
| 						overallErr = nil | ||||
| 						matchedCA = m | ||||
| 					} | ||||
| 				} else { | ||||
| 					matchedCA = m | ||||
| 					overallErr = multierror.Append(overallErr, sigFromIssuerErr) | ||||
| 				} | ||||
| 			} else { | ||||
| 				matchedCA = ocspRes.Certificate | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Scott Miller
					Scott Miller