本文整理汇总了Golang中github.com/jeanfric/liftca.Store.GetParent方法的典型用法代码示例。如果您正苦于以下问题:Golang Store.GetParent方法的具体用法?Golang Store.GetParent怎么用?Golang Store.GetParent使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/jeanfric/liftca.Store
的用法示例。
在下文中一共展示了Store.GetParent方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: ObtainCA
func ObtainCA(store *liftca.Store, r *ht.Request) (*liftca.Parcel, *ht.Answer) {
caID, err := r.VarInt64("ca_id")
if err != nil {
return nil, ht.Failure(err)
}
auth, found := store.Get(caID)
if !found {
return nil, ht.NotFound()
}
if _, found := store.GetParent(caID); found {
return nil, ht.NotFound()
}
return auth, nil
}
示例2: PostCRL
func PostCRL(store *liftca.Store, r *ht.Request) *ht.Answer {
req := &JSONCRLRequest{}
r.BodyAsJSON(req)
certID, err := strconv.ParseInt(req.SerialNumber, 10, 64)
if err != nil {
return ht.Failure(err)
}
ca, answer := ObtainCA(store, r)
if answer != nil {
return answer
}
if p, _ := store.GetParent(certID); p != ca.SerialNumber() {
return ht.Failure(fmt.Errorf("certificate %v does not belong to CA %v", certID, ca.SerialNumber()))
}
store.SetRevoked(certID, true)
return ht.RedirectTo(CACRLURL(ca.SerialNumber()))
}
示例3: ObtainCAAndCert
func ObtainCAAndCert(store *liftca.Store, r *ht.Request) (*liftca.Parcel, *liftca.Parcel, *ht.Answer) {
ca, answer := ObtainCA(store, r)
if answer != nil {
return nil, nil, answer
}
certID, err := r.VarInt64("cert_id")
if err != nil {
return nil, nil, ht.Failure(err)
}
cert, found := store.Get(certID)
if !found {
return nil, nil, ht.NotFound()
}
parent, _ := store.GetParent(certID)
if parent != ca.SerialNumber() {
return nil, nil, ht.Failure(fmt.Errorf("certificate %v does not belong to CA %v", certID, ca.SerialNumber()))
}
return ca, cert, nil
}