aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDimitri Sokolyuk <demon@dim13.org>2016-06-02 18:27:15 +0200
committerDimitri Sokolyuk <demon@dim13.org>2016-06-02 18:27:15 +0200
commit708568330639ce5b2756c731cd611023b2e916ea (patch)
treed2f43da4afb9cef0ccc53729573d3a1f658a3aad
parent76415c40ddb0487983dc655524db214e067e8d79 (diff)
Add GetMail
-rw-r--r--cmd/batch/main.go2
-rw-r--r--crypto.go11
2 files changed, 11 insertions, 2 deletions
diff --git a/cmd/batch/main.go b/cmd/batch/main.go
index ef7ec2f..0be2087 100644
--- a/cmd/batch/main.go
+++ b/cmd/batch/main.go
@@ -82,7 +82,7 @@ func main() {
}
log.Println("Request bundle for", *domains)
- cert, err := prov.Bundle(sig, key, *domains, []string{*email})
+ cert, err := prov.Bundle(sig, key, *domains, *email)
if err != nil {
log.Fatal(err)
}
diff --git a/crypto.go b/crypto.go
index b42f147..d9384b1 100644
--- a/crypto.go
+++ b/crypto.go
@@ -80,6 +80,16 @@ func LoadCerts(r io.Reader) ([]*x509.Certificate, error) {
return x509.ParseCertificates(block.Bytes)
}
+// GetMail returns emailAddress embedded in certificate
+func GetMail(cert *x509.Certificate) string {
+ for _, n := range cert.Subject.Names {
+ if n.Type.Equal(oidMailAddress) {
+ return n.Value.(string)
+ }
+ }
+ return ""
+}
+
// NewKey generates a new private key, supported keysizes are:
// EC keys: 224, 256, 384, 521
// RSA keys: 1024, 1536, 2048, 4096, 8192
@@ -121,6 +131,5 @@ func NewCSR(key crypto.PrivateKey, altnames []string, email string) (string, err
if err != nil {
return "", err
}
- //SaveCSR(os.Stdout, der)
return base64.RawURLEncoding.EncodeToString(der), nil
}