本文整理汇总了Golang中github.com/hlandau/acme/fdb.Collection.Create方法的典型用法代码示例。如果您正苦于以下问题:Golang Collection.Create方法的具体用法?Golang Collection.Create怎么用?Golang Collection.Create使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/hlandau/acme/fdb.Collection
的用法示例。
在下文中一共展示了Collection.Create方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: saveKey
// Saves a key as a file named "privkey" inside the given collection.
func (s *fdbStore) saveKey(c *fdb.Collection, privateKey crypto.PrivateKey) error {
f, err := c.Create("privkey")
if err != nil {
return err
}
defer f.CloseAbort()
err = acmeutils.SavePrivateKey(f, privateKey)
if err != nil {
return err
}
return f.Close()
}
示例2: saveKey
// Saves a key as a file named "privkey" inside the given collection.
func (s *Store) saveKey(c *fdb.Collection, privateKey interface{}) error {
var kb []byte
var hdr string
switch v := privateKey.(type) {
case *rsa.PrivateKey:
kb = x509.MarshalPKCS1PrivateKey(v)
hdr = "RSA PRIVATE KEY"
case *ecdsa.PrivateKey:
var err error
kb, err = x509.MarshalECPrivateKey(v)
if err != nil {
return err
}
hdr = "EC PRIVATE KEY"
default:
return fmt.Errorf("unsupported private key type: %T", privateKey)
}
f, err := c.Create("privkey")
if err != nil {
return err
}
defer f.CloseAbort()
err = pem.Encode(f, &pem.Block{
Type: hdr,
Bytes: kb,
})
if err != nil {
return err
}
f.Close()
return nil
}