Lines Matching refs:operation
37 /* Assert that an operation is (not) active.
38 * This serves as a proxy for checking if the operation is aborted. */
39 #define ASSERT_OPERATION_IS_ACTIVE(operation) TEST_ASSERT(operation.id != 0)
40 #define ASSERT_OPERATION_IS_INACTIVE(operation) TEST_ASSERT(operation.id == 0)
160 psa_mac_operation_t *operation,
171 *status = psa_mac_sign_setup(operation, key, alg);
173 PSA_ASSERT(psa_mac_abort(operation));
175 * test the resulting state of the operation object. */
177 TEST_EQUAL(psa_mac_sign_setup(operation, key, alg), *status);
192 psa_cipher_operation_t *operation,
203 *status = psa_cipher_encrypt_setup(operation, key, alg);
205 PSA_ASSERT(psa_cipher_abort(operation));
207 * test the resulting state of the operation object. */
209 TEST_EQUAL(psa_cipher_encrypt_setup(operation, key, alg),
326 * \param is_encrypt If non-zero this is an encryption operation.
346 psa_aead_operation_t operation = PSA_AEAD_OPERATION_INIT;
417 status = psa_aead_encrypt_setup(&operation, key, alg);
419 status = psa_aead_decrypt_setup(&operation, key, alg);
422 /* If the operation is not supported, just skip and not fail in case the
433 PSA_ASSERT(psa_aead_set_nonce(&operation, nonce->x, nonce->len));
435 PSA_ASSERT(psa_aead_set_lengths(&operation, additional_data->len,
437 PSA_ASSERT(psa_aead_set_nonce(&operation, nonce->x, nonce->len));
439 PSA_ASSERT(psa_aead_set_nonce(&operation, nonce->x, nonce->len));
441 PSA_ASSERT(psa_aead_set_lengths(&operation, additional_data->len,
460 PSA_ASSERT(psa_aead_update_ad(&operation,
467 PSA_ASSERT(psa_aead_update_ad(&operation, additional_data->x,
490 PSA_ASSERT(psa_aead_update(&operation,
505 PSA_ASSERT(psa_aead_update(&operation, input_data->x,
511 PSA_ASSERT(psa_aead_finish(&operation, final_data,
517 PSA_ASSERT(psa_aead_verify(&operation, final_data,
566 psa_aead_abort(&operation);
585 * \param is_verify If non-zero this is a verify operation.
601 psa_mac_operation_t operation = PSA_MAC_OPERATION_INIT;
628 status = psa_mac_verify_setup(&operation, key, alg);
630 status = psa_mac_sign_setup(&operation, key, alg);
650 PSA_ASSERT(psa_mac_update(&operation,
656 PSA_ASSERT(psa_mac_update(&operation, input_data->x,
661 PSA_ASSERT(psa_mac_verify_finish(&operation, expected_output->x,
664 PSA_ASSERT(psa_mac_sign_finish(&operation, mac,
675 psa_mac_abort(&operation);
1220 value of max_ops that a successful operation should take more than one op
2150 psa_mac_operation_t operation = PSA_MAC_OPERATION_INIT;
2172 status = psa_mac_sign_setup(&operation, key, exercise_alg);
2184 PSA_ASSERT(psa_mac_abort(&operation));
2185 status = psa_mac_sign_setup(&operation, key, exercise_alg);
2187 status = psa_mac_update(&operation, input, 128);
2189 TEST_EQUAL(psa_mac_sign_finish(&operation, mac, PSA_MAC_MAX_SIZE,
2198 PSA_ASSERT(psa_mac_abort(&operation));
2211 status = psa_mac_verify_setup(&operation, key, exercise_alg);
2213 status = psa_mac_update(&operation, input, 128);
2215 status = psa_mac_verify_finish(&operation, mac, mac_len);
2228 psa_mac_abort(&operation);
2231 status = psa_mac_verify_setup(&operation, key, exercise_alg);
2235 psa_mac_abort(&operation);
2250 psa_cipher_operation_t operation = PSA_CIPHER_OPERATION_INIT;
2291 status = psa_cipher_encrypt_setup(&operation, key, exercise_alg);
2298 psa_cipher_abort(&operation);
2312 status = psa_cipher_decrypt_setup(&operation, key, exercise_alg);
2321 psa_cipher_abort(&operation);
2341 psa_aead_operation_t operation = PSA_AEAD_OPERATION_INIT;
2381 status = psa_aead_encrypt_setup(&operation, key, exercise_alg);
2405 PSA_ASSERT(psa_aead_abort(&operation));
2406 status = psa_aead_decrypt_setup(&operation, key, exercise_alg);
2414 PSA_ASSERT(psa_aead_abort(&operation));
2599 psa_key_derivation_operation_t operation = PSA_KEY_DERIVATION_OPERATION_INIT;
2611 PSA_ASSERT(psa_key_derivation_setup(&operation, exercise_alg));
2616 &operation,
2621 status = psa_key_derivation_input_key(&operation,
2633 psa_key_derivation_abort(&operation);
2650 psa_key_derivation_operation_t operation = PSA_KEY_DERIVATION_OPERATION_INIT;
2663 PSA_ASSERT(psa_key_derivation_setup(&operation, exercise_alg));
2664 status = mbedtls_test_psa_key_agreement_with_self(&operation, key, 0);
2669 psa_key_derivation_abort(&operation);
2733 psa_key_derivation_operation_t operation = PSA_KEY_DERIVATION_OPERATION_INIT;
2751 psa_key_derivation_abort(&operation);
2926 /* A freshly-initialized hash operation should not be usable. */
2934 /* A default hash operation should be abortable without error. */
2950 psa_hash_operation_t operation = PSA_HASH_OPERATION_INIT;
2964 status = psa_hash_setup(&operation, alg);
2968 PSA_ASSERT(psa_hash_abort(&operation));
2971 * test the resulting state of the operation object. */
2973 TEST_EQUAL(psa_hash_setup(&operation, alg), status);
2976 /* Now the operation object should be reusable. */
2978 PSA_ASSERT(psa_hash_setup(&operation, KNOWN_SUPPORTED_HASH_ALG));
2979 PSA_ASSERT(psa_hash_abort(&operation));
2996 psa_hash_operation_t operation = PSA_HASH_OPERATION_INIT;
3011 status = psa_hash_setup(&operation, alg);
3013 status = psa_hash_update(&operation, input->x, input->len);
3015 status = psa_hash_finish(&operation, output, output_size,
3030 PSA_ASSERT(psa_hash_abort(&operation));
3043 psa_hash_operation_t operation = PSA_HASH_OPERATION_INIT;
3054 status = psa_hash_setup(&operation, alg);
3056 status = psa_hash_update(&operation, input->x, input->len);
3058 status = psa_hash_verify(&operation, reference_hash->x,
3069 PSA_ASSERT(psa_hash_abort(&operation));
3081 psa_hash_operation_t operation = PSA_HASH_OPERATION_INIT;
3095 PSA_ASSERT(psa_hash_setup(&operation, alg));
3096 PSA_ASSERT(psa_hash_update(&operation, input->x, input->len));
3097 PSA_ASSERT(psa_hash_finish(&operation, output,
3113 PSA_ASSERT(psa_hash_setup(&operation, alg));
3114 PSA_ASSERT(psa_hash_update(&operation, input->x, input->len));
3115 PSA_ASSERT(psa_hash_finish(&operation, output,
3126 PSA_ASSERT(psa_hash_setup(&operation, alg));
3127 PSA_ASSERT(psa_hash_update(&operation, input->x, input->len));
3128 PSA_ASSERT(psa_hash_verify(&operation, output,
3137 PSA_ASSERT(psa_hash_setup(&operation, alg));
3138 PSA_ASSERT(psa_hash_update(&operation, input->x, input->len));
3139 TEST_EQUAL(psa_hash_verify(&operation, output, output_length + 1),
3148 PSA_ASSERT(psa_hash_setup(&operation, alg));
3149 PSA_ASSERT(psa_hash_update(&operation, input->x, input->len));
3150 TEST_EQUAL(psa_hash_verify(&operation, output, output_length - 1),
3164 PSA_ASSERT(psa_hash_setup(&operation, alg));
3165 PSA_ASSERT(psa_hash_update(&operation, input->x, input->len));
3166 TEST_EQUAL(psa_hash_verify(&operation, output, output_length),
3173 PSA_ASSERT(psa_hash_abort(&operation));
3191 psa_hash_operation_t operation = PSA_HASH_OPERATION_INIT;
3196 PSA_ASSERT(psa_hash_setup(&operation, alg));
3197 ASSERT_OPERATION_IS_ACTIVE(operation);
3198 TEST_EQUAL(psa_hash_setup(&operation, alg),
3200 ASSERT_OPERATION_IS_INACTIVE(operation);
3201 PSA_ASSERT(psa_hash_abort(&operation));
3202 ASSERT_OPERATION_IS_INACTIVE(operation);
3205 TEST_EQUAL(psa_hash_update(&operation, input, sizeof(input)),
3207 PSA_ASSERT(psa_hash_abort(&operation));
3210 PSA_ASSERT(psa_hash_setup(&operation, alg));
3211 operation.id = UINT_MAX;
3212 ASSERT_OPERATION_IS_ACTIVE(operation);
3213 TEST_EQUAL(psa_hash_update(&operation, input, sizeof(input)),
3215 ASSERT_OPERATION_IS_INACTIVE(operation);
3216 PSA_ASSERT(psa_hash_abort(&operation));
3217 ASSERT_OPERATION_IS_INACTIVE(operation);
3220 PSA_ASSERT(psa_hash_setup(&operation, alg));
3221 PSA_ASSERT(psa_hash_finish(&operation,
3223 TEST_EQUAL(psa_hash_update(&operation, input, sizeof(input)),
3225 PSA_ASSERT(psa_hash_abort(&operation));
3228 TEST_EQUAL(psa_hash_verify(&operation,
3231 PSA_ASSERT(psa_hash_abort(&operation));
3234 PSA_ASSERT(psa_hash_setup(&operation, alg));
3235 PSA_ASSERT(psa_hash_finish(&operation,
3237 TEST_EQUAL(psa_hash_verify(&operation,
3240 PSA_ASSERT(psa_hash_abort(&operation));
3243 PSA_ASSERT(psa_hash_setup(&operation, alg));
3244 ASSERT_OPERATION_IS_ACTIVE(operation);
3245 PSA_ASSERT(psa_hash_verify(&operation,
3247 ASSERT_OPERATION_IS_INACTIVE(operation);
3248 TEST_EQUAL(psa_hash_verify(&operation,
3251 ASSERT_OPERATION_IS_INACTIVE(operation);
3252 PSA_ASSERT(psa_hash_abort(&operation));
3255 TEST_EQUAL(psa_hash_finish(&operation,
3258 PSA_ASSERT(psa_hash_abort(&operation));
3261 PSA_ASSERT(psa_hash_setup(&operation, alg));
3262 PSA_ASSERT(psa_hash_finish(&operation,
3264 TEST_EQUAL(psa_hash_finish(&operation,
3267 PSA_ASSERT(psa_hash_abort(&operation));
3270 PSA_ASSERT(psa_hash_setup(&operation, alg));
3271 PSA_ASSERT(psa_hash_verify(&operation,
3273 TEST_EQUAL(psa_hash_finish(&operation,
3276 PSA_ASSERT(psa_hash_abort(&operation));
3295 psa_hash_operation_t operation = PSA_HASH_OPERATION_INIT;
3300 PSA_ASSERT(psa_hash_setup(&operation, alg));
3301 ASSERT_OPERATION_IS_ACTIVE(operation);
3302 TEST_EQUAL(psa_hash_verify(&operation, hash, expected_size - 1),
3304 ASSERT_OPERATION_IS_INACTIVE(operation);
3305 PSA_ASSERT(psa_hash_abort(&operation));
3306 ASSERT_OPERATION_IS_INACTIVE(operation);
3309 PSA_ASSERT(psa_hash_setup(&operation, alg));
3310 TEST_EQUAL(psa_hash_verify(&operation, hash + 1, expected_size),
3314 PSA_ASSERT(psa_hash_setup(&operation, alg));
3315 TEST_EQUAL(psa_hash_verify(&operation, hash, sizeof(hash)),
3329 psa_hash_operation_t operation = PSA_HASH_OPERATION_INIT;
3335 PSA_ASSERT(psa_hash_setup(&operation, alg));
3336 TEST_EQUAL(psa_hash_finish(&operation,
3446 /* A freshly-initialized MAC operation should not be usable. */
3457 /* A default MAC operation should be abortable without error. */
3473 psa_mac_operation_t operation = PSA_MAC_OPERATION_INIT;
3482 &operation, &status)) {
3487 /* The operation object should be reusable. */
3493 &operation, &status)) {
3516 psa_mac_operation_t operation = PSA_MAC_OPERATION_INIT;
3535 TEST_EQUAL(psa_mac_update(&operation, input, sizeof(input)),
3537 PSA_ASSERT(psa_mac_abort(&operation));
3540 TEST_EQUAL(psa_mac_sign_finish(&operation, sign_mac, sizeof(sign_mac),
3543 PSA_ASSERT(psa_mac_abort(&operation));
3546 TEST_EQUAL(psa_mac_verify_finish(&operation,
3549 PSA_ASSERT(psa_mac_abort(&operation));
3552 PSA_ASSERT(psa_mac_sign_setup(&operation, key, alg));
3553 ASSERT_OPERATION_IS_ACTIVE(operation);
3554 TEST_EQUAL(psa_mac_sign_setup(&operation, key, alg),
3556 ASSERT_OPERATION_IS_INACTIVE(operation);
3557 PSA_ASSERT(psa_mac_abort(&operation));
3558 ASSERT_OPERATION_IS_INACTIVE(operation);
3561 PSA_ASSERT(psa_mac_sign_setup(&operation, key, alg));
3562 PSA_ASSERT(psa_mac_update(&operation, input, sizeof(input)));
3563 PSA_ASSERT(psa_mac_sign_finish(&operation,
3566 TEST_EQUAL(psa_mac_update(&operation, input, sizeof(input)),
3568 PSA_ASSERT(psa_mac_abort(&operation));
3571 PSA_ASSERT(psa_mac_verify_setup(&operation, key, alg));
3572 PSA_ASSERT(psa_mac_update(&operation, input, sizeof(input)));
3573 PSA_ASSERT(psa_mac_verify_finish(&operation,
3575 TEST_EQUAL(psa_mac_update(&operation, input, sizeof(input)),
3577 PSA_ASSERT(psa_mac_abort(&operation));
3580 PSA_ASSERT(psa_mac_sign_setup(&operation, key, alg));
3581 PSA_ASSERT(psa_mac_update(&operation, input, sizeof(input)));
3582 PSA_ASSERT(psa_mac_sign_finish(&operation,
3585 TEST_EQUAL(psa_mac_sign_finish(&operation,
3589 PSA_ASSERT(psa_mac_abort(&operation));
3592 PSA_ASSERT(psa_mac_verify_setup(&operation, key, alg));
3593 PSA_ASSERT(psa_mac_update(&operation, input, sizeof(input)));
3594 PSA_ASSERT(psa_mac_verify_finish(&operation,
3596 TEST_EQUAL(psa_mac_verify_finish(&operation,
3599 PSA_ASSERT(psa_mac_abort(&operation));
3602 PSA_ASSERT(psa_mac_sign_setup(&operation, key, alg));
3603 PSA_ASSERT(psa_mac_update(&operation, input, sizeof(input)));
3604 ASSERT_OPERATION_IS_ACTIVE(operation);
3605 TEST_EQUAL(psa_mac_verify_finish(&operation,
3608 ASSERT_OPERATION_IS_INACTIVE(operation);
3609 PSA_ASSERT(psa_mac_abort(&operation));
3610 ASSERT_OPERATION_IS_INACTIVE(operation);
3613 PSA_ASSERT(psa_mac_verify_setup(&operation, key, alg));
3614 PSA_ASSERT(psa_mac_update(&operation, input, sizeof(input)));
3615 ASSERT_OPERATION_IS_ACTIVE(operation);
3616 TEST_EQUAL(psa_mac_sign_finish(&operation,
3620 ASSERT_OPERATION_IS_INACTIVE(operation);
3621 PSA_ASSERT(psa_mac_abort(&operation));
3622 ASSERT_OPERATION_IS_INACTIVE(operation);
3681 psa_mac_operation_t operation = PSA_MAC_OPERATION_INIT;
3732 PSA_ASSERT(psa_mac_sign_setup(&operation, key, alg));
3733 PSA_ASSERT(psa_mac_update(&operation,
3735 TEST_EQUAL(psa_mac_sign_finish(&operation,
3739 PSA_ASSERT(psa_mac_abort(&operation));
3750 psa_mac_abort(&operation);
3767 psa_mac_operation_t operation = PSA_MAC_OPERATION_INIT;
3787 PSA_ASSERT(psa_mac_verify_setup(&operation, key, alg));
3788 PSA_ASSERT(psa_mac_update(&operation,
3790 PSA_ASSERT(psa_mac_verify_finish(&operation,
3802 PSA_ASSERT(psa_mac_verify_setup(&operation, key, alg));
3803 PSA_ASSERT(psa_mac_update(&operation,
3805 TEST_EQUAL(psa_mac_verify_finish(&operation,
3819 PSA_ASSERT(psa_mac_verify_setup(&operation, key, alg));
3820 PSA_ASSERT(psa_mac_update(&operation,
3822 TEST_EQUAL(psa_mac_verify_finish(&operation,
3837 PSA_ASSERT(psa_mac_verify_setup(&operation, key, alg));
3838 PSA_ASSERT(psa_mac_update(&operation,
3840 TEST_EQUAL(psa_mac_verify_finish(&operation,
3848 psa_mac_abort(&operation);
3871 /* A freshly-initialized cipher operation should not be usable. */
3888 /* A default cipher operation should be abortable without error. */
3904 psa_cipher_operation_t operation = PSA_CIPHER_OPERATION_INIT;
3913 &operation, &status)) {
3918 /* The operation object should be reusable. */
3924 &operation, &status)) {
3931 psa_cipher_abort(&operation);
3943 psa_cipher_operation_t operation = PSA_CIPHER_OPERATION_INIT;
3964 PSA_ASSERT(psa_cipher_encrypt_setup(&operation, key, alg));
3965 ASSERT_OPERATION_IS_ACTIVE(operation);
3966 TEST_EQUAL(psa_cipher_encrypt_setup(&operation, key, alg),
3968 ASSERT_OPERATION_IS_INACTIVE(operation);
3969 PSA_ASSERT(psa_cipher_abort(&operation));
3970 ASSERT_OPERATION_IS_INACTIVE(operation);
3973 PSA_ASSERT(psa_cipher_decrypt_setup(&operation, key, alg));
3974 ASSERT_OPERATION_IS_ACTIVE(operation);
3975 TEST_EQUAL(psa_cipher_decrypt_setup(&operation, key, alg),
3977 ASSERT_OPERATION_IS_INACTIVE(operation);
3978 PSA_ASSERT(psa_cipher_abort(&operation));
3979 ASSERT_OPERATION_IS_INACTIVE(operation);
3982 TEST_EQUAL(psa_cipher_generate_iv(&operation,
3986 PSA_ASSERT(psa_cipher_abort(&operation));
3989 PSA_ASSERT(psa_cipher_encrypt_setup(&operation, key, alg));
3990 PSA_ASSERT(psa_cipher_generate_iv(&operation,
3993 ASSERT_OPERATION_IS_ACTIVE(operation);
3994 TEST_EQUAL(psa_cipher_generate_iv(&operation,
3998 ASSERT_OPERATION_IS_INACTIVE(operation);
3999 PSA_ASSERT(psa_cipher_abort(&operation));
4000 ASSERT_OPERATION_IS_INACTIVE(operation);
4003 PSA_ASSERT(psa_cipher_encrypt_setup(&operation, key, alg));
4004 PSA_ASSERT(psa_cipher_set_iv(&operation,
4006 TEST_EQUAL(psa_cipher_generate_iv(&operation,
4010 PSA_ASSERT(psa_cipher_abort(&operation));
4013 TEST_EQUAL(psa_cipher_set_iv(&operation,
4016 PSA_ASSERT(psa_cipher_abort(&operation));
4019 PSA_ASSERT(psa_cipher_encrypt_setup(&operation, key, alg));
4020 PSA_ASSERT(psa_cipher_set_iv(&operation,
4022 ASSERT_OPERATION_IS_ACTIVE(operation);
4023 TEST_EQUAL(psa_cipher_set_iv(&operation,
4026 ASSERT_OPERATION_IS_INACTIVE(operation);
4027 PSA_ASSERT(psa_cipher_abort(&operation));
4028 ASSERT_OPERATION_IS_INACTIVE(operation);
4031 PSA_ASSERT(psa_cipher_encrypt_setup(&operation, key, alg));
4032 PSA_ASSERT(psa_cipher_generate_iv(&operation,
4035 TEST_EQUAL(psa_cipher_set_iv(&operation,
4038 PSA_ASSERT(psa_cipher_abort(&operation));
4041 TEST_EQUAL(psa_cipher_update(&operation,
4046 PSA_ASSERT(psa_cipher_abort(&operation));
4049 PSA_ASSERT(psa_cipher_encrypt_setup(&operation, key, alg));
4050 ASSERT_OPERATION_IS_ACTIVE(operation);
4051 TEST_EQUAL(psa_cipher_update(&operation,
4056 ASSERT_OPERATION_IS_INACTIVE(operation);
4057 PSA_ASSERT(psa_cipher_abort(&operation));
4058 ASSERT_OPERATION_IS_INACTIVE(operation);
4061 PSA_ASSERT(psa_cipher_encrypt_setup(&operation, key, alg));
4062 PSA_ASSERT(psa_cipher_set_iv(&operation,
4064 PSA_ASSERT(psa_cipher_finish(&operation,
4066 TEST_EQUAL(psa_cipher_update(&operation,
4071 PSA_ASSERT(psa_cipher_abort(&operation));
4074 TEST_EQUAL(psa_cipher_finish(&operation,
4077 PSA_ASSERT(psa_cipher_abort(&operation));
4080 PSA_ASSERT(psa_cipher_encrypt_setup(&operation, key, alg));
4083 ASSERT_OPERATION_IS_ACTIVE(operation);
4084 TEST_EQUAL(psa_cipher_finish(&operation,
4087 ASSERT_OPERATION_IS_INACTIVE(operation);
4088 PSA_ASSERT(psa_cipher_abort(&operation));
4089 ASSERT_OPERATION_IS_INACTIVE(operation);
4092 PSA_ASSERT(psa_cipher_encrypt_setup(&operation, key, alg));
4093 PSA_ASSERT(psa_cipher_set_iv(&operation,
4095 PSA_ASSERT(psa_cipher_finish(&operation,
4097 TEST_EQUAL(psa_cipher_finish(&operation,
4100 PSA_ASSERT(psa_cipher_abort(&operation));
4105 psa_cipher_abort(&operation);
4129 psa_cipher_operation_t operation = PSA_CIPHER_OPERATION_INIT;
4154 status = psa_cipher_encrypt_setup(&operation, key, alg);
4157 PSA_ASSERT(psa_cipher_generate_iv(&operation,
4162 status = psa_cipher_update(&operation, input->x, input->len,
4168 status = psa_cipher_finish(&operation, output + output_length,
4181 psa_cipher_abort(&operation);
4194 psa_cipher_operation_t operation = PSA_CIPHER_OPERATION_INIT;
4210 PSA_ASSERT(psa_cipher_encrypt_setup(&operation, key, alg));
4211 TEST_EQUAL(expected_result, psa_cipher_set_iv(&operation, output,
4215 psa_cipher_abort(&operation);
4229 psa_cipher_operation_t operation = PSA_CIPHER_OPERATION_INIT;
4261 PSA_ASSERT(psa_cipher_encrypt_setup(&operation, key, alg));
4262 TEST_EQUAL(psa_cipher_set_iv(&operation, iv, sizeof(iv)),
4264 PSA_ASSERT(psa_cipher_decrypt_setup(&operation, key, alg));
4265 TEST_EQUAL(psa_cipher_set_iv(&operation, iv, sizeof(iv)),
4269 PSA_ASSERT(psa_cipher_encrypt_setup(&operation, key, alg));
4270 TEST_EQUAL(psa_cipher_generate_iv(&operation, iv, sizeof(iv),
4273 PSA_ASSERT(psa_cipher_decrypt_setup(&operation, key, alg));
4274 TEST_EQUAL(psa_cipher_generate_iv(&operation, iv, sizeof(iv),
4279 PSA_ASSERT(psa_cipher_encrypt_setup(&operation, key, alg));
4282 PSA_ASSERT(psa_cipher_update(&operation,
4288 PSA_ASSERT(psa_cipher_finish(&operation,
4297 PSA_ASSERT(psa_cipher_decrypt_setup(&operation, key, alg));
4300 PSA_ASSERT(psa_cipher_update(&operation,
4306 PSA_ASSERT(psa_cipher_finish(&operation,
4331 PSA_ASSERT(psa_cipher_abort(&operation));
4333 psa_cipher_abort(&operation);
4346 psa_cipher_operation_t operation = PSA_CIPHER_OPERATION_INIT;
4368 status = psa_cipher_encrypt_setup(&operation, key, alg);
4373 psa_cipher_abort(&operation);
4396 psa_cipher_operation_t operation = PSA_CIPHER_OPERATION_INIT;
4423 PSA_ASSERT(psa_cipher_encrypt_setup(&operation, key, alg));
4424 PSA_ASSERT(psa_cipher_set_iv(&operation, output1, iv_size));
4426 PSA_ASSERT(psa_cipher_update(&operation,
4436 PSA_ASSERT(psa_cipher_finish(&operation,
4446 PSA_ASSERT(psa_cipher_abort(&operation));
4451 psa_cipher_abort(&operation);
4480 psa_cipher_operation_t operation = PSA_CIPHER_OPERATION_INIT;
4492 PSA_ASSERT(psa_cipher_encrypt_setup(&operation, key, alg));
4495 PSA_ASSERT(psa_cipher_set_iv(&operation, iv->x, iv->len));
4503 PSA_ASSERT(psa_cipher_update(&operation, input->x, first_part_size,
4514 PSA_ASSERT(psa_cipher_update(&operation,
4531 status = psa_cipher_finish(&operation,
4544 PSA_ASSERT(psa_cipher_abort(&operation));
4551 psa_cipher_abort(&operation);
4579 psa_cipher_operation_t operation = PSA_CIPHER_OPERATION_INIT;
4591 PSA_ASSERT(psa_cipher_decrypt_setup(&operation, key, alg));
4594 PSA_ASSERT(psa_cipher_set_iv(&operation, iv->x, iv->len));
4602 PSA_ASSERT(psa_cipher_update(&operation,
4614 PSA_ASSERT(psa_cipher_update(&operation,
4631 status = psa_cipher_finish(&operation,
4644 PSA_ASSERT(psa_cipher_abort(&operation));
4651 psa_cipher_abort(&operation);
4678 psa_cipher_operation_t operation = PSA_CIPHER_OPERATION_INIT;
4709 status = psa_cipher_decrypt_setup(&operation, key, alg);
4717 status = psa_cipher_set_iv(&operation, iv->x, iv->len);
4725 status = psa_cipher_update(&operation,
4732 status = psa_cipher_finish(&operation,
4749 psa_cipher_abort(&operation);
5067 /* If the operation is not supported, just skip and not fail in case the
5155 /* If the operation is not supported, just skip and not fail in case the
5226 /* If the operation is not supported, just skip and not fail in case the
5447 psa_aead_operation_t operation = PSA_AEAD_OPERATION_INIT;
5485 status = psa_aead_encrypt_setup(&operation, key, alg);
5487 /* If the operation is not supported, just skip and not fail in case the
5497 status = psa_aead_generate_nonce(&operation, nonce_buffer,
5513 /* Ensure we can still complete operation. */
5514 PSA_ASSERT(psa_aead_set_lengths(&operation, additional_data->len,
5517 PSA_ASSERT(psa_aead_update_ad(&operation, additional_data->x,
5520 PSA_ASSERT(psa_aead_update(&operation, input_data->x, input_data->len,
5524 PSA_ASSERT(psa_aead_finish(&operation, ciphertext, ciphertext_size,
5533 psa_aead_abort(&operation);
5551 psa_aead_operation_t operation = PSA_AEAD_OPERATION_INIT;
5588 status = psa_aead_encrypt_setup(&operation, key, alg);
5590 /* If the operation is not supported, just skip and not fail in case the
5618 PSA_ASSERT(psa_aead_set_lengths(&operation, additional_data->len,
5622 status = psa_aead_set_nonce(&operation, nonce_buffer, nonce_length);
5628 PSA_ASSERT(psa_aead_set_lengths(&operation, additional_data->len,
5631 if (operation.alg == PSA_ALG_CCM && set_lengths_method == DO_NOT_SET_LENGTHS) {
5635 /* Ensure we can still complete operation, unless it's CCM and we didn't set lengths. */
5636 TEST_EQUAL(psa_aead_update_ad(&operation, additional_data->x,
5640 TEST_EQUAL(psa_aead_update(&operation, input_data->x, input_data->len,
5645 TEST_EQUAL(psa_aead_finish(&operation, ciphertext, ciphertext_size,
5656 psa_aead_abort(&operation);
5674 psa_aead_operation_t operation = PSA_AEAD_OPERATION_INIT;
5703 status = psa_aead_encrypt_setup(&operation, key, alg);
5705 /* If the operation is not supported, just skip and not fail in case the
5715 PSA_ASSERT(psa_aead_set_lengths(&operation, additional_data->len,
5718 PSA_ASSERT(psa_aead_set_nonce(&operation, nonce->x, nonce->len));
5720 PSA_ASSERT(psa_aead_update_ad(&operation, additional_data->x,
5723 status = psa_aead_update(&operation, input_data->x, input_data->len,
5729 /* Ensure we can still complete operation. */
5730 PSA_ASSERT(psa_aead_finish(&operation, ciphertext, ciphertext_size,
5739 psa_aead_abort(&operation);
5758 psa_aead_operation_t operation = PSA_AEAD_OPERATION_INIT;
5790 status = psa_aead_encrypt_setup(&operation, key, alg);
5792 /* If the operation is not supported, just skip and not fail in case the
5802 PSA_ASSERT(psa_aead_set_nonce(&operation, nonce->x, nonce->len));
5804 PSA_ASSERT(psa_aead_set_lengths(&operation, additional_data->len,
5807 PSA_ASSERT(psa_aead_update_ad(&operation, additional_data->x,
5810 PSA_ASSERT(psa_aead_update(&operation, input_data->x, input_data->len,
5813 /* Ensure we can still complete operation. */
5814 status = psa_aead_finish(&operation, finish_ciphertext,
5826 psa_aead_abort(&operation);
5845 psa_aead_operation_t operation = PSA_AEAD_OPERATION_INIT;
5879 status = psa_aead_decrypt_setup(&operation, key, alg);
5881 /* If the operation is not supported, just skip and not fail in case the
5896 PSA_ASSERT(psa_aead_set_nonce(&operation, nonce->x, nonce->len));
5898 status = psa_aead_set_lengths(&operation, additional_data->len,
5902 PSA_ASSERT(psa_aead_update_ad(&operation, additional_data->x,
5905 PSA_ASSERT(psa_aead_update(&operation, input_data->x,
5915 status = psa_aead_verify(&operation, finish_plaintext,
5926 psa_aead_abort(&operation);
5938 psa_aead_operation_t operation = PSA_AEAD_OPERATION_INIT;
5953 status = psa_aead_encrypt_setup(&operation, key, alg);
5957 psa_aead_abort(&operation);
5959 status = psa_aead_decrypt_setup(&operation, key, alg);
5965 psa_aead_abort(&operation);
5980 psa_aead_operation_t operation = PSA_AEAD_OPERATION_INIT;
6024 TEST_EQUAL(psa_aead_set_nonce(&operation, nonce->x, nonce->len),
6027 psa_aead_abort(&operation);
6029 TEST_EQUAL(psa_aead_generate_nonce(&operation, nonce_buffer,
6034 psa_aead_abort(&operation);
6038 TEST_EQUAL(psa_aead_set_lengths(&operation, additional_data->len,
6042 psa_aead_abort(&operation);
6046 TEST_EQUAL(psa_aead_update_ad(&operation, additional_data->x,
6050 psa_aead_abort(&operation);
6054 TEST_EQUAL(psa_aead_update(&operation, input_data->x,
6059 psa_aead_abort(&operation);
6063 TEST_EQUAL(psa_aead_finish(&operation, final_data,
6070 psa_aead_abort(&operation);
6074 TEST_EQUAL(psa_aead_verify(&operation, final_data,
6081 psa_aead_abort(&operation);
6085 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6087 TEST_EQUAL(psa_aead_encrypt_setup(&operation, key, alg),
6090 psa_aead_abort(&operation);
6094 PSA_ASSERT(psa_aead_decrypt_setup(&operation, key, alg));
6096 TEST_EQUAL(psa_aead_decrypt_setup(&operation, key, alg),
6099 psa_aead_abort(&operation);
6103 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6105 TEST_EQUAL(psa_aead_decrypt_setup(&operation, key, alg),
6108 psa_aead_abort(&operation);
6112 PSA_ASSERT(psa_aead_decrypt_setup(&operation, key, alg));
6114 TEST_EQUAL(psa_aead_encrypt_setup(&operation, key, alg),
6117 psa_aead_abort(&operation);
6121 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6123 TEST_EQUAL(psa_aead_update_ad(&operation, additional_data->x,
6127 psa_aead_abort(&operation);
6131 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6133 TEST_EQUAL(psa_aead_update(&operation, input_data->x,
6138 psa_aead_abort(&operation);
6142 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6144 TEST_EQUAL(psa_aead_finish(&operation, final_data,
6151 psa_aead_abort(&operation);
6155 PSA_ASSERT(psa_aead_decrypt_setup(&operation, key, alg));
6157 TEST_EQUAL(psa_aead_verify(&operation, final_data,
6164 psa_aead_abort(&operation);
6168 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6170 PSA_ASSERT(psa_aead_set_nonce(&operation, nonce->x, nonce->len));
6172 TEST_EQUAL(psa_aead_set_nonce(&operation, nonce->x, nonce->len),
6175 psa_aead_abort(&operation);
6179 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6181 PSA_ASSERT(psa_aead_generate_nonce(&operation, nonce_buffer,
6185 TEST_EQUAL(psa_aead_generate_nonce(&operation, nonce_buffer,
6191 psa_aead_abort(&operation);
6195 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6197 PSA_ASSERT(psa_aead_generate_nonce(&operation, nonce_buffer,
6201 TEST_EQUAL(psa_aead_set_nonce(&operation, nonce->x, nonce->len),
6204 psa_aead_abort(&operation);
6208 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6210 PSA_ASSERT(psa_aead_set_lengths(&operation, additional_data->len,
6213 PSA_ASSERT(psa_aead_generate_nonce(&operation, nonce_buffer,
6217 psa_aead_abort(&operation);
6221 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6223 if (operation.alg == PSA_ALG_CCM) {
6224 TEST_EQUAL(psa_aead_set_lengths(&operation, UINT32_MAX,
6227 TEST_EQUAL(psa_aead_generate_nonce(&operation, nonce_buffer,
6232 PSA_ASSERT(psa_aead_set_lengths(&operation, UINT32_MAX,
6234 PSA_ASSERT(psa_aead_generate_nonce(&operation, nonce_buffer,
6239 psa_aead_abort(&operation);
6243 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6245 if (operation.alg == PSA_ALG_CCM || operation.alg == PSA_ALG_GCM) {
6246 TEST_EQUAL(psa_aead_set_lengths(&operation, SIZE_MAX,
6249 TEST_EQUAL(psa_aead_generate_nonce(&operation, nonce_buffer,
6254 PSA_ASSERT(psa_aead_set_lengths(&operation, SIZE_MAX,
6256 PSA_ASSERT(psa_aead_generate_nonce(&operation, nonce_buffer,
6261 psa_aead_abort(&operation);
6266 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6268 PSA_ASSERT(psa_aead_generate_nonce(&operation, nonce_buffer,
6272 if (operation.alg == PSA_ALG_CCM) {
6273 TEST_EQUAL(psa_aead_set_lengths(&operation, UINT32_MAX,
6277 PSA_ASSERT(psa_aead_set_lengths(&operation, UINT32_MAX,
6281 psa_aead_abort(&operation);
6286 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6288 PSA_ASSERT(psa_aead_set_lengths(&operation, additional_data->len,
6291 PSA_ASSERT(psa_aead_set_nonce(&operation, nonce->x, nonce->len));
6293 psa_aead_abort(&operation);
6297 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6299 if (operation.alg == PSA_ALG_CCM) {
6300 TEST_EQUAL(psa_aead_set_lengths(&operation, UINT32_MAX,
6303 TEST_EQUAL(psa_aead_set_nonce(&operation, nonce->x, nonce->len),
6306 PSA_ASSERT(psa_aead_set_lengths(&operation, UINT32_MAX,
6308 PSA_ASSERT(psa_aead_set_nonce(&operation, nonce->x, nonce->len));
6311 psa_aead_abort(&operation);
6315 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6317 if (operation.alg == PSA_ALG_CCM || operation.alg == PSA_ALG_GCM) {
6318 TEST_EQUAL(psa_aead_set_lengths(&operation, SIZE_MAX,
6321 TEST_EQUAL(psa_aead_set_nonce(&operation, nonce->x, nonce->len),
6324 PSA_ASSERT(psa_aead_set_lengths(&operation, SIZE_MAX,
6326 PSA_ASSERT(psa_aead_set_nonce(&operation, nonce->x, nonce->len));
6329 psa_aead_abort(&operation);
6334 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6336 PSA_ASSERT(psa_aead_set_nonce(&operation, nonce->x, nonce->len));
6338 if (operation.alg == PSA_ALG_CCM) {
6339 TEST_EQUAL(psa_aead_set_lengths(&operation, UINT32_MAX,
6343 PSA_ASSERT(psa_aead_set_lengths(&operation, UINT32_MAX,
6347 psa_aead_abort(&operation);
6351 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6353 if (operation.alg == PSA_ALG_GCM) {
6354 TEST_EQUAL(psa_aead_set_lengths(&operation, additional_data->len,
6357 TEST_EQUAL(psa_aead_set_nonce(&operation, nonce->x, nonce->len),
6359 } else if (operation.alg != PSA_ALG_CCM) {
6360 PSA_ASSERT(psa_aead_set_lengths(&operation, additional_data->len,
6362 PSA_ASSERT(psa_aead_set_nonce(&operation, nonce->x, nonce->len));
6365 psa_aead_abort(&operation);
6370 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6372 PSA_ASSERT(psa_aead_set_nonce(&operation, nonce->x, nonce->len));
6374 if (operation.alg == PSA_ALG_GCM) {
6375 TEST_EQUAL(psa_aead_set_lengths(&operation, additional_data->len,
6378 } else if (operation.alg != PSA_ALG_CCM) {
6379 PSA_ASSERT(psa_aead_set_lengths(&operation, additional_data->len,
6383 psa_aead_abort(&operation);
6388 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6390 PSA_ASSERT(psa_aead_set_nonce(&operation, nonce->x, nonce->len));
6392 TEST_EQUAL(psa_aead_generate_nonce(&operation, nonce_buffer,
6397 psa_aead_abort(&operation);
6401 PSA_ASSERT(psa_aead_decrypt_setup(&operation, key, alg));
6403 TEST_EQUAL(psa_aead_generate_nonce(&operation, nonce_buffer,
6408 psa_aead_abort(&operation);
6412 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6414 PSA_ASSERT(psa_aead_set_nonce(&operation, nonce->x, nonce->len));
6416 PSA_ASSERT(psa_aead_set_lengths(&operation, additional_data->len,
6419 TEST_EQUAL(psa_aead_set_lengths(&operation, additional_data->len,
6423 psa_aead_abort(&operation);
6427 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6429 PSA_ASSERT(psa_aead_set_nonce(&operation, nonce->x, nonce->len));
6431 if (operation.alg == PSA_ALG_CCM) {
6433 TEST_EQUAL(psa_aead_update_ad(&operation, additional_data->x,
6437 PSA_ASSERT(psa_aead_update_ad(&operation, additional_data->x,
6440 TEST_EQUAL(psa_aead_set_lengths(&operation, additional_data->len,
6444 psa_aead_abort(&operation);
6448 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6450 PSA_ASSERT(psa_aead_set_nonce(&operation, nonce->x, nonce->len));
6452 if (operation.alg == PSA_ALG_CCM) {
6453 TEST_EQUAL(psa_aead_update(&operation, input_data->x,
6459 PSA_ASSERT(psa_aead_update(&operation, input_data->x,
6463 TEST_EQUAL(psa_aead_set_lengths(&operation, additional_data->len,
6467 psa_aead_abort(&operation);
6471 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6473 PSA_ASSERT(psa_aead_set_nonce(&operation, nonce->x, nonce->len));
6475 if (operation.alg == PSA_ALG_CCM) {
6476 PSA_ASSERT(psa_aead_finish(&operation, final_data,
6482 PSA_ASSERT(psa_aead_finish(&operation, final_data,
6488 TEST_EQUAL(psa_aead_set_lengths(&operation, additional_data->len,
6492 psa_aead_abort(&operation);
6496 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6498 PSA_ASSERT(psa_aead_generate_nonce(&operation, nonce_buffer,
6501 if (operation.alg == PSA_ALG_CCM) {
6503 TEST_EQUAL(psa_aead_update_ad(&operation, additional_data->x,
6507 PSA_ASSERT(psa_aead_update_ad(&operation, additional_data->x,
6510 TEST_EQUAL(psa_aead_set_lengths(&operation, additional_data->len,
6514 psa_aead_abort(&operation);
6518 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6520 PSA_ASSERT(psa_aead_generate_nonce(&operation, nonce_buffer,
6523 if (operation.alg == PSA_ALG_CCM) {
6524 TEST_EQUAL(psa_aead_update(&operation, input_data->x,
6530 PSA_ASSERT(psa_aead_update(&operation, input_data->x,
6534 TEST_EQUAL(psa_aead_set_lengths(&operation, additional_data->len,
6538 psa_aead_abort(&operation);
6542 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6544 PSA_ASSERT(psa_aead_generate_nonce(&operation, nonce_buffer,
6547 if (operation.alg == PSA_ALG_CCM) {
6548 PSA_ASSERT(psa_aead_finish(&operation, final_data,
6554 PSA_ASSERT(psa_aead_finish(&operation, final_data,
6560 TEST_EQUAL(psa_aead_set_lengths(&operation, additional_data->len,
6564 psa_aead_abort(&operation);
6569 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6571 PSA_ASSERT(psa_aead_set_nonce(&operation, nonce->x, nonce->len));
6573 PSA_ASSERT(psa_aead_set_lengths(&operation, additional_data->len,
6576 TEST_EQUAL(psa_aead_finish(&operation, final_data,
6583 psa_aead_abort(&operation);
6588 PSA_ASSERT(psa_aead_decrypt_setup(&operation, key, alg));
6590 PSA_ASSERT(psa_aead_set_nonce(&operation, nonce->x, nonce->len));
6592 PSA_ASSERT(psa_aead_set_lengths(&operation, additional_data->len,
6595 TEST_EQUAL(psa_aead_verify(&operation, final_data,
6602 psa_aead_abort(&operation);
6607 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6609 PSA_ASSERT(psa_aead_set_nonce(&operation, nonce->x, nonce->len));
6611 PSA_ASSERT(psa_aead_set_lengths(&operation, additional_data->len,
6614 TEST_EQUAL(psa_aead_update(&operation, input_data->x,
6619 psa_aead_abort(&operation);
6623 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6625 PSA_ASSERT(psa_aead_set_nonce(&operation, nonce->x, nonce->len));
6627 PSA_ASSERT(psa_aead_set_lengths(&operation, additional_data->len,
6630 PSA_ASSERT(psa_aead_update_ad(&operation, additional_data->x,
6633 TEST_EQUAL(psa_aead_finish(&operation, final_data,
6640 psa_aead_abort(&operation);
6644 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6646 PSA_ASSERT(psa_aead_set_nonce(&operation, nonce->x, nonce->len));
6648 PSA_ASSERT(psa_aead_set_lengths(&operation, 0, 0));
6651 TEST_EQUAL(psa_aead_update_ad(&operation, additional_data->x,
6655 psa_aead_abort(&operation);
6659 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6661 PSA_ASSERT(psa_aead_set_nonce(&operation, nonce->x, nonce->len));
6663 PSA_ASSERT(psa_aead_set_lengths(&operation, additional_data->len,
6666 PSA_ASSERT(psa_aead_update_ad(&operation, additional_data->x,
6669 TEST_EQUAL(psa_aead_update_ad(&operation, additional_data->x,
6673 psa_aead_abort(&operation);
6677 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6679 PSA_ASSERT(psa_aead_set_nonce(&operation, nonce->x, nonce->len));
6681 PSA_ASSERT(psa_aead_set_lengths(&operation, 0, 0));
6683 TEST_EQUAL(psa_aead_update(&operation, input_data->x,
6688 psa_aead_abort(&operation);
6692 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6694 PSA_ASSERT(psa_aead_set_nonce(&operation, nonce->x, nonce->len));
6696 PSA_ASSERT(psa_aead_set_lengths(&operation, additional_data->len,
6699 PSA_ASSERT(psa_aead_update_ad(&operation, additional_data->x,
6702 PSA_ASSERT(psa_aead_update(&operation, input_data->x,
6706 TEST_EQUAL(psa_aead_update(&operation, input_data->x,
6711 psa_aead_abort(&operation);
6715 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6717 PSA_ASSERT(psa_aead_set_nonce(&operation, nonce->x, nonce->len));
6719 if (operation.alg != PSA_ALG_CCM) {
6720 PSA_ASSERT(psa_aead_update(&operation, input_data->x,
6724 TEST_EQUAL(psa_aead_update_ad(&operation, additional_data->x,
6728 psa_aead_abort(&operation);
6732 PSA_ASSERT(psa_aead_decrypt_setup(&operation, key, alg));
6734 PSA_ASSERT(psa_aead_set_nonce(&operation, nonce->x, nonce->len));
6736 TEST_EQUAL(psa_aead_finish(&operation, final_data,
6743 psa_aead_abort(&operation);
6747 PSA_ASSERT(psa_aead_encrypt_setup(&operation, key, alg));
6749 PSA_ASSERT(psa_aead_set_nonce(&operation, nonce->x, nonce->len));
6751 TEST_EQUAL(psa_aead_verify(&operation, final_data,
6758 psa_aead_abort(&operation);
6763 psa_aead_abort(&operation);
6881 psa_sign_hash_interruptible_operation_t operation =
6908 num_ops_prior = psa_sign_hash_get_num_ops(&operation);
6912 PSA_ASSERT(psa_sign_hash_start(&operation, key, alg,
6915 num_ops_prior = psa_sign_hash_get_num_ops(&operation);
6920 status = psa_sign_hash_complete(&operation, signature, signature_size,
6926 num_ops = psa_sign_hash_get_num_ops(&operation);
6937 num_ops = psa_sign_hash_get_num_ops(&operation);
6952 PSA_ASSERT(psa_sign_hash_abort(&operation));
6954 num_ops = psa_sign_hash_get_num_ops(&operation);
7063 psa_sign_hash_interruptible_operation_t operation =
7084 num_ops_prior = psa_sign_hash_get_num_ops(&operation);
7088 actual_status = psa_sign_hash_start(&operation, key, alg,
7096 actual_status = psa_sign_hash_complete(&operation, signature,
7103 actual_status = psa_sign_hash_start(&operation, key, alg,
7109 num_ops_prior = psa_sign_hash_get_num_ops(&operation);
7114 actual_status = psa_sign_hash_complete(&operation, signature,
7122 num_ops = psa_sign_hash_get_num_ops(&operation);
7136 actual_status = psa_sign_hash_complete(&operation, signature,
7142 PSA_ASSERT(psa_sign_hash_abort(&operation));
7144 num_ops = psa_sign_hash_get_num_ops(&operation);
7477 psa_verify_hash_interruptible_operation_t operation =
7496 num_ops_prior = psa_verify_hash_get_num_ops(&operation);
7501 PSA_ASSERT(psa_verify_hash_start(&operation, key, alg,
7506 num_ops_prior = psa_verify_hash_get_num_ops(&operation);
7512 status = psa_verify_hash_complete(&operation);
7517 num_ops = psa_verify_hash_get_num_ops(&operation);
7528 num_ops = psa_verify_hash_get_num_ops(&operation);
7539 PSA_ASSERT(psa_verify_hash_abort(&operation));
7541 num_ops = psa_verify_hash_get_num_ops(&operation);
7551 PSA_ASSERT(psa_verify_hash_start(&operation, key, alg,
7557 status = psa_verify_hash_complete(&operation);
7647 psa_verify_hash_interruptible_operation_t operation =
7666 num_ops_prior = psa_verify_hash_get_num_ops(&operation);
7670 actual_status = psa_verify_hash_start(&operation, key, alg,
7680 actual_status = psa_verify_hash_complete(&operation);
7685 actual_status = psa_verify_hash_start(&operation, key, alg,
7693 num_ops_prior = psa_verify_hash_get_num_ops(&operation);
7698 actual_status = psa_verify_hash_complete(&operation);
7704 num_ops = psa_verify_hash_get_num_ops(&operation);
7718 actual_status = psa_verify_hash_complete(&operation);
7724 PSA_ASSERT(psa_verify_hash_abort(&operation));
7726 num_ops = psa_verify_hash_get_num_ops(&operation);
7955 /* And test that this invalidates the operation. */
8022 * 2. Test that changing the value of max_ops to unlimited during an operation
8023 * causes that operation to complete in the next call.
8026 * result as calling get_num_ops() once at the end of the operation.
8091 /* --- Ensure changing the max ops mid operation works (operation should
8745 /* A default operation should not be able to report its capacity. */
8753 /* A default operation should be abortable without error. */
8765 psa_key_derivation_operation_t operation = PSA_KEY_DERIVATION_OPERATION_INIT;
8769 TEST_EQUAL(psa_key_derivation_setup(&operation, alg),
8773 psa_key_derivation_abort(&operation);
8785 psa_key_derivation_operation_t operation = PSA_KEY_DERIVATION_OPERATION_INIT;
8789 PSA_ASSERT(psa_key_derivation_setup(&operation, alg));
8791 TEST_EQUAL(psa_key_derivation_set_capacity(&operation, capacity),
8795 psa_key_derivation_abort(&operation);
8829 psa_key_derivation_operation_t operation = PSA_KEY_DERIVATION_OPERATION_INIT;
8842 PSA_ASSERT(psa_key_derivation_setup(&operation, alg));
8859 &operation, keys[i], 0),
8862 TEST_EQUAL(psa_key_derivation_input_key(&operation, steps[i],
8869 &operation, steps[i],
8874 &operation, steps[i],
8886 psa_key_derivation_output_key(&attributes, &operation,
8891 psa_key_derivation_output_bytes(&operation,
8897 psa_key_derivation_abort(&operation);
8910 psa_key_derivation_operation_t operation = PSA_KEY_DERIVATION_OPERATION_INIT;
8913 PSA_ASSERT(psa_key_derivation_setup(&operation, alg));
8915 TEST_EQUAL(psa_key_derivation_input_integer(&operation,
8921 psa_key_derivation_abort(&operation);
8932 psa_key_derivation_operation_t operation = PSA_KEY_DERIVATION_OPERATION_INIT;
8955 if (!mbedtls_test_psa_setup_key_derivation_wrap(&operation, key, alg,
8962 /* state of operation shouldn't allow additional generation */
8963 TEST_EQUAL(psa_key_derivation_setup(&operation, alg),
8966 PSA_ASSERT(psa_key_derivation_output_bytes(&operation, buffer, capacity));
8968 TEST_EQUAL(psa_key_derivation_output_bytes(&operation, buffer, capacity),
8972 psa_key_derivation_abort(&operation);
8984 psa_key_derivation_operation_t operation = PSA_KEY_DERIVATION_OPERATION_INIT;
8986 TEST_ASSERT(psa_key_derivation_output_bytes(&operation,
8990 TEST_ASSERT(psa_key_derivation_get_capacity(&operation, &capacity)
8993 PSA_ASSERT(psa_key_derivation_abort(&operation));
8995 TEST_ASSERT(psa_key_derivation_output_bytes(&operation,
8999 TEST_ASSERT(psa_key_derivation_get_capacity(&operation, &capacity)
9003 psa_key_derivation_abort(&operation);
9031 psa_key_derivation_operation_t operation = PSA_KEY_DERIVATION_OPERATION_INIT;
9060 PSA_ASSERT(psa_key_derivation_setup(&operation, alg));
9061 PSA_ASSERT(psa_key_derivation_set_capacity(&operation,
9069 &operation, steps[i],
9081 &operation, steps[i],
9104 TEST_EQUAL(psa_key_derivation_input_key(&operation,
9121 TEST_EQUAL(psa_key_derivation_input_bytes(&operation,
9142 TEST_EQUAL(psa_key_derivation_input_key(&operation,
9158 &operation,
9174 &operation, steps[i],
9184 PSA_ASSERT(psa_key_derivation_get_capacity(&operation,
9193 input key, otherwise operation is not permitted. */
9203 TEST_EQUAL(psa_key_derivation_output_key(&attributes4, &operation,
9209 status = psa_key_derivation_output_bytes(&operation,
9229 /* Check the operation status. */
9231 PSA_ASSERT(psa_key_derivation_get_capacity(&operation,
9236 PSA_ASSERT(psa_key_derivation_abort(&operation));
9240 psa_key_derivation_abort(&operation);
9259 psa_key_derivation_operation_t operation = PSA_KEY_DERIVATION_OPERATION_INIT;
9274 if (!mbedtls_test_psa_setup_key_derivation_wrap(&operation, key, alg,
9281 PSA_ASSERT(psa_key_derivation_get_capacity(&operation,
9291 PSA_ASSERT(psa_key_derivation_output_bytes(&operation,
9295 PSA_ASSERT(psa_key_derivation_get_capacity(&operation,
9300 /* Check that the operation refuses to go over capacity. */
9301 TEST_EQUAL(psa_key_derivation_output_bytes(&operation, output_buffer, 1),
9304 PSA_ASSERT(psa_key_derivation_abort(&operation));
9307 psa_key_derivation_abort(&operation);
9321 psa_key_derivation_operation_t operation = PSA_KEY_DERIVATION_OPERATION_INIT;
9332 PSA_ASSERT(psa_key_derivation_setup(&operation, alg));
9333 TEST_EQUAL(psa_key_derivation_set_capacity(&operation, capacity),
9336 TEST_EQUAL(psa_key_derivation_input_bytes(&operation,
9344 status = psa_key_derivation_output_bytes(&operation, output_buffer,
9355 psa_key_derivation_abort(&operation);
9378 psa_key_derivation_operation_t operation = PSA_KEY_DERIVATION_OPERATION_INIT;
9391 if (!mbedtls_test_psa_setup_key_derivation_wrap(&operation, base_key, alg,
9402 PSA_ASSERT(psa_key_derivation_output_key(&attributes, &operation,
9422 psa_key_derivation_abort(&operation);
9443 psa_key_derivation_operation_t operation = PSA_KEY_DERIVATION_OPERATION_INIT;
9461 if (!mbedtls_test_psa_setup_key_derivation_wrap(&operation, base_key, alg,
9468 PSA_ASSERT(psa_key_derivation_output_bytes(&operation,
9471 PSA_ASSERT(psa_key_derivation_abort(&operation));
9474 if (!mbedtls_test_psa_setup_key_derivation_wrap(&operation, base_key, alg,
9485 PSA_ASSERT(psa_key_derivation_output_key(&derived_attributes, &operation,
9493 PSA_ASSERT(psa_key_derivation_output_key(&derived_attributes, &operation,
9507 psa_key_derivation_abort(&operation);
9527 psa_key_derivation_operation_t operation = PSA_KEY_DERIVATION_OPERATION_INIT;
9545 &operation, base_key, alg,
9556 PSA_ASSERT(psa_key_derivation_output_key(&derived_attributes, &operation,
9567 psa_key_derivation_abort(&operation);
9592 psa_key_derivation_operation_t operation = PSA_KEY_DERIVATION_OPERATION_INIT;
9610 &operation, base_key, alg,
9623 &derived_attributes, &operation,
9638 psa_key_derivation_abort(&operation);
9663 psa_key_derivation_operation_t operation = PSA_KEY_DERIVATION_OPERATION_INIT;
9681 &operation, base_key, alg,
9697 TEST_EQUAL(psa_key_derivation_output_key_ext(&derived_attributes, &operation,
9713 psa_key_derivation_abort(&operation);
9733 psa_key_derivation_operation_t operation = PSA_KEY_DERIVATION_OPERATION_INIT;
9745 if (!mbedtls_test_psa_setup_key_derivation_wrap(&operation, base_key, alg,
9759 &operation,
9767 psa_key_derivation_abort(&operation);
9784 psa_key_derivation_operation_t operation = PSA_KEY_DERIVATION_OPERATION_INIT;
9802 status = psa_key_derivation_setup(&operation, alg);
9805 &operation, PSA_KEY_DERIVATION_INPUT_SECRET,
9814 psa_key_derivation_abort(&operation);
9904 psa_key_derivation_operation_t operation = PSA_KEY_DERIVATION_OPERATION_INIT;
9918 PSA_ASSERT(psa_key_derivation_setup(&operation, alg));
9920 &operation,
9925 PSA_ASSERT(psa_key_derivation_input_bytes(&operation,
9932 &operation, &actual_capacity));
9937 PSA_ASSERT(psa_key_derivation_output_bytes(&operation,
9941 PSA_ASSERT(psa_key_derivation_output_bytes(&operation,
9943 TEST_EQUAL(psa_key_derivation_output_bytes(&operation, output, 1),
9947 psa_key_derivation_abort(&operation);
10001 psa_key_derivation_operation_t operation = PSA_KEY_DERIVATION_OPERATION_INIT;
10017 PSA_ASSERT(psa_key_derivation_setup(&operation, alg));
10019 &operation,
10024 PSA_ASSERT(psa_key_derivation_input_bytes(&operation,
10029 PSA_ASSERT(psa_key_derivation_output_bytes(&operation,
10035 PSA_ASSERT(psa_key_derivation_output_bytes(&operation,
10043 psa_key_derivation_abort(&operation);
10367 psa_key_derivation_operation_t operation = PSA_KEY_DERIVATION_OPERATION_INIT;
10413 PSA_ASSERT(psa_key_derivation_setup(&operation, derive_alg));
10415 &operation,
10418 &operation, PSA_KEY_DERIVATION_INPUT_INFO,
10421 &operation,
10423 PSA_ASSERT(psa_key_derivation_abort(&operation));
10489 psa_key_derivation_abort(&operation);
10504 psa_pake_operation_t operation = psa_pake_operation_init();
10537 PSA_ASSERT(psa_pake_abort(&operation));
10540 TEST_EQUAL(psa_pake_set_user(&operation, NULL, 0),
10542 PSA_ASSERT(psa_pake_abort(&operation));
10543 TEST_EQUAL(psa_pake_set_peer(&operation, NULL, 0),
10545 PSA_ASSERT(psa_pake_abort(&operation));
10546 TEST_EQUAL(psa_pake_set_password_key(&operation, key),
10548 PSA_ASSERT(psa_pake_abort(&operation));
10549 TEST_EQUAL(psa_pake_set_role(&operation, role),
10551 PSA_ASSERT(psa_pake_abort(&operation));
10552 TEST_EQUAL(psa_pake_output(&operation, PSA_PAKE_STEP_KEY_SHARE,
10555 PSA_ASSERT(psa_pake_abort(&operation));
10556 TEST_EQUAL(psa_pake_input(&operation, PSA_PAKE_STEP_KEY_SHARE, NULL, 0),
10558 PSA_ASSERT(psa_pake_abort(&operation));
10562 status = psa_pake_setup(&operation, &cipher_suite);
10569 TEST_EQUAL(psa_pake_setup(&operation, &cipher_suite),
10574 status = psa_pake_set_role(&operation, role);
10581 status = psa_pake_set_password_key(&operation, key);
10589 TEST_EQUAL(psa_pake_set_user(&operation, NULL, 0),
10595 TEST_EQUAL(psa_pake_set_peer(&operation, NULL, 0),
10602 TEST_EQUAL(psa_pake_set_user(&operation, unsupported_id, 4),
10609 TEST_EQUAL(psa_pake_set_peer(&operation, unsupported_id, 4),
10623 TEST_EQUAL(psa_pake_input(&operation, PSA_PAKE_STEP_ZK_PROOF, NULL, 0),
10629 TEST_EQUAL(psa_pake_input(&operation, PSA_PAKE_STEP_ZK_PROOF + 10,
10636 TEST_EQUAL(psa_pake_input(&operation, PSA_PAKE_STEP_ZK_PROOF,
10642 status = psa_pake_input(&operation, PSA_PAKE_STEP_KEY_SHARE,
10650 TEST_EQUAL(psa_pake_input(&operation, PSA_PAKE_STEP_ZK_PUBLIC,
10658 psa_pake_input(&operation, PSA_PAKE_STEP_ZK_PUBLIC,
10660 TEST_EQUAL(psa_pake_input(&operation, PSA_PAKE_STEP_ZK_PUBLIC,
10667 TEST_EQUAL(psa_pake_output(&operation, PSA_PAKE_STEP_ZK_PROOF,
10674 TEST_EQUAL(psa_pake_output(&operation, PSA_PAKE_STEP_ZK_PROOF + 10,
10681 TEST_EQUAL(psa_pake_output(&operation, PSA_PAKE_STEP_ZK_PROOF,
10687 status = psa_pake_output(&operation, PSA_PAKE_STEP_KEY_SHARE,
10697 TEST_EQUAL(psa_pake_output(&operation, PSA_PAKE_STEP_ZK_PUBLIC,
10705 psa_pake_output(&operation, PSA_PAKE_STEP_ZK_PUBLIC,
10707 TEST_EQUAL(psa_pake_output(&operation, PSA_PAKE_STEP_ZK_PUBLIC,
10716 PSA_ASSERT(psa_pake_abort(&operation));