in entryMaker/oneCRL/oneCRL.go [201:255]
func RFC4514ish(rdns pkix.RDNSequence) string {
retval := ""
for _, rdn := range rdns {
if len(rdn) == 0 {
continue
}
atv := rdn[0]
value, ok := atv.Value.(string)
if !ok {
continue
}
t := atv.Type
tStr := ""
if len(t) == 4 && t[0] == 2 && t[1] == 5 && t[2] == 4 {
switch t[3] {
case 3:
tStr = "CN"
case 7:
tStr = "L"
case 8:
tStr = "ST"
case 10:
tStr = "O"
case 11:
tStr = "OU"
case 6:
tStr = "C"
case 9:
tStr = "STREET"
}
}
if len(t) == 7 &&
t[0] == 1 &&
t[1] == 2 &&
t[2] == 840 &&
t[3] == 113549 &&
t[4] == 1 &&
t[5] == 9 &&
t[6] == 1 {
tStr = "emailAddress"
}
sep := ""
if len(retval) > 0 {
sep = ", "
}
// quote values that contain a comma
if strings.Contains(value, ",") {
value = "\"\"" + value + "\"\""
}
retval = retval + sep + tStr + "=" + value
}
return retval
}