Documentation ¶
Overview ¶
Package attrmgr contains utilities for managing attributes. Attributes are added to an sm2 certificate as an extension.
Index ¶
- Variables
- type Attribute
- type AttributeRequest
- type Attributes
- type Mgr
- func (mgr *Mgr) AddAttributesToCert(attrs *Attributes, cert *x.Certificate) error
- func (mgr *Mgr) GetAttributesFromCert(cert *x.Certificate) (*Attributes, error)
- func (mgr *Mgr) GetAttributesFromIdemix(creator []byte) (*Attributes, error)
- func (mgr *Mgr) ProcessAttributeRequests(requests []AttributeRequest, attributes []Attribute) (*Attributes, error)
- func (mgr *Mgr) ProcessAttributeRequestsForCert(requests []AttributeRequest, attributes []Attribute, cert *x.Certificate) error
Constants ¶
This section is empty.
Variables ¶
var ( // AttrOID is the ASN.1 object identifier for an attribute extension in an // sm2 certificate AttrOID = asn1.ObjectIdentifier{1, 2, 3, 4, 5, 6, 7, 8, 1} // AttrOIDString is the string version of AttrOID AttrOIDString = "1.2.3.4.5.6.7.8.1" )
Functions ¶
This section is empty.
Types ¶
type Attribute ¶
type Attribute interface { // GetName returns the name of the attribute GetName() string // GetValue returns the value of the attribute GetValue() string }
Attribute is a name/value pair
type AttributeRequest ¶
type AttributeRequest interface { // GetName returns the name of an attribute GetName() string // IsRequired returns true if the attribute is required IsRequired() bool }
AttributeRequest is a request for an attribute
type Attributes ¶
Attributes contains attribute names and values
func (*Attributes) Contains ¶
func (a *Attributes) Contains(name string) bool
Contains returns true if the named attribute is found
func (*Attributes) Names ¶
func (a *Attributes) Names() []string
Names returns the names of the attributes
func (*Attributes) True ¶
func (a *Attributes) True(name string) error
True returns nil if the value of attribute 'name' is true; otherwise, an appropriate error is returned.
type Mgr ¶
type Mgr struct{}
Mgr is the attribute manager and is the main object for this package
func (*Mgr) AddAttributesToCert ¶
func (mgr *Mgr) AddAttributesToCert(attrs *Attributes, cert *x.Certificate) error
AddAttributesToCert adds public attribute info to an sm2 certificate.
func (*Mgr) GetAttributesFromCert ¶
func (mgr *Mgr) GetAttributesFromCert(cert *x.Certificate) (*Attributes, error)
GetAttributesFromCert gets the attributes from a certificate.
func (*Mgr) GetAttributesFromIdemix ¶
func (mgr *Mgr) GetAttributesFromIdemix(creator []byte) (*Attributes, error)
GetAttributesFromIdemix ...
func (*Mgr) ProcessAttributeRequests ¶
func (mgr *Mgr) ProcessAttributeRequests(requests []AttributeRequest, attributes []Attribute) (*Attributes, error)
ProcessAttributeRequests takes an array of attribute requests and an identity's attributes and returns an Attributes object containing the requested attributes.
func (*Mgr) ProcessAttributeRequestsForCert ¶
func (mgr *Mgr) ProcessAttributeRequestsForCert(requests []AttributeRequest, attributes []Attribute, cert *x.Certificate) error
ProcessAttributeRequestsForCert add attributes to an sm2 certificate, given attribute requests and attributes.