|   | Cryptographic Token Interface Standard | PKCS#11 | 
| Data Fields | |
| CK_ATTRIBUTE_TYPE | type | 
| the attribute type. More... | |
| CK_VOID_PTR | pValue | 
| pointer to the value of the attribute. More... | |
| CK_ULONG | ulValueLen | 
| length in bytes of the value. More... | |
| type | the attribute type | 
| pValue | pointer to the value of the attribute | 
| ulValueLen | length in bytes of the value | 
If an attribute has no value, then ulValueLen = 0, and the value of pValue is irrelevant. An array of CK_ATTRIBUTEs is called a "template" and is used for creating, manipulating and searching for objects. The order of the attributes in a template never matters, even if the template contains vendor-specific attributes. Note that pValue is a "void" pointer, facilitating the passing of arbitrary values. Both the application and Cryptoki library must ensure that the pointer can be safely cast to the expected type (i.e., without word-alignment errors).
CK_ATTRIBUTE_PTR is a pointer to a CK_ATTRIBUTE.
| 
 | 
| the attribute type. | 
| 
 | 
| pointer to the value of the attribute. | 
| 
 | 
| length in bytes of the value. |