Struct
GckBuilder
Description [src]
struct GckBuilder {
/* No available fields */
}
A builder for a set of attributes. Add attributes to a builder, and then use
gck_builder_end()
to get the completed GckAttributes
.
The fields of GckBuilder
are private and not to be accessed directly.
Constructors
gck_builder_new
Create a new GckBuilder
not allocated on the stack, so it can be shared
across a single scope, and referenced / unreferenced.
Functions
gck_builder_unref
Unreferences a builder. If this was the last reference then the builder is freed.
Instance methods
gck_builder_add_all
Add all the attrs
attributes to the builder. The attributes are added
uncondititionally whether or not attributes with the same types already
exist in the builder.
gck_builder_add_attribute
Add an attribute to the builder. The attribute is added unconditionally whether or not an attribute with the same type already exists on the builder.
gck_builder_add_boolean
Add a new attribute to the builder for the boolean value
.
Unconditionally adds a new attribute, even if one with the same attr_type
already exists.
gck_builder_add_data
Add a new attribute to the builder with an arbitrary value. Unconditionally
adds a new attribute, even if one with the same attr_type
already exists.
gck_builder_add_date
Add a new attribute to the builder for the date value
.
Unconditionally adds a new attribute, even if one with the same attr_type
already exists.
gck_builder_add_empty
Add a new attribute to the builder that is empty. Unconditionally
adds a new attribute, even if one with the same attr_type
already exists.
gck_builder_add_except
Add the attributes in attrs
to the builder, with the exception of those
in the argument list. The attributes are added uncondititionally whether or
not attributes with the same types already exist in the builder.
gck_builder_add_exceptv
Add the attributes in attrs
to the builder, with the exception of those
whose types are specified in except_types
. The attributes are added
uncondititionally whether or not attributes with the same types already
exist in the builder.
gck_builder_add_invalid
Add a new attribute to the builder that is invalid in the PKCS#11 sense.
Unconditionally adds a new attribute, even if one with the same attr_type
already exists.
gck_builder_add_only
Add the attributes specified in the argument list from attrs
to the
builder. The attributes are added uncondititionally whether or not
attributes with the same types already exist in the builder.
gck_builder_add_onlyv
Add the attributes with the types in only_types
from attrs
to the
builder. The attributes are added uncondititionally whether or not
attributes with the same types already exist in the builder.
gck_builder_add_string
Add a new attribute to the builder for the string value
or NULL
.
Unconditionally adds a new attribute, even if one with the same attr_type
already exists.
gck_builder_add_ulong
Add a new attribute to the builder for the unsigned long value
.
Unconditionally adds a new attribute, even if one with the same attr_type
already exists.
gck_builder_clear
Clear the builder and release all allocated memory. The builder may be used again to build another set of attributes after this function call.
gck_builder_copy
Make a copy of the builder and its state. The new builder is allocated
with gck_builder_new()
and should be freed with gck_builder_unref().
gck_builder_end
Complete the GckBuilder
, and return the attributes contained in the builder.
The GckBuilder
will be cleared after this function call, and it is no
longer necessary to use gck_builder_clear()
on it, although it is also
permitted. The builder may be used again to build another set of attributes
after this function call.
gck_builder_find
Find an attribute in the builder. Both valid and invalid attributes (in the PKCS#11 sense) are returned. If multiple attributes exist for the given attribute type, then the first one is returned.
gck_builder_find_boolean
Find a boolean attribute in the builder that has the type attr_type
, is
of the correct boolean size, and is not invalid in the PKCS#11 sense.
If multiple attributes exist for the given attribute type, then the first\
one is returned.
gck_builder_find_date
Find a date attribute in the builder that has the type attr_type
, is of
the correct date size, and is not invalid in the PKCS#11 sense.
If multiple attributes exist for the given attribute type, then the first
one is returned.
gck_builder_find_string
Find a string attribute in the builder that has the type attr_type
, has a
non NULL
value pointer, and is not invalid in the PKCS#11 sense.
If multiple attributes exist for the given attribute type, then the first
one is returned.
gck_builder_find_ulong
Find a unsigned long attribute in the builder that has the type attr_type
,
is of the correct unsigned long size, and is not invalid in the PKCS#11 sense.
If multiple attributes exist for the given attribute type, then the first
one is returned.
gck_builder_init
Initialize a stack allocated builder, with the default flags.
gck_builder_init_full
Initialize a stack allocated builder, with the appropriate flags.
gck_builder_ref
Add a reference to a builder that was created with gck_builder_new()
. The
builder must later be unreferenced again with gck_builder_unref().
gck_builder_set_all
Set all the attrs
attributes to the builder. If any attributes with the
same types are already present in the builder, then those attributes are
changed to the new values.
gck_builder_set_boolean
Set an attribute on the builder for the boolean value
.
If an attribute with attr_type
already exists in the builder then it is
changed to the new value, otherwise an attribute is added.
gck_builder_set_data
Set a new attribute to the builder with an arbitrary value. If an attribute
with attr_type
already exists in the builder then it is changed to the new
value, otherwise an attribute is added.
gck_builder_set_date
Set an attribute on the builder for the date value
.
If an attribute with attr_type
already exists in the builder then it is
changed to the new value, otherwise an attribute is added.
gck_builder_set_empty
Set an attribute on the builder that is empty. If an attribute
with attr_type
already exists in the builder then it is changed to the new
value, otherwise an attribute is added.
gck_builder_set_invalid
Set an attribute on the builder that is invalid in the PKCS#11 sense.
If an attribute with attr_type
already exists in the builder then it is
changed to the new value, otherwise an attribute is added.
gck_builder_set_string
Set an attribute on the builder for the string value
or NULL
.
If an attribute with attr_type
already exists in the builder then it is
changed to the new value, otherwise an attribute is added.
gck_builder_set_ulong
Set an attribute on the builder for the unsigned long value
.
If an attribute with attr_type
already exists in the builder then it is
changed to the new value, otherwise an attribute is added.
gck_builder_steal
Take the attributes that have been built in the GckBuilder
. The builder
will no longer contain any attributes after this function call.
gck_builder_take_data
Add a new attribute to the builder with an arbitrary value. Unconditionally
adds a new attribute, even if one with the same attr_type
already exists.