| Function report | 
| Source Code: security\keys\key.c | Create Date:2022-07-28 18:15:46 | 
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick | 
| home page | Tree | 
| Annotation kernel can get tool activity | Download SCCT | Chinese | 
Name:Instantiate a key and link it into the target keyring atomically. Must be* called with the target keyring's semaphore writelocked. The target key's* semaphore need not be locked as instantiation is serialised by* key_construction_mutex.
Proto:static int __key_instantiate_and_link(struct key *key, struct key_preparsed_payload *prep, struct key *keyring, struct key *authkey, struct assoc_array_edit **_edit)
Type:int
Parameter:
| Type | Parameter | Name | 
|---|---|---|
| struct key * | key | |
| struct key_preparsed_payload * | prep | |
| struct key * | keyring | |
| struct key * | authkey | |
| struct assoc_array_edit ** | _edit | 
| 432 | awaken = 0 | 
| 438 | If Key state (+) or rejection error (-) == KEY_IS_UNINSTANTIATED Then | 
| 440 | ret = instantiate(key, prep) | 
| 442 | If ret == 0 Then | 
| 444 | atomic_inc( & nikeys) | 
| 447 | If st_and_clear_bit - Clear a bit and return its old value*@nr: Bit to clear*@addr: Address to count from* This is an atomic fully-ordered operation (implied full memory barrier). Then awaken = 1 | 
| 451 | If keyring Then | 
| 452 | If st_bit - Determine whether a bit is set*@nr: bit number to test*@addr: Address to start counting from Then Atomically set a bit in memory | 
| 455 | __key_link(key, _edit) | 
| 462 | If Expiry time of key != Located here for timespec[64]_valid_strict Then | 
| 475 | Return ret | 
| Name | Describe | 
|---|---|
| key_instantiate_and_link | key_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). | 
| key_create_or_update | key_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. | 
| 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 |