Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:security\keys\keyring.c Create Date:2022-07-28 18:18:22
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:Preallocate memory so that a key can be linked into to a keyring.

Proto:int __key_link_begin(struct key *keyring, const struct keyring_index_key *index_key, struct assoc_array_edit **_edit)

Type:int

Parameter:

TypeParameterName
struct key *keyring
const struct keyring_index_key *index_key
struct assoc_array_edit **_edit
1301  kenter("%d,%s,%s,", key serial number , name, description)
1304  BUG_ON(desc_len == 0)
1305  BUG_ON( * _edit != NULL)
1307  * _edit = NULL
1309  ret = -EKEYREVOKED
1310  If st_bit - Determine whether a bit is set*@nr: bit number to test*@addr: Address to start counting from Then Go to error
1316  edit = assoc_array_insert - Script insertion of an object into an associative array*@array: The array to insert into
1320  If IS_ERR(edit) Then
1321  ret = PTR_ERR(edit)
1322  Go to error
1328  If Not dead_leaf Then
1329  ret = key_payload_reserve - Adjust data quota reservation for the key's payload*@key: The key to make the reservation for
1331  If ret < 0 Then Go to error_cancel
1335  _edit = edit
1336  kleave(" = 0")
1337  Return 0
1339  error_cancel :
1340  assoc_array_cancel_edit - Discard an edit script
1341  error :
1342  kleave(" = %d", ret)
1343  Return ret
Caller
NameDescribe
key_reject_and_linkkey_reject_and_link - Negatively instantiate a key and link it into the keyring.*@key: The key to instantiate.*@timeout: The timeout on the negative key.*@error: The error to return when the key is hit.
key_create_or_updatekey_create_or_update - Update or create and instantiate a key.*@keyring_ref: A pointer to the destination keyring with possession flag.*@type: The type of key.*@description: The searchable description for the key.
key_linkkey_link - Link a key to a keyring*@keyring: The keyring to make the link in
key_movekey_move - Move a key from one keyring to another*@key: The key to move*@from_keyring: The keyring to remove the link from
construct_alloc_keyAllocate a new key in under-construction state and attempt to link it in to* the requested keyring.* May return a key that's already under construction instead if there was a* race between two thread calling request_key().
key_instantiate_and_linkkey_instantiate_and_link - Instantiate a key and link it into the keyring.*@key: The key to instantiate.*@data: The data to use to instantiate the keyring.*@datalen: The length of @data.*@keyring: Keyring to create a link in on success (or NULL).