package main
import (
+ "bytes"
"crypto/openpgp"
"crypto/openpgp/armor"
"crypto/rand"
if err != nil {
return
}
- fmt.Printf("%v", resp)
+ if resp.StatusCode != 200 {
+ log.Printf("request failed: %s\n", resp.Status)
+ }
+ _, err = io.Copy(os.Stdout, resp.Body)
+ if err != nil {
+ return
+ }
+ err = resp.Body.Close()
return
}
func v(d []byte) (err error) {
+ // handle armored pubkey
+ if bytes.Index(d, []byte(openpgp.PublicKeyType)) >= 0 {
+ es, err1 := openpgp.ReadArmoredKeyRing(bytes.NewBuffer(d))
+ if err1 != nil {
+ err = err1
+ return
+ }
+ for _, e := range es {
+ isIssuer, issuer, denom, err1 := key.Check(e)
+ if err1 != nil {
+ if err != nil {
+ log.Println(err)
+ }
+ err = err1
+ continue
+ }
+ if isIssuer {
+ fmt.Println("Issuer key")
+ } else {
+ fmt.Println("Holder key")
+ }
+ fmt.Printf("Issuer: %s\nDenomination: %s\nId: %s\n", issuer, denom, key.Id(e))
+ }
+ return
+ }
_, s, err := document.Parse(d)
if err != nil {
return