| 函数逻辑报告 | 
| Source Code: security\safesetid\securityfs.c | Create Date:2022-07-27 21:50:54 | 
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick | 
| 首页 | 函数Tree | 
| 注解内核,赢得工具 | 下载SCCT | English | 
函数名称:handle_policy_update
函数原型:static ssize_t handle_policy_update(struct file *file, const char __user *ubuf, size_t len)
返回类型:ssize_t
参数:
| 类型 | 参数 | 名称 | 
|---|---|---|
| struct file * | file | |
| const char __user * | ubuf | |
| size_t | len | 
| 120 | policy_str = NULL | 
| 123 | p等于buf等于memdup_user_nul - duplicate memory region from user space and NUL-terminate*@src: source address in user space*@len: number of bytes to copy* Return: an ERR_PTR() on failure. | 
| 124 | 如果是错误则 | 
| 126 | 转到:out_free_pol | 
| 129 | 如果(policy_str == NULL)则 | 
| 131 | 转到:out_free_buf | 
| 138 | end等于strchr - Find the first occurrence of the character c in the string s.*@s: the string to be searched*@c: the character to search for | 
| 139 | 如果(end == NULL)则 | 
| 141 | 转到:out_free_buf | 
| 143 | end等于'\0' | 
| 146 | 如果非rule则 | 
| 148 | 转到:out_free_buf | 
| 152 | 如果err则转到:out_free_rule | 
| 162 | insert_rule(pol, rule) | 
| 164 | 继续下一循环 | 
| 166 | out_free_rule : | 
| 167 | 释放内存 | 
| 168 | 转到:out_free_buf | 
| 171 | err等于verify_ruleset(pol) | 
| 173 | 如果err且err不等于负EINVAL则转到:out_free_buf | 
| 181 | mutex_lock( & policy_update_lock) | 
| 187 | out_free_buf : | 
| 188 | 释放内存 | 
| 189 | out_free_pol : | 
| 190 | 如果pol则release_ruleset(pol) | 
| 192 | 返回:err | 
| 名称 | 描述 | 
|---|---|
| safesetid_file_write | 
| 源代码转换工具 开放的插件接口 | X | 
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |