函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:security\apparmor\label.c Create Date:2022-07-27 21:44:24
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:__vec_find - find label that matches @vec in label set*@vec: vec of profiles to find matching label for (NOT NULL)*@n: length of @vec* Requires: @vec_labelset(vec) lock held* caller to hold a valid ref on l* Returns: ref counted @label if matching label

函数原型:static struct aa_label *__vec_find(struct aa_profile **vec, int n)

返回类型:struct aa_label

参数:

类型参数名称
struct aa_profile **vec
intn
696  AA_BUG(!vec)
697  AA_BUG(! * vec)
698  AA_BUG(n <= 0)
700  node等于rb_node
701 node循环
702  this等于rb_entry(node, structaa_label, node)
703  result等于vec_cmp - label comparison for set ordering*@a: label to compare (NOT NULL)*@vec: vector of profiles to compare (NOT NULL)*@n: length of @vec* Returns: <0 if a < vec* ==0 if a == vec* >0 if a > vec
705  如果result大于0则node等于rb_left
707  否则如果result小于0则node等于rb_right
709  否则返回:__aa_get_label - get a reference count to uncounted label reference*@l: reference to get a count on* Returns: pointer to reference OR NULL if race is lost and reference is* being repeated.* Requires: lock held, and the return code MUST be checked
713  返回:NULL
调用者
名称描述
__label_find__label_find - find label @label in label set*@label: label to find (NOT NULL)* Requires: labels_set(@label)->lock held* caller to hold a valid ref on l* Returns: ref counted @label if @label is in tree OR* ref counted label that is equiv to @label in
vec_findvec_find - find label @l in label set*@vec: array of profiles to find equiv label for (NOT NULL)*@n: length of @vec* Returns: refcounted label if @vec equiv is in tree* else NULL if @vec equiv is not in tree