Lines Matching refs:current_policy
189 IFAPI_POLICY_EXEC_CTX *current_policy) in execute_policy_pcr() argument
197 switch (current_policy->state) { in execute_policy_pcr()
198 statecase(current_policy->state, POLICY_EXECUTE_INIT) in execute_policy_pcr()
208 current_policy->session, in execute_policy_pcr()
214 statecase(current_policy->state, POLICY_EXECUTE_FINISH) in execute_policy_pcr()
219 current_policy->state = POLICY_EXECUTE_INIT; in execute_policy_pcr()
222 statecasedefault(current_policy->state); in execute_policy_pcr()
249 IFAPI_POLICY_EXEC_CTX *current_policy) in execute_policy_duplicate() argument
255 switch (current_policy->state) { in execute_policy_duplicate()
256 statecase(current_policy->state, POLICY_EXECUTE_INIT) in execute_policy_duplicate()
257 ifapi_policyeval_EXEC_CB *cb = ¤t_policy->callbacks; in execute_policy_duplicate()
263 current_policy->session, in execute_policy_duplicate()
272 statecase(current_policy->state, POLICY_EXECUTE_FINISH) in execute_policy_duplicate()
277 current_policy->state = POLICY_EXECUTE_INIT; in execute_policy_duplicate()
280 statecasedefault(current_policy->state); in execute_policy_duplicate()
311 IFAPI_POLICY_EXEC_CTX *current_policy) in execute_policy_nv() argument
317 switch (current_policy->state) { in execute_policy_nv()
318 statecase(current_policy->state, POLICY_EXECUTE_INIT) in execute_policy_nv()
319 r = ifapi_nv_get_name(&policy->nvPublic, ¤t_policy->name); in execute_policy_nv()
323 statecase(current_policy->state, POLICY_AUTH_CALLBACK) in execute_policy_nv()
324 ifapi_policyeval_EXEC_CB *cb = ¤t_policy->callbacks; in execute_policy_nv()
327 r = cb->cbauth(¤t_policy->name, in execute_policy_nv()
328 ¤t_policy->object_handle, in execute_policy_nv()
329 ¤t_policy->auth_handle, in execute_policy_nv()
330 ¤t_policy->auth_session, cb->cbauth_userdata); in execute_policy_nv()
336 current_policy->object_handle, in execute_policy_nv()
337 current_policy->auth_handle, in execute_policy_nv()
338 current_policy->session, in execute_policy_nv()
339 current_policy->auth_session, ESYS_TR_NONE, ESYS_TR_NONE, in execute_policy_nv()
345 statecase(current_policy->state, POLICY_EXECUTE_FINISH) in execute_policy_nv()
350 current_policy->state = POLICY_EXECUTE_INIT; in execute_policy_nv()
353 statecasedefault(current_policy->state); in execute_policy_nv()
387 IFAPI_POLICY_EXEC_CTX *current_policy) in execute_policy_signed() argument
397 switch (current_policy->state) { in execute_policy_signed()
398 statecase(current_policy->state, POLICY_EXECUTE_INIT); in execute_policy_signed()
399 current_policy->pem_key = NULL; in execute_policy_signed()
400 current_policy->object_handle = ESYS_TR_NONE; in execute_policy_signed()
401 current_policy->buffer_size = sizeof(INT32) + sizeof(TPM2B_NONCE) in execute_policy_signed()
403 current_policy->buffer = malloc(current_policy->buffer_size); in execute_policy_signed()
404 return_if_null(current_policy->buffer, "Out of memory.", TSS2_FAPI_RC_MEMORY); in execute_policy_signed()
406 r = Esys_TRSess_GetNonceTPM(esys_ctx, current_policy->session, in execute_policy_signed()
407 ¤t_policy->nonceTPM); in execute_policy_signed()
411 memcpy(¤t_policy->buffer[offset], ¤t_policy->nonceTPM->buffer[0], in execute_policy_signed()
412 current_policy->nonceTPM->size); in execute_policy_signed()
413 offset += current_policy->nonceTPM->size; in execute_policy_signed()
414 memset(¤t_policy->buffer[offset], 0, sizeof(INT32)); in execute_policy_signed()
416 memcpy(¤t_policy->buffer[offset], &policy->cpHashA.buffer[0], in execute_policy_signed()
419 memcpy(¤t_policy->buffer[offset], &policy->policyRef.buffer[0], in execute_policy_signed()
422 current_policy->buffer_size = offset; in execute_policy_signed()
425 statecase(current_policy->state, POLICY_EXECUTE_CALLBACK); in execute_policy_signed()
426 ifapi_policyeval_EXEC_CB *cb = ¤t_policy->callbacks; in execute_policy_signed()
431 if (!current_policy->pem_key) { in execute_policy_signed()
434 r = ifapi_pub_pem_key_from_tpm(&tpm_public, ¤t_policy->pem_key, in execute_policy_signed()
440 r = cb->cbsign(current_policy->pem_key, policy->publicKeyHint, in execute_policy_signed()
441 policy->keyPEMhashAlg, current_policy->buffer, in execute_policy_signed()
442 current_policy->buffer_size, in execute_policy_signed()
445 SAFE_FREE(current_policy->pem_key); in execute_policy_signed()
446 SAFE_FREE(current_policy->buffer); in execute_policy_signed()
468 statecase(current_policy->state, POLICY_LOAD_KEY); in execute_policy_signed()
469 r = Esys_LoadExternal_Finish(esys_ctx, ¤t_policy->object_handle); in execute_policy_signed()
474 current_policy->object_handle, in execute_policy_signed()
475 current_policy->session, in execute_policy_signed()
477 current_policy->nonceTPM, in execute_policy_signed()
480 SAFE_FREE(current_policy->nonceTPM); in execute_policy_signed()
484 statecase(current_policy->state, POLICY_EXECUTE_FINISH); in execute_policy_signed()
489 r = Esys_FlushContext_Async(esys_ctx, current_policy->object_handle); in execute_policy_signed()
493 statecase(current_policy->state, POLICY_FLUSH_KEY); in execute_policy_signed()
497 current_policy->object_handle = ESYS_TR_NONE; in execute_policy_signed()
498 current_policy->state = POLICY_EXECUTE_INIT; in execute_policy_signed()
501 statecasedefault(current_policy->state); in execute_policy_signed()
504 SAFE_FREE(current_policy->pem_key); in execute_policy_signed()
506 SAFE_FREE(current_policy->buffer); in execute_policy_signed()
507 SAFE_FREE(current_policy->pem_key); in execute_policy_signed()
509 if (current_policy->object_handle != ESYS_TR_NONE) in execute_policy_signed()
510 Esys_FlushContext(esys_ctx, current_policy->object_handle); in execute_policy_signed()
555 IFAPI_POLICY_EXEC_CTX *current_policy) in execute_policy_authorize() argument
573 switch (current_policy->state) { in execute_policy_authorize()
574 statecase(current_policy->state, POLICY_EXECUTE_INIT); in execute_policy_authorize()
575 current_policy->object_handle = ESYS_TR_NONE; in execute_policy_authorize()
577 ifapi_policyeval_EXEC_CB *cb = ¤t_policy->callbacks; in execute_policy_authorize()
591 statecase(current_policy->state, POLICY_LOAD_KEY); in execute_policy_authorize()
592 r = Esys_LoadExternal_Finish(esys_ctx, ¤t_policy->object_handle); in execute_policy_authorize()
596 r = Esys_TR_GetName(esys_ctx, current_policy->object_handle, &tmp_name); in execute_policy_authorize()
620 r = Esys_VerifySignature_Async(esys_ctx, current_policy->object_handle, in execute_policy_authorize()
627 statecase(current_policy->state, POLICY_VERIFY); in execute_policy_authorize()
635 current_policy->session, in execute_policy_authorize()
644 statecase(current_policy->state, POLICY_EXECUTE_FINISH); in execute_policy_authorize()
648 r = Esys_FlushContext_Async(esys_ctx, current_policy->object_handle); in execute_policy_authorize()
652 statecase(current_policy->state, POLICY_FLUSH_KEY); in execute_policy_authorize()
657 current_policy->object_handle = ESYS_TR_NONE; in execute_policy_authorize()
658 current_policy->state = POLICY_EXECUTE_INIT; in execute_policy_authorize()
661 statecasedefault(current_policy->state); in execute_policy_authorize()
665 if (current_policy->object_handle != ESYS_TR_NONE) in execute_policy_authorize()
666 Esys_FlushContext(esys_ctx, current_policy->object_handle); in execute_policy_authorize()
705 IFAPI_POLICY_EXEC_CTX *current_policy) in execute_policy_authorize_nv() argument
711 cb = ¤t_policy->callbacks; in execute_policy_authorize_nv()
713 switch (current_policy->state) { in execute_policy_authorize_nv()
714 statecase(current_policy->state, POLICY_EXECUTE_INIT) in execute_policy_authorize_nv()
719 r = ifapi_nv_get_name(&policy->nvPublic, ¤t_policy->name); in execute_policy_authorize_nv()
723 statecase(current_policy->state, POLICY_AUTH_CALLBACK) in execute_policy_authorize_nv()
725 r = cb->cbauth(¤t_policy->name, in execute_policy_authorize_nv()
726 ¤t_policy->object_handle, in execute_policy_authorize_nv()
727 ¤t_policy->auth_handle, in execute_policy_authorize_nv()
728 ¤t_policy->auth_session, cb->cbauth_userdata); in execute_policy_authorize_nv()
733 statecase(current_policy->state, POLICY_EXEC_ESYS) in execute_policy_authorize_nv()
737 current_policy->auth_handle, in execute_policy_authorize_nv()
738 current_policy->object_handle, in execute_policy_authorize_nv()
739 current_policy->session, in execute_policy_authorize_nv()
740 current_policy->auth_session, ESYS_TR_NONE, in execute_policy_authorize_nv()
745 statecase(current_policy->state, POLICY_AUTH_SENT) in execute_policy_authorize_nv()
752 statecasedefault(current_policy->state); in execute_policy_authorize_nv()
786 IFAPI_POLICY_EXEC_CTX *current_policy) in execute_policy_secret() argument
793 switch (current_policy->state) { in execute_policy_secret()
794 statecase(current_policy->state, POLICY_EXECUTE_INIT) in execute_policy_secret()
795 ifapi_policyeval_EXEC_CB *cb = ¤t_policy->callbacks; in execute_policy_secret()
798 ¤t_policy->object_handle, in execute_policy_secret()
799 ¤t_policy->auth_handle, in execute_policy_secret()
800 ¤t_policy->auth_session, cb->cbauth_userdata); in execute_policy_secret()
805 statecase(current_policy->state, POLICY_EXEC_ESYS) in execute_policy_secret()
806 r = Esys_TRSess_GetNonceTPM(esys_ctx, current_policy->session, in execute_policy_secret()
807 ¤t_policy->nonceTPM); in execute_policy_secret()
810 policy->nonceTPM = *(current_policy->nonceTPM); in execute_policy_secret()
811 SAFE_FREE(current_policy->nonceTPM); in execute_policy_secret()
815 current_policy->auth_handle, in execute_policy_secret()
816 current_policy->session, in execute_policy_secret()
817 current_policy->auth_session, ESYS_TR_NONE, in execute_policy_secret()
824 statecase(current_policy->state, POLICY_AUTH_SENT) in execute_policy_secret()
832 statecasedefault(current_policy->state); in execute_policy_secret()
861 IFAPI_POLICY_EXEC_CTX *current_policy) in execute_policy_counter_timer() argument
867 switch (current_policy->state) { in execute_policy_counter_timer()
868 statecase(current_policy->state, POLICY_EXECUTE_INIT) in execute_policy_counter_timer()
871 current_policy->session, in execute_policy_counter_timer()
880 statecase(current_policy->state, POLICY_EXECUTE_FINISH) in execute_policy_counter_timer()
885 current_policy->state = POLICY_EXECUTE_INIT; in execute_policy_counter_timer()
888 statecasedefault(current_policy->state); in execute_policy_counter_timer()
911 IFAPI_POLICY_EXEC_CTX *current_policy) in execute_policy_physical_presence() argument
918 switch (current_policy->state) { in execute_policy_physical_presence()
919 statecase(current_policy->state, POLICY_EXECUTE_INIT) in execute_policy_physical_presence()
922 current_policy->session, in execute_policy_physical_presence()
928 statecase(current_policy->state, POLICY_EXECUTE_FINISH) in execute_policy_physical_presence()
933 current_policy->state = POLICY_EXECUTE_INIT; in execute_policy_physical_presence()
936 statecasedefault(current_policy->state); in execute_policy_physical_presence()
961 IFAPI_POLICY_EXEC_CTX *current_policy) in execute_policy_auth_value() argument
968 switch (current_policy->state) { in execute_policy_auth_value()
969 statecase(current_policy->state, POLICY_EXECUTE_INIT) in execute_policy_auth_value()
972 current_policy->session, in execute_policy_auth_value()
978 statecase(current_policy->state, POLICY_EXECUTE_FINISH) in execute_policy_auth_value()
983 current_policy->state = POLICY_EXECUTE_INIT; in execute_policy_auth_value()
986 statecasedefault(current_policy->state); in execute_policy_auth_value()
1012 IFAPI_POLICY_EXEC_CTX *current_policy) in execute_policy_password() argument
1019 switch (current_policy->state) { in execute_policy_password()
1020 statecase(current_policy->state, POLICY_EXECUTE_INIT) in execute_policy_password()
1023 current_policy->session, in execute_policy_password()
1029 statecase(current_policy->state, POLICY_EXECUTE_FINISH) in execute_policy_password()
1034 current_policy->state = POLICY_EXECUTE_INIT; in execute_policy_password()
1037 statecasedefault(current_policy->state); in execute_policy_password()
1060 IFAPI_POLICY_EXEC_CTX *current_policy) in execute_policy_command_code() argument
1066 switch (current_policy->state) { in execute_policy_command_code()
1067 statecase(current_policy->state, POLICY_EXECUTE_INIT) in execute_policy_command_code()
1070 current_policy->session, in execute_policy_command_code()
1076 statecase(current_policy->state, POLICY_EXECUTE_FINISH) in execute_policy_command_code()
1081 current_policy->state = POLICY_EXECUTE_INIT; in execute_policy_command_code()
1084 statecasedefault(current_policy->state) in execute_policy_command_code()
1109 IFAPI_POLICY_EXEC_CTX *current_policy) in execute_policy_name_hash() argument
1115 switch (current_policy->state) { in execute_policy_name_hash()
1116 statecase(current_policy->state, POLICY_EXECUTE_INIT) in execute_policy_name_hash()
1119 current_policy->session, in execute_policy_name_hash()
1125 statecase(current_policy->state, POLICY_EXECUTE_FINISH) in execute_policy_name_hash()
1130 current_policy->state = POLICY_EXECUTE_INIT; in execute_policy_name_hash()
1133 statecasedefault(current_policy->state) in execute_policy_name_hash()
1156 IFAPI_POLICY_EXEC_CTX *current_policy) in execute_policy_cp_hash() argument
1162 switch (current_policy->state) { in execute_policy_cp_hash()
1163 statecase(current_policy->state, POLICY_EXECUTE_INIT) in execute_policy_cp_hash()
1166 current_policy->session, in execute_policy_cp_hash()
1173 statecase(current_policy->state, POLICY_EXECUTE_FINISH) in execute_policy_cp_hash()
1178 current_policy->state = POLICY_EXECUTE_INIT; in execute_policy_cp_hash()
1181 statecasedefault(current_policy->state); in execute_policy_cp_hash()
1204 IFAPI_POLICY_EXEC_CTX *current_policy) in execute_policy_locality() argument
1210 switch (current_policy->state) { in execute_policy_locality()
1211 statecase(current_policy->state, POLICY_EXECUTE_INIT) in execute_policy_locality()
1214 current_policy->session, in execute_policy_locality()
1220 statecase(current_policy->state, POLICY_EXECUTE_FINISH) in execute_policy_locality()
1225 current_policy->state = POLICY_EXECUTE_INIT; in execute_policy_locality()
1228 statecasedefault(current_policy->state); in execute_policy_locality()
1253 IFAPI_POLICY_EXEC_CTX *current_policy) in execute_policy_nv_written() argument
1259 switch (current_policy->state) { in execute_policy_nv_written()
1260 statecase(current_policy->state, POLICY_EXECUTE_INIT) in execute_policy_nv_written()
1263 current_policy->session, in execute_policy_nv_written()
1269 statecase(current_policy->state, POLICY_EXECUTE_FINISH) in execute_policy_nv_written()
1274 current_policy->state = POLICY_EXECUTE_INIT; in execute_policy_nv_written()
1277 statecasedefault(current_policy->state); in execute_policy_nv_written()
1303 IFAPI_POLICY_EXEC_CTX *current_policy) in execute_policy_or() argument
1309 switch (current_policy->state) { in execute_policy_or()
1310 statecase(current_policy->state, POLICY_EXECUTE_INIT) in execute_policy_or()
1313 ¤t_policy->digest_list); in execute_policy_or()
1317 current_policy->session, in execute_policy_or()
1319 ¤t_policy->digest_list); in execute_policy_or()
1322 statecase(current_policy->state, POLICY_EXECUTE_FINISH) in execute_policy_or()
1329 statecasedefault(current_policy->state); in execute_policy_or()
1357 IFAPI_POLICY_EXEC_CTX *current_policy) in execute_policy_action() argument
1363 switch (current_policy->state) { in execute_policy_action()
1364 statecase(current_policy->state, POLICY_EXECUTE_INIT); in execute_policy_action()
1365 ifapi_policyeval_EXEC_CB *cb = ¤t_policy->callbacks; in execute_policy_action()
1372 statecasedefault(current_policy->state); in execute_policy_action()
1394 IFAPI_POLICY_EXEC_CTX *current_policy) in execute_policy_element() argument
1405 current_policy); in execute_policy_element()
1411 hash_alg, current_policy); in execute_policy_element()
1417 current_policy); in execute_policy_element()
1423 hash_alg, current_policy); in execute_policy_element()
1429 current_policy); in execute_policy_element()
1436 current_policy); in execute_policy_element()
1443 current_policy); in execute_policy_element()
1449 current_policy); in execute_policy_element()
1455 current_policy); in execute_policy_element()
1461 current_policy); in execute_policy_element()
1467 current_policy); in execute_policy_element()
1473 current_policy); in execute_policy_element()
1479 current_policy); in execute_policy_element()
1485 current_policy); in execute_policy_element()
1491 current_policy); in execute_policy_element()
1497 current_policy); in execute_policy_element()
1503 current_policy); in execute_policy_element()
1509 current_policy); in execute_policy_element()
1622 IFAPI_POLICY_EXEC_CTX *current_policy) in ifapi_policyeval_execute() argument
1630 while (current_policy->policy_elements) { in ifapi_policyeval_execute()
1633 current_policy->policy_elements->object, in ifapi_policyeval_execute()
1634 current_policy->hash_alg, in ifapi_policyeval_execute()
1635 current_policy); in ifapi_policyeval_execute()
1639 Esys_FlushContext(esys_ctx, current_policy->session); in ifapi_policyeval_execute()
1640 current_policy->session = ESYS_TR_NONE; in ifapi_policyeval_execute()
1641 ifapi_free_node_list(current_policy->policy_elements); in ifapi_policyeval_execute()
1646 current_policy_element = current_policy->policy_elements; in ifapi_policyeval_execute()
1647 current_policy->policy_elements = current_policy->policy_elements->next; in ifapi_policyeval_execute()