INNER CODE UNIT · Go
extractPFX
demoiselle/signer · automacao-importador/diagnostico-cadeia.go:134
func extractPFX(pfxPath, password, workDir string) []certInfo {
pemFile := filepath.Join(workDir, "pfx_certs.pem")
cmd := exec.Command("openssl", "pkcs12",
"-in", pfxPath,
"-passin", fmt.Sprintf("pass:%s", password),
"-nokeys", "-legacy",
"-out", pemFile)
var stderr bytes.Buffer
cmd.Stderr = &stderr
if err := cmd.Run(); err != nil {
// Tenta sem -legacy
cmd2 := exec.Command("openssl", "pkcs12",
"-in", pfxPath,
"-passin", fmt.Sprintf("pass:%s", password),
"-nokeys",
"-out", pemFile)
stderr.Reset()