函数逻辑报告 |
Source Code:security\apparmor\domain.c |
Create Date:2022-07-27 21:31:02 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:profile_transition
函数原型:static struct aa_label *profile_transition(struct aa_profile *profile, const struct linux_binprm *bprm, char *buffer, struct path_cond *cond, bool *secure_exec)
返回类型:struct aa_label
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| struct aa_profile * | profile | |
| const struct linux_binprm * | bprm | |
| char * | buffer | |
| struct path_cond * | cond | |
| bool * | secure_exec |
| 628 | bool nonewprivs = false |
| 629 | error等于0 |
| 637 | 如果error则 |
| 648 | 如果profile_unconfined(profile)则 |
| 651 | 如果new则 |
| 655 | AA_DEBUG("unconfined exec no attachment") |
| 667 | 转到:audit |
| 668 | 否则如果非new则 |
| 673 | 否则 |
| 689 | 否则如果COMPLAIN_MODE(profile)则 |
| 691 | struct aa_profile * new_profile = NULL |
| 695 | 如果非new_profile则 |
| 698 | 否则 |
| 713 | dbg_printk("apparmor: scrubbing environment variables for %s profile=", name) |
| 715 | aa_label_printk(new, GFP_KERNEL) |
| 716 | dbg_printk("\n") |
| 718 | * secure_exec = true |
| 721 | audit : |
| 724 | 如果非new或nonewprivs则 |
| 725 | aa_put_label(new) |
| 726 | 返回:错误号 |
| 729 | 返回:new |
| 名称 | 描述 |
|---|---|
| handle_onexec | sure none ns domain transitions are correctly applied with onexec |
| apparmor_bprm_set_creds | apparmor_bprm_set_creds - set the new creds on the bprm struct*@bprm: binprm for the exec (NOT NULL)* Returns: %0 or error on failure* TODO: once the other paths are done see if we can't refactor into a fn |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |