函数逻辑报告 |
Source Code:security\commoncap.c |
Create Date:2022-07-27 20:10:05 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:getsecurity: We are called for security
函数原型:int cap_inode_getsecurity(struct inode *inode, const char *name, void **buffer, bool alloc)
返回类型:int
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| struct inode * | inode | |
| const char * | name | |
| void ** | buffer | |
| bool | alloc |
| 375 | char * tmpbuf = NULL |
| 381 | 如果字符串比较不等于0则返回:负EOPNOTSUPP |
| 384 | dentry等于d_find_any_alias(inode) |
| 388 | size等于sizeof(structvfs_ns_cap_data) |
| 389 | ret等于vfs_getxattr_alloc(dentry, XATTR_NAME_CAPS, & tmpbuf, size, GFP_NOFS) |
| 398 | 如果is_v2header((size_t)ret, cap)则 |
| 406 | 否则如果非is_v3header((size_t)ret, cap)则 |
| 412 | root等于le32_to_cpu(rootid) |
| 418 | 如果(mappedroot != (uid_t) - 1 && mappedroot != (uid_t)0)则 |
| 427 | 如果非rootid_owns_currentns(kroot)则 |
| 428 | 释放内存 |
| 429 | 返回:负EOPNOTSUPP |
| 433 | size等于sizeof(structvfs_cap_data) |
| 434 | 如果alloc则 |
| 436 | 如果buffer则 |
| 439 | magic等于VFS_CAP_REVISION_2 |
| 440 | nsmagic等于le32_to_cpu(magic_etc) |
| 444 | Little endian 等于cpu_to_le32(magic) |
| 445 | 否则 |
| 449 | 释放内存 |
| 450 | 返回:size |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |