INNER CODE UNIT · Go
analyzeCerts
demoiselle/signer · automacao-importador/diagnostico-cadeia.go:241
func analyzeCerts(source string, certs []certInfo) {
fmt.Printf("\n--- Análise dos certificados (%s) ---\n", source)
// Agrupa por CN para detectar conflitos de case
cnMap := make(map[string][]certInfo)
for _, c := range certs {
key := strings.ToUpper(c.CN)
cnMap[key] = append(cnMap[key], c)
}
hasIssues := false
for _, group := range cnMap {
if len(group) > 1 {
fmt.Printf("\n⚠️ CONFLITO: %d certificados com mesmo CN (case-insensitive):\n", len(group))
for _, c := range group {
fmt.Printf(" - Source: %s\n", c.Source)
fmt.Printf(" Subject: %s\n", c.Subject)