The sec_rgy_attr_sch_create_entry( ) call creates a schema entry that defines an attribute type in the attribute schema.
This call uses the sec_attr_schema_entry_t data type that completely defines the schema entry, including the following:
· The attribute type name (generally used for interactive access) and UUID (generally used for programmatic access). Note that attribute instances share the name and UUID of their attribute type.
· The attribute's encoding (described in Attribute Type Components). The encoding is specified as an enumerator of type sec_attr_encoding_t. For some kinds of encodings, additional data types are used to further specify the encoding information. These additional data types, the kinds of encodings that require them, and the purpose of the data types are listed in the following table.
Encodings and Required Data Types
Encoding | Required Data Type | Purpose of Data Type |
sec_attr_enc_bytes | sec_attr_enc_bytes_t | Defines the length of attribute values |
sec_attr_enc_confidential_bytes | sec_attr_enc_bytes_t | Defines the length of attribute values |
sec_attr_enc_i18n_data | sec_attr_i18n_data_t | Defines the i18n codeset |
sec_attr_enc_attr_set | sec_attr_enc_attr_set_t | Defines the total number of members in the attribute set and the UUID of each member |
sec_attr_enc_printstring | sec_attr_enc_printstring_t | Defines a single print string |
sec_attr_enc_printstring_array | sec_attr_enc_str_array_t | Defines an array of print strings |