Documented in 1 files:
Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 6 files:
- security/apparmor/capability.c, line 145
- security/apparmor/ipc.c, line 99
- security/apparmor/lsm.c, line 648
- security/apparmor/mount.c
- security/apparmor/net.c
- security/apparmor/task.c
Smatch caller information:
security/apparmor/ipc.c profile_signal_perm() -> aa_check_perms()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | profile | 4096-ptr_max |
| PARAM_VALUE | 0 | profile->label.rules | 4096-ptr_max |
| PARAM_VALUE | 0 | profile->mode | s64min-2,4-s64max |
| PARAM_VALUE | 1 | perms | 8678448063599136768 |
| PARAM_VALUE | 1 | perms->audit | 0,u32max |
| PARAM_VALUE | 2 | request | 2,4 |
| PARAM_VALUE | 3 | ad | 8733924822650298368 |
| PARAM_VALUE | 3 | ad->class | 10 |
| PARAM_VALUE | 3 | ad->common.apparmor_audit_data | 8733924822650298368 |
| PARAM_VALUE | 3 | ad->common.selinux_audit_data | 8733924822650298368 |
| PARAM_VALUE | 3 | ad->common.smack_audit_data | 8733924822650298368 |
| PARAM_VALUE | 3 | ad->common.type | 7 |
| PARAM_VALUE | 3 | ad->error | (-13),(-2),0 |
| PARAM_VALUE | 3 | ad->iface.ns | 0 |
| PARAM_VALUE | 3 | ad->info | 0 |
| PARAM_VALUE | 3 | ad->mnt.data | 0 |
| PARAM_VALUE | 3 | ad->mnt.type | 0 |
| PARAM_VALUE | 3 | ad->name | 0 |
| PARAM_VALUE | 3 | ad->net.addr | 0 |
| PARAM_VALUE | 3 | ad->net.type | 0 |
| PARAM_VALUE | 3 | ad->op | 1176706329751384064 |
| PARAM_VALUE | 3 | ad->peer | 4096-ptr_max |
| PARAM_VALUE | 3 | ad->rlim.max | 0 |
| PARAM_VALUE | 3 | ad->signal | 0-31,35,128-160 |
| PARAM_VALUE | 3 | ad->tags | 0 |
| PARAM_VALUE | 3 | ad->type | 0 |
| CAPPED_DATA | 2 | request | 1 |
| DATA_SOURCE | 0 | profile | $1 |
| DATA_SOURCE | 2 | request | $3 |
| DATA_SOURCE | 3 | ad | $4 |
| HARD_MAX | 2 | request | 4 |
security/apparmor/net.c aa_do_perms() -> aa_check_perms()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | profile | 4096-ptr_max |
| PARAM_VALUE | 0 | profile->label.rules | 4096-ptr_max |
| PARAM_VALUE | 1 | perms | 532756557635837952 |
| PARAM_VALUE | 1 | perms->audit | 0,u32max |
| PARAM_VALUE | 3 | ad->class | 0,2-3,5,7,9-10,14,21-22 |
| PARAM_VALUE | 3 | ad->iface.profile | 0 |
| PARAM_VALUE | 3 | ad->net.addrlen | 0,2-110 |
| PARAM_VALUE | 3 | ad->signal | 0-31,35,128-160 |
| BUF_SIZE | 3 | ad->common.apparmor_audit_data | (-1),152 |
| BUF_SIZE | 3 | ad->common.u.net | (-1),56 |
| BUF_SIZE | 3 | ad->info | (-1),21,24,28 |
| BUF_SIZE | 3 | ad->op | (-1),7 |
| BUF_SIZE | 3 | ad->peer | (-1),104 |
| DATA_SOURCE | 0 | profile | $0 |
| DATA_SOURCE | 2 | request | $3 |
| DATA_SOURCE | 3 | ad | $5 |
| STR_LEN | 3 | ad->common.apparmor_audit_data->op | (-1),6 |
| STR_LEN | 3 | ad->info | (-1),20,23,27 |
| STR_LEN | 3 | ad->op | (-1),6 |
security/apparmor/net.c aa_secmark_perm() -> aa_check_perms()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | profile | 4096-ptr_max |
| PARAM_VALUE | 0 | profile->label.rules | 4096-ptr_max |
| PARAM_VALUE | 1 | perms | 6061409853436461056 |
| PARAM_VALUE | 1 | perms->allow | 0,u32max |
| PARAM_VALUE | 1 | perms->audit | 0,u32max |
| PARAM_VALUE | 1 | perms->cond | 0 |
| PARAM_VALUE | 1 | perms->deny | 0,u32max |
| PARAM_VALUE | 1 | perms->hide | 0 |
| PARAM_VALUE | 1 | perms->label | 0 |
| PARAM_VALUE | 1 | perms->subtree | 0 |
| PARAM_VALUE | 1 | perms->tag | 0 |
| PARAM_VALUE | 1 | perms->xindex | 0 |
| PARAM_VALUE | 2 | request | 2,4,64 |
| PARAM_VALUE | 3 | ad | 480121953639264256 |
| PARAM_VALUE | 3 | ad->class | 14 |
| PARAM_VALUE | 3 | ad->common.apparmor_audit_data | 480121953639264256 |
| PARAM_VALUE | 3 | ad->common.selinux_audit_data | 480121953639264256 |
| PARAM_VALUE | 3 | ad->common.smack_audit_data | 480121953639264256 |
| PARAM_VALUE | 3 | ad->common.type | 2,7 |
| PARAM_VALUE | 3 | ad->common.u.net | 1914080698324312064 |
| PARAM_VALUE | 3 | ad->error | (-13),(-2),0 |
| PARAM_VALUE | 3 | ad->iface.ns | 0 |
| PARAM_VALUE | 3 | ad->info | 0 |
| PARAM_VALUE | 3 | ad->mnt.data | 0 |
| PARAM_VALUE | 3 | ad->mnt.type | 0 |
| PARAM_VALUE | 3 | ad->name | 0 |
| PARAM_VALUE | 3 | ad->net.addr | 0 |
| PARAM_VALUE | 3 | ad->net.protocol | 0-u16max |
| PARAM_VALUE | 3 | ad->net.type | 0-u16max |
| PARAM_VALUE | 3 | ad->op | 3903629404945924096,5301814466429702144,7528988410598850560 |
| PARAM_VALUE | 3 | ad->peer | 0 |
| PARAM_VALUE | 3 | ad->rlim.max | 0 |
| PARAM_VALUE | 3 | ad->signal | 0 |
| PARAM_VALUE | 3 | ad->tags | 0 |
| PARAM_VALUE | 3 | ad->type | 0 |
| DATA_SOURCE | 0 | profile | $0 |
| DATA_SOURCE | 2 | request | $1 |
| DATA_SOURCE | 3 | ad | $3 |
| TERMINATED | 3 | ad->op | 1 |
| HARD_MAX | 2 | request | 64 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | rcu_read |
security/apparmor/task.c aa_profile_ns_perm() -> aa_check_perms()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | profile | 4096-ptr_max |
| PARAM_VALUE | 0 | profile->label.rules | 4096-ptr_max |
| PARAM_VALUE | 0 | profile->mode | s64min-2,4-s64max |
| PARAM_VALUE | 1 | perms | 3314452499782684672 |
| PARAM_VALUE | 2 | request | 8 |
| PARAM_VALUE | 3 | ad | 7258186367353262080 |
| PARAM_VALUE | 3 | ad->class | 21 |
| PARAM_VALUE | 3 | ad->common.apparmor_audit_data | 7258186367353262080 |
| PARAM_VALUE | 3 | ad->common.selinux_audit_data | 7258186367353262080 |
| PARAM_VALUE | 3 | ad->common.smack_audit_data | 7258186367353262080 |
| PARAM_VALUE | 3 | ad->common.type | 5 |
| PARAM_VALUE | 3 | ad->error | (-13),(-2),0 |
| PARAM_VALUE | 3 | ad->iface.ns | 0 |
| PARAM_VALUE | 3 | ad->info | 0 |
| PARAM_VALUE | 3 | ad->mnt.data | 0 |
| PARAM_VALUE | 3 | ad->mnt.type | 0 |
| PARAM_VALUE | 3 | ad->name | 0 |
| PARAM_VALUE | 3 | ad->net.addr | 0 |
| PARAM_VALUE | 3 | ad->net.type | 0 |
| PARAM_VALUE | 3 | ad->op | 2552818034242895872 |
| PARAM_VALUE | 3 | ad->peer | 0 |
| PARAM_VALUE | 3 | ad->request | 8 |
| PARAM_VALUE | 3 | ad->rlim.max | 0 |
| PARAM_VALUE | 3 | ad->signal | 0 |
| PARAM_VALUE | 3 | ad->subj_label | 4096-ptr_max |
| PARAM_VALUE | 3 | ad->tags | 0 |
| PARAM_VALUE | 3 | ad->type | 0 |
| BUF_SIZE | 3 | ad->subj_label | 104 |
| DATA_SOURCE | 0 | profile | $0 |
| DATA_SOURCE | 2 | request | $2 |
| DATA_SOURCE | 3 | ad | $1 |
security/apparmor/task.c profile_ptrace_perm() -> aa_check_perms()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | profile | 4096-ptr_max |
| PARAM_VALUE | 0 | profile->label.rules | 4096-ptr_max |
| PARAM_VALUE | 0 | profile->mode | s64min-2,4-s64max |
| PARAM_VALUE | 1 | perms | 6626306062208851968 |
| PARAM_VALUE | 1 | perms->allow | u32max |
| PARAM_VALUE | 1 | perms->audit | 0,u32max |
| PARAM_VALUE | 1 | perms->cond | 0 |
| PARAM_VALUE | 1 | perms->deny | 0 |
| PARAM_VALUE | 1 | perms->hide | u32max |
| PARAM_VALUE | 1 | perms->label | 0 |
| PARAM_VALUE | 1 | perms->subtree | 0 |
| PARAM_VALUE | 1 | perms->tag | 0 |
| PARAM_VALUE | 1 | perms->xindex | 0 |
| PARAM_VALUE | 2 | request | 2,4,8,16 |
| PARAM_VALUE | 3 | ad | 2128682511571582976 |
| PARAM_VALUE | 3 | ad->class | 9 |
| PARAM_VALUE | 3 | ad->common.apparmor_audit_data | 2128682511571582976 |
| PARAM_VALUE | 3 | ad->common.selinux_audit_data | 2128682511571582976 |
| PARAM_VALUE | 3 | ad->common.smack_audit_data | 2128682511571582976 |
| PARAM_VALUE | 3 | ad->common.type | 7 |
| PARAM_VALUE | 3 | ad->denied | 0 |
| PARAM_VALUE | 3 | ad->iface.ns | 0 |
| PARAM_VALUE | 3 | ad->info | 0 |
| PARAM_VALUE | 3 | ad->mnt.data | 0 |
| PARAM_VALUE | 3 | ad->mnt.type | 0 |
| PARAM_VALUE | 3 | ad->name | 0 |
| PARAM_VALUE | 3 | ad->net.addr | 0 |
| PARAM_VALUE | 3 | ad->net.type | 0 |
| PARAM_VALUE | 3 | ad->op | 7247823677839650816 |
| PARAM_VALUE | 3 | ad->peer | 4096-ptr_max |
| PARAM_VALUE | 3 | ad->request | 0 |
| PARAM_VALUE | 3 | ad->rlim.max | 0 |
| PARAM_VALUE | 3 | ad->signal | 0 |
| PARAM_VALUE | 3 | ad->tags | 0 |
| PARAM_VALUE | 3 | ad->type | 0 |
| DATA_SOURCE | 0 | profile | $1 |
| DATA_SOURCE | 2 | request | $3 |
| DATA_SOURCE | 3 | ad | $4 |
| FUZZY_MAX | 2 | request | 16 |
| BIT_INFO | 2 | request | 0x0,0x1e |
| HARD_MAX | 2 | request | 16 |
| HALF_LOCKED2 | rcu_read |
security/apparmor/capability.c profile_capable() -> aa_check_perms()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | profile | 4096-ptr_max |
| PARAM_VALUE | 0 | profile->label.rules | 4096-ptr_max |
| PARAM_VALUE | 1 | perms | 2135442780886761472 |
| PARAM_VALUE | 3 | ad | 0,7954149384688115712 |
| PARAM_VALUE | 3 | ad->class | 3 |
| PARAM_VALUE | 3 | ad->common.apparmor_audit_data | 7954149384688115712 |
| PARAM_VALUE | 3 | ad->common.selinux_audit_data | 7954149384688115712 |
| PARAM_VALUE | 3 | ad->common.smack_audit_data | 7954149384688115712 |
| PARAM_VALUE | 3 | ad->common.type | 3 |
| PARAM_VALUE | 3 | ad->error | (-13),(-2)-0 |
| PARAM_VALUE | 3 | ad->iface.ns | 0 |
| PARAM_VALUE | 3 | ad->info | 0,2357842257909276672 |
| PARAM_VALUE | 3 | ad->mnt.data | 0 |
| PARAM_VALUE | 3 | ad->mnt.type | 0 |
| PARAM_VALUE | 3 | ad->name | 0 |
| PARAM_VALUE | 3 | ad->net.addr | 0 |
| PARAM_VALUE | 3 | ad->net.type | 0 |
| PARAM_VALUE | 3 | ad->op | 1353852358059446272 |
| PARAM_VALUE | 3 | ad->peer | 0 |
| PARAM_VALUE | 3 | ad->rlim.max | 0 |
| PARAM_VALUE | 3 | ad->signal | 0 |
| PARAM_VALUE | 3 | ad->tags | 0 |
| PARAM_VALUE | 3 | ad->type | 0 |
| BUF_SIZE | 3 | ad->info | (-1),19 |
| DATA_SOURCE | 0 | profile | $0 |
| DATA_SOURCE | 3 | ad | $3 [m] |
| STR_LEN | 3 | ad->info | (-1),18 |
| BIT_INFO | 3 | ad | 0x0,0x6e62d0b8f4ba2000 |
| BIT_INFO | 3 | ad | 0x0,0x6e62d0b8f4ba2000 |
security/apparmor/mount.c build_pivotroot() -> aa_check_perms()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | profile | 4096-ptr_max |
| PARAM_VALUE | 0 | profile->label.rules | 4096-ptr_max |
| PARAM_VALUE | 0 | profile->mode | s64min-2,4-s64max |
| PARAM_VALUE | 1 | perms | 2101345858880139264 |
| PARAM_VALUE | 2 | request | 1 |
| PARAM_VALUE | 3 | ad | 8490790253190295552 |
| PARAM_VALUE | 3 | ad->class | 7 |
| PARAM_VALUE | 3 | ad->common.apparmor_audit_data | 8490790253190295552 |
| PARAM_VALUE | 3 | ad->common.selinux_audit_data | 8490790253190295552 |
| PARAM_VALUE | 3 | ad->common.smack_audit_data | 8490790253190295552 |
| PARAM_VALUE | 3 | ad->common.type | 7 |
| PARAM_VALUE | 3 | ad->error | (-13),(-2),0 |
| PARAM_VALUE | 3 | ad->iface.ns | 0 |
| PARAM_VALUE | 3 | ad->mnt.data | 0 |
| PARAM_VALUE | 3 | ad->mnt.src_name | 0 |
| PARAM_VALUE | 3 | ad->mnt.type | 0 |
| PARAM_VALUE | 3 | ad->name | 0 |
| PARAM_VALUE | 3 | ad->net.addr | 0 |
| PARAM_VALUE | 3 | ad->net.type | 0 |
| PARAM_VALUE | 3 | ad->op | 5253838620858363904 |
| PARAM_VALUE | 3 | ad->peer | 0 |
| PARAM_VALUE | 3 | ad->rlim.max | 0 |
| PARAM_VALUE | 3 | ad->signal | 0 |
| PARAM_VALUE | 3 | ad->subj_label | 0,4096-ptr_max |
| PARAM_VALUE | 3 | ad->tags | 0 |
| PARAM_VALUE | 3 | ad->type | 0 |
| DATA_SOURCE | 0 | profile | $0 |
| DATA_SOURCE | 3 | ad | $5 |
security/apparmor/mount.c match_mnt_path_str() -> aa_check_perms()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | profile | 4096-ptr_max |
| PARAM_VALUE | 0 | profile->label.rules | 4096-ptr_max |
| PARAM_VALUE | 1 | perms | 2718829550611259392 |
| PARAM_VALUE | 2 | request | 2 |
| PARAM_VALUE | 3 | ad | 701974921058553856,3653992199726731264,4682767133795856384,7679699351578632192,7856035615027286016 |
| PARAM_VALUE | 3 | ad->class | 7 |
| PARAM_VALUE | 3 | ad->common.apparmor_audit_data | 701974921058553856,3653992199726731264,4682767133795856384,7679699351578632192,7856035615027286016 |
| PARAM_VALUE | 3 | ad->common.selinux_audit_data | 701974921058553856,3653992199726731264,4682767133795856384,7679699351578632192,7856035615027286016 |
| PARAM_VALUE | 3 | ad->common.smack_audit_data | 701974921058553856,3653992199726731264,4682767133795856384,7679699351578632192,7856035615027286016 |
| PARAM_VALUE | 3 | ad->common.type | 7 |
| PARAM_VALUE | 3 | ad->error | (-13),(-2),0 |
| PARAM_VALUE | 3 | ad->iface.ns | 0 |
| PARAM_VALUE | 3 | ad->mnt.src_name | 0-ptr_max |
| PARAM_VALUE | 3 | ad->name | 0 |
| PARAM_VALUE | 3 | ad->net.addr | 0 |
| PARAM_VALUE | 3 | ad->net.type | 0 |
| PARAM_VALUE | 3 | ad->op | 5915720910712598528 |
| PARAM_VALUE | 3 | ad->peer | 0 |
| PARAM_VALUE | 3 | ad->rlim.max | 0 |
| PARAM_VALUE | 3 | ad->signal | 0 |
| PARAM_VALUE | 3 | ad->tags | 0 |
| PARAM_VALUE | 3 | ad->type | 0 |
| PARAM_VALUE | 3 | *ad->mnt.type | 0 |
| DATA_SOURCE | 0 | profile | $0 |
| DATA_SOURCE | 3 | ad | $9 |
security/apparmor/mount.c profile_umount() -> aa_check_perms()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | profile | 4096-ptr_max |
| PARAM_VALUE | 0 | profile->label.rules | 4096-ptr_max |
| PARAM_VALUE | 1 | perms | 1831917560860700672 |
| PARAM_VALUE | 2 | request | 4 |
| PARAM_VALUE | 3 | ad | 2229218381676511232 |
| PARAM_VALUE | 3 | ad->class | 7 |
| PARAM_VALUE | 3 | ad->common.apparmor_audit_data | 2229218381676511232 |
| PARAM_VALUE | 3 | ad->common.selinux_audit_data | 2229218381676511232 |
| PARAM_VALUE | 3 | ad->common.smack_audit_data | 2229218381676511232 |
| PARAM_VALUE | 3 | ad->common.type | 7 |
| PARAM_VALUE | 3 | ad->error | (-13),(-2),0 |
| PARAM_VALUE | 3 | ad->iface.ns | 0 |
| PARAM_VALUE | 3 | ad->info | 0,3554323739962322944,4694447503368695808,6168487426619887616,8913683159705989120 |
| PARAM_VALUE | 3 | ad->mnt.data | 0 |
| PARAM_VALUE | 3 | ad->mnt.type | 0 |
| PARAM_VALUE | 3 | ad->name | 0 |
| PARAM_VALUE | 3 | ad->net.addr | 0 |
| PARAM_VALUE | 3 | ad->net.type | 0 |
| PARAM_VALUE | 3 | ad->op | 1595522130452656128 |
| PARAM_VALUE | 3 | ad->peer | 0 |
| PARAM_VALUE | 3 | ad->rlim.max | 0 |
| PARAM_VALUE | 3 | ad->signal | 0 |
| PARAM_VALUE | 3 | ad->tags | 0 |
| PARAM_VALUE | 3 | ad->type | 0 |
| DATA_SOURCE | 0 | profile | $0 |
| DATA_SOURCE | 3 | ad | $3 |
security/apparmor/lsm.c profile_uring() -> aa_check_perms()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | profile | 4096-ptr_max |
| PARAM_VALUE | 0 | profile->label.rules | 4096-ptr_max |
| PARAM_VALUE | 1 | perms | 6329865071411904512 |
| PARAM_VALUE | 2 | request | 8,16 |
| PARAM_VALUE | 3 | ad | 54089852976627712,5745690486502002688 |
| PARAM_VALUE | 3 | ad->class | 22 |
| PARAM_VALUE | 3 | ad->common.apparmor_audit_data | 54089852976627712,5745690486502002688 |
| PARAM_VALUE | 3 | ad->common.selinux_audit_data | 54089852976627712,5745690486502002688 |
| PARAM_VALUE | 3 | ad->common.smack_audit_data | 54089852976627712,5745690486502002688 |
| PARAM_VALUE | 3 | ad->common.type | 7 |
| PARAM_VALUE | 3 | ad->error | (-13),(-2),0 |
| PARAM_VALUE | 3 | ad->iface.ns | 0 |
| PARAM_VALUE | 3 | ad->info | 0 |
| PARAM_VALUE | 3 | ad->mnt.data | 0 |
| PARAM_VALUE | 3 | ad->mnt.type | 0 |
| PARAM_VALUE | 3 | ad->name | 0 |
| PARAM_VALUE | 3 | ad->net.addr | 0 |
| PARAM_VALUE | 3 | ad->net.type | 0 |
| PARAM_VALUE | 3 | ad->op | 534633519159726080,5429886177137717248 |
| PARAM_VALUE | 3 | ad->peer | 0 |
| PARAM_VALUE | 3 | ad->rlim.max | 0 |
| PARAM_VALUE | 3 | ad->signal | 0 |
| PARAM_VALUE | 3 | ad->tags | 0 |
| PARAM_VALUE | 3 | ad->type | 0 |
| CAPPED_DATA | 2 | request | 1 |
| DATA_SOURCE | 0 | profile | $0 |
| DATA_SOURCE | 2 | request | $1 |
| DATA_SOURCE | 3 | ad | $4 |
| HARD_MAX | 2 | request | 16 |