函数逻辑报告 | 
Source Code:security\keys\encrypted-keys\encrypted.c | 
Create Date:2022-07-27 20:06:56 | 
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick | 
| 首页 | 函数Tree | 
| 注解内核,赢得工具 | 下载SCCT | English | 
函数名称:datablob_parse - parse the keyctl data* datablob format:* new [<format>] <master-key name> <decrypted data length>* load [<format>] <master-key name> <decrypted data length>* <encrypted iv + data>* update <new-master-key name>* Tokenizes a copy of the
函数原型:static int datablob_parse(char *datablob, const char **format, char **master_desc, char **decrypted_datalen, char **hex_encoded_iv)
返回类型:int
参数:
| 类型 | 参数 | 名称 | 
|---|---|---|
| char * | datablob | |
| const char ** | format | |
| char ** | master_desc | |
| char ** | decrypted_datalen | |
| char ** | hex_encoded_iv | 
| 182 | 如果非keyword则 | 
| 186 | key_cmd等于match_token(keyword, key_tokens, args) | 
| 190 | 如果非p则 | 
| 195 | key_format等于match_token(p, key_format_tokens, args) | 
| 197 | 当:key_format恒等于Opt_ecryptfs | 
| 198 | 当:key_format恒等于Opt_enc32 | 
| 199 | 当:key_format恒等于Opt_default | 
| 203 | 当:key_format恒等于Opt_error | 
| 204 | master_desc等于p | 
| 205 | 退出 | 
| 208 | 如果非master_desc则 | 
| 214 | 打印信息("encrypted_key: master key parameter \'%s\' is invalid\n", * master_desc) | 
| 216 | 转到:out | 
| 219 | 如果decrypted_datalen则 | 
| 220 | decrypted_datalen等于分割字符串 | 
| 221 | 如果非decrypted_datalen则 | 
| 222 | 打印信息("encrypted_key: keylen parameter is missing\n") | 
| 223 | 转到:out | 
| 249 | 当:key_cmd恒等于Opt_update | 
| 250 | 如果decrypted_datalen则 | 
| 251 | 打印信息("encrypted_key: keyword \'%s\' not allowed when called from .instantiate method\n", keyword) | 
| 254 | 退出 | 
| 256 | ret等于0 | 
| 257 | 退出 | 
| 263 | out : | 
| 264 | 返回:ret | 
| 名称 | 描述 | 
|---|---|
| encrypted_instantiate | rypted_instantiate - instantiate an encrypted key* Decrypt an existing encrypted datablob or create a new encrypted key* based on a kernel random number.* On success, return 0. Otherwise return errno. | 
| encrypted_update | rypted_update - update the master key description* Change the master key description for an existing encrypted key.* The next read will return an encrypted datablob using the new* master key description.* On success, return 0. Otherwise return errno. | 
| 源代码转换工具 开放的插件接口  | X | 
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码  |