func (ks *FSKeystore) Put(name string, k ci.PrivKey) error { if err := validateName(name); err != nil { return err } b, err := k.Bytes() if err != nil { return err } kp := filepath.Join(ks.dir, name) _, err = os.Stat(kp) if err == nil { return ErrKeyExists } else if !os.IsNotExist(err) { return err } fi, err := os.Create(kp) if err != nil { return err } defer fi.Close() _, err = fi.Write(b) if err != nil { return err } return nil }