| 函数逻辑报告 | 
| Source Code: security\keys\big_key.c | Create Date:2022-07-27 20:02:45 | 
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick | 
| 首页 | 函数Tree | 
| 注解内核,赢得工具 | 下载SCCT | English | 
函数名称:Preparse a big key
函数原型:int big_key_preparse(struct key_preparsed_payload *prep)
返回类型:int
参数:
| 类型 | 参数 | 名称 | 
|---|---|---|
| struct key_preparsed_payload * | prep | 
| 203 | struct path * path = (struct path * ) & Raw data [big_key_path] | 
| 207 | datalen等于Raw datalen , enclen等于datalen加Authentication tag length | 
| 214 | Quota length for proposed payload 等于16 | 
| 216 | Raw data [big_key_len]等于datalen | 
| 224 | pos等于0 | 
| 233 | 如果非enckey则 | 
| 237 | ret等于Calls wait_for_random_bytes() and then calls get_random_bytes(buf, nbytes).* Returns the result of the call to wait_for_random_bytes. | 
| 238 | 如果此条件成立可能性小(为编译器优化)(ret)则转到:err_enckey | 
| 243 | 如果ret则转到:err_enckey | 
| 248 | 如果是错误则 | 
| 250 | 转到:err_enckey | 
| 264 | Raw data [big_key_data]等于enckey | 
| 269 | 否则 | 
| 276 | Raw data [big_key_data]等于data | 
| 277 | memcpy(data, Raw data , Raw datalen ) | 
| 279 | 返回:0 | 
| 281 | err_fput : | 
| 283 | err_enckey : | 
| 285 | error : | 
| 287 | 返回:ret | 
| 源代码转换工具 开放的插件接口 | X | 
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |