Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

security/apparmor/label.c __label_remove() -> __aa_proxy_redirect()

Type Parameter Key Value
PARAM_VALUE 0 orig 4096-ptr_max
PARAM_VALUE 0 orig->vec 4096-ptr_max
PARAM_VALUE 1 new 4096-ptr_max
CAPPED_DATA 0 orig 1
CAPPED_DATA 1 new 1
DATA_SOURCE 0 orig $0
DATA_SOURCE 1 new $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 flags
HALF_LOCKED2 &ls->lock

security/apparmor/label.c __proxy_share() -> __aa_proxy_redirect()

Type Parameter Key Value
PARAM_VALUE 0 orig 4096-ptr_max
PARAM_VALUE 0 orig->proxy->count.count.refcount.refs.counter (-1073741824)
PARAM_VALUE 1 new 4096-ptr_max
PARAM_VALUE 1 new->vec 4096-ptr_max
CAPPED_DATA 0 orig 1
CAPPED_DATA 1 new 1
DATA_SOURCE 0 orig $0
DATA_SOURCE 1 new $1
PARAM_COMPARE 1 new->proxy == $0->proxy
NOCHECK_CALL
LOCK2 flags
HALF_LOCKED2 &ons->labels.lock

security/apparmor/label.c aa_label_replace() -> __aa_proxy_redirect()

Type Parameter Key Value
PARAM_VALUE 0 orig 4096-ptr_max
PARAM_VALUE 0 orig->hname 1-u64max
PARAM_VALUE 0 orig->vec 4096-ptr_max
PARAM_VALUE 1 new 4096-ptr_max
PARAM_VALUE 1 new->hname 1-u64max
PARAM_VALUE 1 new->vec 4096-ptr_max
CAPPED_DATA 0 orig->hname 1
CAPPED_DATA 0 orig->proxy 1
CAPPED_DATA 1 new->hname 1
CAPPED_DATA 1 new->proxy 1
DATA_SOURCE 0 orig $0
DATA_SOURCE 1 new $1
PARAM_COMPARE 1 new->hname == $0->hname
PARAM_COMPARE 1 new->proxy == $0->proxy
NOCHECK_CALL
LOCK2 &ons->labels.lock
LOCK2 flags
HALF_LOCKED2 &ns->lock
TYPE_LOCK (struct aa_labelset)->lock

security/apparmor/policy_ns.c destroy_ns() -> __aa_proxy_redirect()

Type Parameter Key Value
PARAM_VALUE 0 orig 4096-ptr_max
PARAM_VALUE 1 new 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &ns->labels.lock
LOCK2 &ns->lock
LOCK2 flags
TYPE_LOCK (struct aa_labelset)->lock
TYPE_LOCK (struct aa_ns)->lock