Lines Matching refs:template

264 soft_validate_attr(CK_ATTRIBUTE_PTR template, CK_ULONG ulAttrNum,
273 switch (template[i].type) {
275 *class = *((CK_OBJECT_CLASS*)template[i].pValue);
289 switch (template[i].type) {
310 rv = soft_lookup_attr(template[i].type);
446 soft_add_extra_attr(CK_ATTRIBUTE_PTR template, soft_object_t *object_p)
458 attrp->attr.type = template->type;
459 attrp->attr.ulValueLen = template->ulValueLen;
461 if ((template->pValue != NULL) &&
462 (template->ulValueLen > 0)) {
464 attrp->attr.pValue = malloc(template->ulValueLen);
470 (void) memcpy(attrp->attr.pValue, template->pValue,
471 template->ulValueLen);
579 * (if the specified attribute type is found), and copy it to a template.
580 * Note the type of the attribute to be copied is specified by the template,
581 * and the storage is pre-allocated for the atrribute value in the template
585 get_extra_attr_from_object(soft_object_t *object_p, CK_ATTRIBUTE_PTR template)
589 CK_ATTRIBUTE_TYPE type = template->type;
605 template->ulValueLen = 0;
612 if (template->pValue == NULL) {
613 template->ulValueLen = extra_attr->attr.ulValueLen;
617 if (template->ulValueLen >= extra_attr->attr.ulValueLen) {
622 (void) memcpy(template->pValue, extra_attr->attr.pValue,
624 template->ulValueLen = extra_attr->attr.ulValueLen;
631 template->ulValueLen = (CK_ULONG)-1;
644 CK_ATTRIBUTE_PTR template)
666 return (soft_add_extra_attr(template, object_p));
670 if ((template->pValue != NULL) &&
671 (template->ulValueLen > 0)) {
672 if (template->ulValueLen > extra_attr->attr.ulValueLen) {
679 extra_attr->attr.pValue = malloc(template->ulValueLen);
686 extra_attr->attr.ulValueLen = template->ulValueLen;
687 (void) memcpy(extra_attr->attr.pValue, template->pValue,
688 template->ulValueLen);
698 * Copy the big integer attribute value from template to a biginteger_t struct.
701 get_bigint_attr_from_template(biginteger_t *big, CK_ATTRIBUTE_PTR template)
704 if ((template->pValue != NULL) &&
705 (template->ulValueLen > 0)) {
707 big->big_value = malloc(template->ulValueLen);
712 (void) memcpy(big->big_value, template->pValue,
713 template->ulValueLen);
714 big->big_value_len = template->ulValueLen;
726 * object to a template.
729 get_bigint_attr_from_object(biginteger_t *big, CK_ATTRIBUTE_PTR template)
732 if (template->pValue == NULL) {
733 template->ulValueLen = big->big_value_len;
738 template->ulValueLen = 0;
742 if (template->ulValueLen >= big->big_value_len) {
747 (void) memcpy(template->pValue, big->big_value,
749 template->ulValueLen = big->big_value_len;
756 template->ulValueLen = (CK_ULONG)-1;
764 * specified attribute to the template.
768 CK_ATTRIBUTE_PTR template)
771 if (template->pValue == NULL) {
772 template->ulValueLen = sizeof (CK_BBOOL);
776 if (template->ulValueLen >= sizeof (CK_BBOOL)) {
782 *((CK_BBOOL *)template->pValue) = B_TRUE;
784 *((CK_BBOOL *)template->pValue) = B_FALSE;
787 template->ulValueLen = sizeof (CK_BBOOL);
794 template->ulValueLen = (CK_ULONG)-1;
804 CK_ATTRIBUTE_PTR template)
807 if (*(CK_BBOOL *)template->pValue)
818 * template.
821 get_ulong_attr_from_object(CK_ULONG value, CK_ATTRIBUTE_PTR template)
824 if (template->pValue == NULL) {
825 template->ulValueLen = sizeof (CK_ULONG);
829 if (template->ulValueLen >= sizeof (CK_ULONG)) {
835 *(CK_ULONG_PTR)template->pValue = value;
836 template->ulValueLen = sizeof (CK_ULONG);
843 template->ulValueLen = (CK_ULONG)-1;
850 * Copy the CK_ULONG data type attribute value from a template to the
854 get_ulong_attr_from_template(CK_ULONG *value, CK_ATTRIBUTE_PTR template)
857 if (template->ulValueLen < sizeof (CK_ULONG))
860 if (template->pValue != NULL) {
861 *value = *(CK_ULONG_PTR)template->pValue;
958 * Copy the certificate attribute information to the template.
959 * If the template attribute is not big enough, set the ulValueLen=-1
963 get_cert_attr_from_object(cert_attr_t *src, CK_ATTRIBUTE_PTR template)
965 if (template->pValue == NULL) {
966 template->ulValueLen = src->length;
968 } else if (template->ulValueLen >= src->length) {
973 (void) memcpy(template->pValue, src->value, src->length);
974 template->ulValueLen = src->length;
981 template->ulValueLen = (CK_ULONG)-1;
987 string_attr_cleanup(CK_ATTRIBUTE_PTR template)
990 if (template->pValue) {
991 free(template->pValue);
992 template->pValue = NULL;
993 template->ulValueLen = 0;
1211 * value to indicate if the supplied template specifies a valid attribute
1215 soft_parse_common_attrs(CK_ATTRIBUTE_PTR template, uchar_t *object_type)
1220 switch (template->type) {
1226 if ((*(CK_BBOOL *)template->pValue) == B_TRUE) {
1234 if ((*(CK_BBOOL *)template->pValue) == B_TRUE) {
1268 * - Parse the object's template, and when an error is detected such as
1283 soft_build_public_key_object(CK_ATTRIBUTE_PTR template, CK_ULONG ulAttrNum,
1337 switch (template[i].type) {
1341 keytype = *((CK_KEY_TYPE*)template[i].pValue);
1355 rv = soft_add_extra_attr(&template[i],
1373 if (*(CK_BBOOL *)template[i].pValue)
1378 if (*(CK_BBOOL *)template[i].pValue)
1385 if (*(CK_BBOOL *)template[i].pValue)
1392 if (*(CK_BBOOL *)template[i].pValue)
1399 if (*(CK_BBOOL *)template[i].pValue)
1406 if (*(CK_BBOOL *)template[i].pValue)
1411 if ((*(CK_BBOOL *)template[i].pValue) == B_FALSE)
1424 * Copyin big integer attribute from template
1428 &template[i]);
1448 &template[i]);
1456 &template[i]);
1464 &template[i]);
1472 &template[i]);
1480 if ((template[i].ulValueLen == 0) ||
1481 (template[i].pValue == NULL)) {
1488 &template[i]);
1496 &template[i]);
1504 &template[i]);
1511 rv = get_string_from_template(&param_tmp, &template[i]);
1519 &template[i]);
1525 rv = soft_parse_common_attrs(&template[i],
1554 * The key type specified in the template does not
1637 * if not not specified in attribute template.
1834 * - Parse the object's template, and when an error is detected such as
1849 soft_build_private_key_object(CK_ATTRIBUTE_PTR template, CK_ULONG ulAttrNum,
1919 switch (template[i].type) {
1922 keytype = *((CK_KEY_TYPE*)template[i].pValue);
1936 rv = soft_add_extra_attr(&template[i],
1957 if (*(CK_BBOOL *)template[i].pValue)
1962 if (*(CK_BBOOL *)template[i].pValue)
1967 if (*(CK_BBOOL *)template[i].pValue) {
1974 if (*(CK_BBOOL *)template[i].pValue)
1981 if (*(CK_BBOOL *)template[i].pValue)
1988 if (*(CK_BBOOL *)template[i].pValue)
1995 if (*(CK_BBOOL *)template[i].pValue)
2002 if (*(CK_BBOOL *)template[i].pValue)
2009 if ((*(CK_BBOOL *)template[i].pValue) == B_FALSE)
2022 * Copyin big integer attribute from template
2026 &template[i]);
2047 &template[i]);
2056 &template[i]);
2064 &template[i]);
2072 &template[i]);
2080 &template[i]);
2088 &template[i]);
2096 &template[i]);
2104 &template[i]);
2112 &template[i]);
2120 &template[i]);
2128 if ((template[i].ulValueLen == 0) ||
2129 (template[i].pValue == NULL)) {
2136 &template[i]);
2144 &template[i]);
2152 &template[i]);
2160 &template[i]);
2166 rv = soft_parse_common_attrs(&template[i],
2193 * template, so we use the implied key type based on
2200 /* If still unspecified, template is incomplete */
2207 * The key type specified in the template does not
2220 * specified from the attribute template (keytype), it is
2501 * - Parse the object's template, and when an error is detected such as
2517 soft_build_secret_key_object(CK_ATTRIBUTE_PTR template, CK_ULONG ulAttrNum,
2552 switch (template[i].type) {
2556 keytype = *((CK_KEY_TYPE*)template[i].pValue);
2567 rv = soft_add_extra_attr(&template[i],
2587 if (*(CK_BBOOL *)template[i].pValue)
2592 if (*(CK_BBOOL *)template[i].pValue)
2597 if (*(CK_BBOOL *)template[i].pValue)
2604 if (*(CK_BBOOL *)template[i].pValue)
2611 if (*(CK_BBOOL *)template[i].pValue)
2618 if (*(CK_BBOOL *)template[i].pValue)
2625 if (*(CK_BBOOL *)template[i].pValue)
2632 if (*(CK_BBOOL *)template[i].pValue)
2639 if (*(CK_BBOOL *)template[i].pValue)
2646 if ((*(CK_BBOOL *)template[i].pValue) == B_FALSE)
2653 if ((template[i].ulValueLen == 0) ||
2654 (template[i].pValue == NULL)) {
2661 * Copyin attribute from template
2665 &template[i]);
2673 &template[i]);
2681 &template[i]);
2687 rv = soft_parse_common_attrs(&template[i],
2702 * template. Otherwise, returns error.
2714 * template, so we use the implied key type based on
2721 * The key type specified in the template
2732 * match the one found in the template.
2748 * specified from the attribute template (keytype), it is
3162 * - Parse the object's template, and when an error is detected such as
3172 soft_build_domain_parameters_object(CK_ATTRIBUTE_PTR template,
3205 switch (template[i].type) {
3209 keytype = *((CK_KEY_TYPE*)template[i].pValue);
3228 * Copyin big integer attribute from template
3232 &template[i]);
3240 &template[i]);
3248 &template[i]);
3264 &template[i]);
3270 rv = soft_parse_common_attrs(&template[i],
3392 * - Parse the object's template, and when an error is detected such as
3398 soft_build_certificate_object(CK_ATTRIBUTE_PTR template,
3421 switch (template[i].type) {
3424 *((CK_CERTIFICATE_TYPE*)template[i].pValue);
3469 switch (template[i].type) {
3473 &template[i]);
3478 &template[i]);
3484 &template[i]);
3491 rv = soft_add_extra_attr(&template[i],
3495 if ((*(CK_BBOOL *)template[i].pValue) ==
3504 &template[i], &object_type);
3510 switch (template[i].type) {
3514 &template[i]);
3519 &template[i]);
3524 &string_tmp, &template[i]);
3531 rv = soft_add_extra_attr(&template[i],
3536 if ((*(CK_BBOOL *)template[i].pValue) ==
3545 &template[i], &object_type);
3580 * Validate the attribute types in the object's template. Then,
3582 * the object specified in the template.
3593 soft_build_object(CK_ATTRIBUTE_PTR template, CK_ULONG ulAttrNum,
3600 if (template == NULL) {
3604 /* Validate the attribute type in the template. */
3605 rv = soft_validate_attr(template, ulAttrNum, &class);
3620 rv = soft_build_public_key_object(template, ulAttrNum,
3625 rv = soft_build_private_key_object(template, ulAttrNum,
3630 rv = soft_build_secret_key_object(template, ulAttrNum,
3635 rv = soft_build_domain_parameters_object(template, ulAttrNum,
3640 rv = soft_build_certificate_object(template, ulAttrNum,
3655 * Validate the attribute types in the object's template. Then,
3657 * the object specified in the template.
3661 soft_build_key(CK_ATTRIBUTE_PTR template, CK_ULONG ulAttrNum,
3669 /* Validate the attribute type in the template. */
3670 if ((template != NULL) && (ulAttrNum != 0)) {
3671 rv = soft_validate_attr(template, ulAttrNum, &temp_class);
3678 * the class from the template ("temp_class") is not specified,
3687 /* If object class is still not specified, template is incomplete. */
3691 /* Class should match if specified in both parameters and template. */
3708 rv = soft_build_public_key_object(template, ulAttrNum,
3714 rv = soft_build_private_key_object(template, ulAttrNum,
3720 rv = soft_build_secret_key_object(template, ulAttrNum,
3732 rv = soft_build_domain_parameters_object(template, ulAttrNum,
3754 soft_get_common_attrs(soft_object_t *object_p, CK_ATTRIBUTE_PTR template,
3760 switch (template->type) {
3764 template));
3768 template->ulValueLen = sizeof (CK_BBOOL);
3769 if (template->pValue == NULL) {
3773 *((CK_BBOOL *)template->pValue) = B_TRUE;
3775 *((CK_BBOOL *)template->pValue) = B_FALSE;
3780 template->ulValueLen = sizeof (CK_BBOOL);
3781 if (template->pValue == NULL) {
3785 *((CK_BBOOL *)template->pValue) = B_TRUE;
3787 *((CK_BBOOL *)template->pValue) = B_FALSE;
3791 template->ulValueLen = sizeof (CK_BBOOL);
3792 if (template->pValue == NULL) {
3796 *((CK_BBOOL *)template->pValue) = B_FALSE;
3798 *((CK_BBOOL *)template->pValue) = B_TRUE;
3803 template));
3810 template->ulValueLen = (CK_ULONG)-1;
3822 soft_get_common_key_attrs(soft_object_t *object_p, CK_ATTRIBUTE_PTR template)
3825 switch (template->type) {
3829 template));
3838 template));
3843 LOCAL_BOOL_ON, template));
3847 DERIVE_BOOL_ON, template));
3851 template));
3865 CK_ATTRIBUTE_PTR template)
3871 switch (template->type) {
3879 template));
3884 ENCRYPT_BOOL_ON, template));
3888 VERIFY_BOOL_ON, template));
3892 VERIFY_RECOVER_BOOL_ON, template));
3896 WRAP_BOOL_ON, template));
3900 TRUSTED_BOOL_ON, template));
3909 OBJ_PUB_RSA_MOD(object_p), template));
3911 template->ulValueLen = (CK_ULONG)-1;
3918 OBJ_PUB_RSA_PUBEXPO(object_p), template));
3920 template->ulValueLen = (CK_ULONG)-1;
3927 OBJ_PUB_RSA_MOD_BITS(object_p), template));
3929 template->ulValueLen = (CK_ULONG)-1;
3937 OBJ_PUB_DSA_PRIME(object_p), template));
3941 OBJ_PUB_DH_PRIME(object_p), template));
3945 OBJ_PUB_DH942_PRIME(object_p), template));
3948 template->ulValueLen = (CK_ULONG)-1;
3956 OBJ_PUB_DSA_SUBPRIME(object_p), template));
3960 OBJ_PUB_DH942_SUBPRIME(object_p), template));
3963 template->ulValueLen = (CK_ULONG)-1;
3971 OBJ_PUB_DSA_BASE(object_p), template));
3975 OBJ_PUB_DH_BASE(object_p), template));
3979 OBJ_PUB_DH942_BASE(object_p), template));
3982 template->ulValueLen = (CK_ULONG)-1;
3988 OBJ_PUB_EC_POINT(object_p), template));
3994 OBJ_PUB_DSA_VALUE(object_p), template));
3998 OBJ_PUB_DH_VALUE(object_p), template));
4002 OBJ_PUB_DH942_VALUE(object_p), template));
4005 template->ulValueLen = (CK_ULONG)-1;
4016 rv = soft_get_common_key_attrs(object_p, template);
4018 rv = soft_get_common_attrs(object_p, template,
4038 CK_ATTRIBUTE_PTR template)
4053 switch (template->type) {
4061 template->ulValueLen = (CK_ULONG)-1;
4066 switch (template->type) {
4074 template));
4079 SENSITIVE_BOOL_ON, template));
4083 SECONDARY_AUTH_BOOL_ON, template));
4087 DECRYPT_BOOL_ON, template));
4091 SIGN_BOOL_ON, template));
4095 SIGN_RECOVER_BOOL_ON, template));
4099 UNWRAP_BOOL_ON, template));
4103 EXTRACTABLE_BOOL_ON, template));
4107 ALWAYS_SENSITIVE_BOOL_ON, template));
4111 NEVER_EXTRACTABLE_BOOL_ON, template));
4116 OBJ_PRI_RSA_MOD(object_p), template));
4118 template->ulValueLen = (CK_ULONG)-1;
4126 OBJ_PRI_RSA_PUBEXPO(object_p), template));
4128 template->ulValueLen = (CK_ULONG)-1;
4136 OBJ_PRI_RSA_PRIEXPO(object_p), template));
4138 template->ulValueLen = (CK_ULONG)-1;
4146 OBJ_PRI_RSA_PRIME1(object_p), template));
4148 template->ulValueLen = (CK_ULONG)-1;
4156 OBJ_PRI_RSA_PRIME2(object_p), template));
4158 template->ulValueLen = (CK_ULONG)-1;
4166 OBJ_PRI_RSA_EXPO1(object_p), template));
4168 template->ulValueLen = (CK_ULONG)-1;
4176 OBJ_PRI_RSA_EXPO2(object_p), template));
4178 template->ulValueLen = (CK_ULONG)-1;
4186 OBJ_PRI_RSA_COEF(object_p), template));
4188 template->ulValueLen = (CK_ULONG)-1;
4196 OBJ_PRI_DH_VAL_BITS(object_p), template));
4198 template->ulValueLen = (CK_ULONG)-1;
4207 OBJ_PRI_DSA_PRIME(object_p), template));
4211 OBJ_PRI_DH_PRIME(object_p), template));
4215 OBJ_PRI_DH942_PRIME(object_p), template));
4218 template->ulValueLen = (CK_ULONG)-1;
4226 OBJ_PRI_DSA_SUBPRIME(object_p), template));
4230 OBJ_PRI_DH942_SUBPRIME(object_p), template));
4233 template->ulValueLen = (CK_ULONG)-1;
4241 OBJ_PRI_DSA_BASE(object_p), template));
4245 OBJ_PRI_DH_BASE(object_p), template));
4249 OBJ_PRI_DH942_BASE(object_p), template));
4252 template->ulValueLen = (CK_ULONG)-1;
4260 OBJ_PRI_DSA_VALUE(object_p), template));
4264 OBJ_PRI_DH_VALUE(object_p), template));
4268 OBJ_PRI_DH942_VALUE(object_p), template));
4272 OBJ_PRI_EC_VALUE(object_p), template));
4275 template->ulValueLen = (CK_ULONG)-1;
4286 rv = soft_get_common_key_attrs(object_p, template);
4288 rv = soft_get_common_attrs(object_p, template,
4308 CK_ATTRIBUTE_PTR template)
4314 switch (template->type) {
4319 SENSITIVE_BOOL_ON, template));
4323 ENCRYPT_BOOL_ON, template));
4327 DECRYPT_BOOL_ON, template));
4331 SIGN_BOOL_ON, template));
4335 VERIFY_BOOL_ON, template));
4339 WRAP_BOOL_ON, template));
4343 UNWRAP_BOOL_ON, template));
4347 EXTRACTABLE_BOOL_ON, template));
4351 ALWAYS_SENSITIVE_BOOL_ON, template));
4355 NEVER_EXTRACTABLE_BOOL_ON, template));
4366 template->ulValueLen = (CK_ULONG)-1;
4380 if (template->type == CKA_VALUE_LEN) {
4383 template));
4387 template));
4390 template->ulValueLen = (CK_ULONG)-1;
4403 rv = soft_get_common_key_attrs(object_p, template);
4405 rv = soft_get_common_attrs(object_p, template,
4422 CK_ATTRIBUTE_PTR template)
4428 switch (template->type) {
4432 template));
4436 LOCAL_BOOL_ON, template));
4442 OBJ_DOM_DSA_PRIME(object_p), template));
4446 OBJ_DOM_DH_PRIME(object_p), template));
4450 OBJ_DOM_DH942_PRIME(object_p), template));
4453 template->ulValueLen = (CK_ULONG)-1;
4461 OBJ_DOM_DSA_SUBPRIME(object_p), template));
4465 OBJ_DOM_DH942_SUBPRIME(object_p), template));
4468 template->ulValueLen = (CK_ULONG)-1;
4476 OBJ_DOM_DSA_BASE(object_p), template));
4480 OBJ_DOM_DH_BASE(object_p), template));
4484 OBJ_DOM_DH942_BASE(object_p), template));
4487 template->ulValueLen = (CK_ULONG)-1;
4495 OBJ_DOM_DSA_PRIME_BITS(object_p), template));
4499 OBJ_DOM_DH_PRIME_BITS(object_p), template));
4503 OBJ_DOM_DH942_PRIME_BITS(object_p), template));
4506 template->ulValueLen = (CK_ULONG)-1;
4514 OBJ_DOM_DH942_SUBPRIME_BITS(object_p), template));
4517 template->ulValueLen = (CK_ULONG)-1;
4525 rv = soft_get_common_attrs(object_p, template,
4540 CK_ATTRIBUTE_PTR template)
4545 switch (template->type) {
4549 X509_CERT_SUBJECT(object_p), template));
4555 X509_CERT_VALUE(object_p), template));
4558 X509_ATTR_CERT_VALUE(object_p), template));
4564 X509_ATTR_CERT_OWNER(object_p), template));
4570 return (get_cert_attr_from_object(&src, template));
4574 TRUSTED_BOOL_ON, template));
4581 template));
4584 return (soft_get_common_attrs(object_p, template,
4598 CK_ATTRIBUTE_PTR template, boolean_t copy)
4602 switch (template->type) {
4623 template->type, template));
4630 template->type, template));
4636 template->type, template));
4640 object_p, template, copy));
4658 soft_get_attribute(soft_object_t *object_p, CK_ATTRIBUTE_PTR template)
4666 rv = soft_get_public_key_attribute(object_p, template);
4670 rv = soft_get_private_key_attribute(object_p, template);
4674 rv = soft_get_secret_key_attribute(object_p, template);
4678 rv = soft_get_domain_parameters_attribute(object_p, template);
4682 rv = soft_get_certificate_attribute(object_p, template);
4691 template->ulValueLen = (CK_ULONG)-1;
4701 CK_ATTRIBUTE_PTR template, boolean_t copy)
4706 switch (template->type) {
4710 if ((*(CK_BBOOL *)template->pValue) == B_TRUE) {
4723 if ((*(CK_BBOOL *)template->pValue) == B_TRUE) {
4749 if ((*(CK_BBOOL *)template->pValue) == TRUE)
4777 CK_ATTRIBUTE_PTR template, boolean_t copy)
4780 switch (template->type) {
4788 CKA_LABEL, template));
4792 CKA_ID, template));
4796 CKA_START_DATE, template));
4800 CKA_END_DATE, template));
4804 DERIVE_BOOL_ON, template));
4813 template, copy));
4828 CK_ATTRIBUTE_PTR template, boolean_t copy)
4832 switch (template->type) {
4836 CKA_SUBJECT, template));
4840 ENCRYPT_BOOL_ON, template));
4844 VERIFY_BOOL_ON, template));
4848 VERIFY_RECOVER_BOOL_ON, template));
4852 WRAP_BOOL_ON, template));
4881 template, copy));
4900 CK_ATTRIBUTE_PTR template, boolean_t copy)
4904 switch (template->type) {
4908 CKA_SUBJECT, template));
4914 if (((*(CK_BBOOL *)template->pValue) == B_FALSE) &&
4919 if (*(CK_BBOOL *)template->pValue)
4925 DECRYPT_BOOL_ON, template));
4929 SIGN_BOOL_ON, template));
4933 SIGN_RECOVER_BOOL_ON, template));
4937 UNWRAP_BOOL_ON, template));
4943 if ((*(CK_BBOOL *)template->pValue) &&
4948 if ((*(CK_BBOOL *)template->pValue) == B_FALSE)
4990 template, copy));
5008 CK_ATTRIBUTE_PTR template, boolean_t copy)
5012 switch (template->type) {
5018 if (((*(CK_BBOOL *)template->pValue) == B_FALSE) &&
5023 if (*(CK_BBOOL *)template->pValue)
5029 ENCRYPT_BOOL_ON, template));
5033 DECRYPT_BOOL_ON, template));
5037 SIGN_BOOL_ON, template));
5041 VERIFY_BOOL_ON, template));
5045 WRAP_BOOL_ON, template));
5049 UNWRAP_BOOL_ON, template));
5055 if ((*(CK_BBOOL *)template->pValue) &&
5060 if ((*(CK_BBOOL *)template->pValue) == B_FALSE)
5080 template, copy));
5103 soft_set_attribute(soft_object_t *object_p, CK_ATTRIBUTE_PTR template,
5113 rv = soft_set_public_key_attribute(object_p, template, copy);
5117 rv = soft_set_private_key_attribute(object_p, template, copy);
5121 rv = soft_set_secret_key_attribute(object_p, template, copy);
5125 switch (template->type) {
5133 CKA_LABEL, template));
5138 rv = soft_set_certificate_attribute(object_p, template, copy);
5143 * If the template specifies a value of an attribute
6357 * attributes on template .
6360 * of these attributes are in the template, make a list of classes
6490 CK_ULONG num_pclasses, CK_ATTRIBUTE *template, CK_ULONG num_attr)
6522 tmpl_attr = &(template[i]);
7056 * this case, it only matches the template's
7057 * attribute if the template's value length