if err != nil {
return
}
- return db.Set("key", fmt.Sprintf("%X", sk.PrimaryKey.Fingerprint), b.Bytes())
+ return db.Set("key", key.Id(sk), b.Bytes())
}
func GetKeys(fpr string) (es openpgp.EntityList, err error) {
}
for _, e := range entities {
// TODO: various checks..
- isIssuer, issuer, denom, err1 := key.CheckEntity(e)
+ // TODO: collect errors instead of aborting addkeys
+ isIssuer, issuer, denom, err1 := key.Check(e)
err = err1
if err != nil {
- // TODO..
- continue
+ return
}
if !isIssuer {
- es, err := GetKeys(issuer)
+ es, err1 := GetKeys(issuer)
+ err = err1
+ if err != nil {
+ return
+ }
+ ok, _, den, err1 := key.Check(es[0])
+ err = err1
if err != nil {
- // TODO..
- continue
+ // internal error
+ return
}
- ok, _, den, err := key.CheckEntity(es[0])
- if !ok || err != nil || den != denom {
- // TODO..
- continue
+ if !ok || den != denom {
+ err = fmt.Errorf("Issuer key check failed")
+ return
}
}
b := new(bytes.Buffer)
if err != nil {
return
}
- fpr := fmt.Sprintf("%X", e.PrimaryKey.Fingerprint)
- err = db.Set("key", fpr, b.Bytes())
+ fpr := key.Id(e)
+ err = db.Insert("key", fpr, b.Bytes())
if err != nil {
return
}
if err != nil {
return
}
- _, issuer, denom, err := key.CheckEntity(kr[0])
+ _, issuer, denom, err := key.Check(kr[0])
if err != nil {
return
}
// internal error: pubkey cannot be parsed
return
}
- _, issuer2, denom2, err := key.CheckEntity(kr[0])
+ _, issuer2, denom2, err := key.Check(kr[0])
if err != nil {
return
}
}
cert.LastDebitSerial = oldcert.LastDebitSerial
cert.LastCreditSerial = oldcert.LastCreditSerial
- if _,ok := iv.(*document.DebitCert); ok {
+ if _, ok := iv.(*document.DebitCert); ok {
cert.LastDebitSerial = oldcert.Serial
} else {
cert.LastCreditSerial = oldcert.Serial
}
cert.LastDebitSerial = oldcert.LastDebitSerial
cert.LastCreditSerial = oldcert.LastCreditSerial
- if _,ok := iv.(*document.DebitCert); ok {
+ if _, ok := iv.(*document.DebitCert); ok {
cert.LastDebitSerial = oldcert.Serial
} else {
cert.LastCreditSerial = oldcert.Serial