函数逻辑报告 |
Source Code:fs\crypto\keysetup_v1.c |
Create Date:2022-07-29 10:57:43 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:Search the current task's subscribed keyrings for a "logon" key with* description prefix:descriptor, and if found acquire a read lock on it and* return a pointer to its validated payload in *payload_ret.
函数原型:static struct key *find_and_lock_process_key(const char *prefix, const u8 descriptor[8], unsigned int min_keysize, const struct fscrypt_key **payload_ret)
返回类型:struct key
参数:
类型 | 参数 | 名称 |
---|---|---|
const char * | prefix | |
const u8 | descriptor | |
unsigned int | min_keysize | |
const struct fscrypt_key ** | payload_ret |
102 | description等于kasprintf(GFP_NOFS, "%s%*phN", prefix, FSCRYPT_KEY_DESCRIPTOR_SIZE, descriptor) |
104 | 如果非description则返回:错误号 |
108 | 释放内存 |
112 | lock for reading |
113 | ukp等于user_key_payload_locked(key) |
118 | payload等于actual data |
120 | 如果length of this data 不等于sizeof(structfscrypt_key)或size小于1或size大于FSCRYPT_MAX_KEY_SIZE则 |
122 | fscrypt_warn(NULL, "key with description '%s' has invalid payload", description) |
125 | 转到:invalid |
128 | 如果size小于min_keysize则 |
129 | fscrypt_warn(NULL, "key with description '%s' is too short (got %u bytes, need %u+ bytes)", description, size, min_keysize) |
132 | 转到:invalid |
135 | payload_ret等于payload |
136 | 返回:key |
138 | invalid : |
141 | 返回:错误号 |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |