Lines Matching refs:session

22 static enum pkcs11_rc get_ready_session(struct pkcs11_session *session)  in get_ready_session()  argument
24 if (session_is_active(session)) in get_ready_session()
90 static enum pkcs11_rc get_active_session(struct pkcs11_session *session, in get_active_session() argument
95 if (session->processing && in get_active_session()
96 func_matches_state(function, session->processing->state)) in get_active_session()
102 void release_active_processing(struct pkcs11_session *session) in release_active_processing() argument
104 if (!session->processing) in release_active_processing()
107 switch (session->processing->mecha_type) { in release_active_processing()
109 tee_release_gcm_operation(session); in release_active_processing()
115 if (session->processing->tee_op_handle != TEE_HANDLE_NULL) { in release_active_processing()
116 TEE_FreeOperation(session->processing->tee_op_handle); in release_active_processing()
117 session->processing->tee_op_handle = TEE_HANDLE_NULL; in release_active_processing()
120 if (session->processing->tee_op_handle2 != TEE_HANDLE_NULL) { in release_active_processing()
121 TEE_FreeOperation(session->processing->tee_op_handle2); in release_active_processing()
122 session->processing->tee_op_handle2 = TEE_HANDLE_NULL; in release_active_processing()
125 TEE_Free(session->processing->extra_ctx); in release_active_processing()
127 TEE_Free(session->processing); in release_active_processing()
128 session->processing = NULL; in release_active_processing()
225 struct pkcs11_session *session = NULL; in entry_generate_secret() local
238 rc = serialargs_get_session_from_handle(&ctrlargs, client, &session); in entry_generate_secret()
255 rc = get_ready_session(session); in entry_generate_secret()
261 rc = check_mechanism_against_processing(session, proc_params->id, in entry_generate_secret()
291 rc = check_created_attrs_against_token(session, head); in entry_generate_secret()
320 rc = create_object(session, head, &obj_handle); in entry_generate_secret()
336 session->handle, obj_handle); in entry_generate_secret()
408 struct pkcs11_session *session = NULL; in entry_generate_key_pair() local
427 rc = serialargs_get_session_from_handle(&ctrlargs, client, &session); in entry_generate_key_pair()
448 rc = get_ready_session(session); in entry_generate_key_pair()
452 rc = check_mechanism_against_processing(session, proc_params->id, in entry_generate_key_pair()
504 rc = check_created_attrs_against_token(session, pub_head); in entry_generate_key_pair()
508 rc = check_access_attrs_against_token(session, pub_head); in entry_generate_key_pair()
512 rc = check_created_attrs_against_token(session, priv_head); in entry_generate_key_pair()
516 rc = check_access_attrs_against_token(session, priv_head); in entry_generate_key_pair()
544 rc = create_object(session, pub_head, &pubkey_handle); in entry_generate_key_pair()
556 rc = create_object(session, priv_head, &privkey_handle); in entry_generate_key_pair()
569 session->handle, privkey_handle, pubkey_handle); in entry_generate_key_pair()
575 object = pkcs11_handle2object(pubkey_handle, session); in entry_generate_key_pair()
578 destroy_object(session, object, false); in entry_generate_key_pair()
608 struct pkcs11_session *session = NULL; in entry_processing_init() local
618 rc = serialargs_get_session_from_handle(&ctrlargs, client, &session); in entry_processing_init()
637 rc = get_ready_session(session); in entry_processing_init()
642 obj = pkcs11_handle2object(key_handle, session); in entry_processing_init()
649 rc = set_processing_state(session, function, obj, NULL); in entry_processing_init()
653 rc = check_mechanism_against_processing(session, proc_params->id, in entry_processing_init()
666 rc = check_access_attrs_against_token(session, in entry_processing_init()
673 rc = init_symm_operation(session, function, proc_params, obj); in entry_processing_init()
675 rc = init_asymm_operation(session, function, proc_params, obj); in entry_processing_init()
677 rc = init_digest_operation(session, proc_params); in entry_processing_init()
683 session->handle, id2str_proc(proc_params->id), in entry_processing_init()
689 release_active_processing(session); in entry_processing_init()
713 struct pkcs11_session *session = NULL; in entry_processing_step() local
724 rc = serialargs_get_session_from_handle(&ctrlargs, client, &session); in entry_processing_step()
739 rc = get_active_session(session, function); in entry_processing_step()
746 obj = pkcs11_handle2object(key_handle, session); in entry_processing_step()
752 rc = check_access_attrs_against_token(session, in entry_processing_step()
760 mecha_type = session->processing->mecha_type; in entry_processing_step()
761 rc = check_mechanism_against_processing(session, mecha_type, in entry_processing_step()
767 rc = step_symm_operation(session, function, step, in entry_processing_step()
770 rc = step_asymm_operation(session, function, step, in entry_processing_step()
773 rc = step_digest_operation(session, step, obj, ptypes, params); in entry_processing_step()
779 session->processing->step = PKCS11_FUNC_STEP_UPDATE; in entry_processing_step()
781 session->handle, id2str_proc(mecha_type), in entry_processing_step()
787 session->processing->step = PKCS11_FUNC_STEP_ONESHOT; in entry_processing_step()
790 session->processing->step = PKCS11_FUNC_STEP_FINAL; in entry_processing_step()
797 release_active_processing(session); in entry_processing_step()
802 release_active_processing(session); in entry_processing_step()
817 struct pkcs11_session *session = NULL; in entry_processing_key() local
875 rc = serialargs_get_session_from_handle(&ctrlargs, client, &session); in entry_processing_key()
897 rc = get_ready_session(session); in entry_processing_key()
902 parent = pkcs11_handle2object(parent_handle, session); in entry_processing_key()
909 rc = check_mechanism_against_processing(session, proc_params->id, in entry_processing_key()
916 rc = set_processing_state(session, function, parent, NULL); in entry_processing_key()
943 rc = check_access_attrs_against_token(session, parent->attributes); in entry_processing_key()
969 rc = check_created_attrs_against_token(session, head); in entry_processing_key()
973 rc = check_access_attrs_against_token(session, head); in entry_processing_key()
978 rc = init_symm_operation(session, operation, proc_params, in entry_processing_key()
985 rc = derive_key_by_symm_enc(session, &out_buf, in entry_processing_key()
989 rc = unwrap_key_by_symm(session, in_buf, in_size, in entry_processing_key()
1001 rc = init_asymm_operation(session, function, in entry_processing_key()
1006 rc = do_asymm_derivation(session, proc_params, &head); in entry_processing_key()
1011 rc = init_asymm_operation(session, operation, in entry_processing_key()
1016 rc = unwrap_key_by_asymm(session, in_buf, in_size, in entry_processing_key()
1044 rc = create_object(session, head, &obj_handle); in entry_processing_key()
1060 session->handle, obj_handle); in entry_processing_key()
1063 release_active_processing(session); in entry_processing_key()
1084 struct pkcs11_session *session = NULL; in entry_release_active_processing() local
1093 rc = serialargs_get_session_from_handle(&ctrlargs, client, &session); in entry_release_active_processing()
1106 rc = get_active_session(session, function); in entry_release_active_processing()
1110 release_active_processing(session); in entry_release_active_processing()
1112 DMSG("PKCS11 session %"PRIu32": release processing", session->handle); in entry_release_active_processing()
1127 struct pkcs11_session *session = NULL; in entry_wrap_key() local
1147 rc = serialargs_get_session_from_handle(&ctrlargs, client, &session); in entry_wrap_key()
1168 rc = get_ready_session(session); in entry_wrap_key()
1172 wrapping_key = pkcs11_handle2object(wrapping_key_handle, session); in entry_wrap_key()
1178 key = pkcs11_handle2object(key_handle, session); in entry_wrap_key()
1195 rc = set_processing_state(session, function, wrapping_key, NULL); in entry_wrap_key()
1200 rc = check_mechanism_against_processing(session, proc_params->id, in entry_wrap_key()
1225 rc = check_access_attrs_against_token(session, in entry_wrap_key()
1253 rc = check_access_attrs_against_token(session, key->attributes); in entry_wrap_key()
1271 rc = init_symm_operation(session, PKCS11_FUNCTION_ENCRYPT, in entry_wrap_key()
1276 rc = wrap_data_by_symm_enc(session, key_data, key_sz, out_buf, in entry_wrap_key()
1279 rc = init_asymm_operation(session, PKCS11_FUNCTION_ENCRYPT, in entry_wrap_key()
1284 rc = wrap_data_by_asymm_enc(session, key_data, key_sz, out_buf, in entry_wrap_key()
1292 release_active_processing(session); in entry_wrap_key()