Function report |
Source Code:security\keys\trusted-keys\trusted_tpm1.c |
Create Date:2022-07-28 18:31:06 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:an have zero or more token= options
Proto:static int getoptions(char *c, struct trusted_key_payload *pay, struct trusted_key_options *opt)
Type:int
Parameter:
| Type | Parameter | Name |
|---|---|---|
| char * | c | |
| struct trusted_key_payload * | pay | |
| struct trusted_key_options * | opt |
| 740 | token_mask = 0 |
| 745 | tpm2 = tpm_is_tpm2(chip) |
| 749 | hash = If tpm2 Then HASH_ALGO_SHA256 Else HASH_ALGO_SHA1 |
| 754 | token = match_token(p, key_tokens, args) |
| 755 | If st_and_set_bit - Set a bit and return its old value*@nr: Bit to set*@addr: Address to count from* This is an atomic fully-ordered operation (implied full memory barrier). Then Return -EINVAL |
| 759 | Case token == Opt_pcrinfo |
| 761 | If pcrinfo_len > MAX_PCRINFO_SIZE Then Return -EINVAL |
| 767 | Break |
| 768 | Case token == Opt_keyhandle |
| 772 | keytype = SEAL_keytype |
| 774 | Break |
| 775 | Case token == Opt_keyauth |
| 776 | If strlen - Find the length of a string*@s: The string to be sized != 2 * SHA1_DIGEST_SIZE Then Return -EINVAL |
| 782 | Break |
| 783 | Case token == Opt_blobauth |
| 784 | If strlen - Find the length of a string*@s: The string to be sized != 2 * SHA1_DIGEST_SIZE Then Return -EINVAL |
| 790 | Break |
| 791 | Case token == Opt_migratable |
| 797 | Case token == Opt_pcrlock |
| 802 | Break |
| 804 | If st_bit - Determine whether a bit is set*@nr: bit number to test*@addr: Address to start counting from Then Return -EINVAL |
| 806 | When i < HASH_ALGO__LAST cycle |
| 812 | If i == HASH_ALGO__LAST Then Return -EINVAL |
| 814 | If Not tpm2 && i != HASH_ALGO_SHA1 Then |
| 818 | Break |
| 819 | Case token == Opt_policydigest |
| 820 | digest_len = hash_digest_size[hash] |
| 821 | If Not tpm2 || strlen - Find the length of a string*@s: The string to be sized != 2 * digest_len Then Return -EINVAL |
| 827 | policydigest_len = digest_len |
| 828 | Break |
| 829 | Case token == Opt_policyhandle |
| 835 | policyhandle = handle |
| 836 | Break |
| 837 | Default |
| 838 | Return -EINVAL |
| 841 | Return 0 |
| Name | Describe |
|---|---|
| datablob_parse | datablob_parse - parse the keyctl data and fill in the* payload and options structures* On success returns 0, otherwise -EINVAL. |
| Source code conversion tool public plug-in interface | X |
|---|---|
| Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |