Function report |
Source Code:security\apparmor\label.c |
Create Date:2022-07-28 19:54:24 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:label_merge_insert - create a new label by merging @a and @b*@new: preallocated label to merge into (NOT NULL)*@a: label to merge with @b (NOT NULL)*@b: label to merge with @a (NOT NULL)* Requires: preallocated proxy* Returns: ref counted label either
Proto:static struct aa_label *label_merge_insert(struct aa_label *new, struct aa_label *a, struct aa_label *b)
Type:struct aa_label
Parameter:
Type | Parameter | Name |
---|---|---|
struct aa_label * | new | |
struct aa_label * | a | |
struct aa_label * | b |
1029 | bool stale = false |
1040 | If profile_is_stale(next) Then |
1046 | k++ |
1047 | stale = true |
1055 | If invcount Then |
1059 | If size == 1 Then |
1060 | label = aa_get_label( & label) |
1061 | Return label |
1063 | Else if Not stale Then |
1068 | If k == size Then Return aa_get_label(a) |
1070 | Else if k == size Then Return aa_get_label(b) |
1073 | If vec_unconfined(vec, size) Then flags |= label unconfined only if all |
1075 | ls = labels_set(new) |
1076 | write_lock_irqsave( & lock, flags) |
1078 | write_unlock_irqrestore( & lock, flags) |
1080 | Return label |
Name | Describe |
---|---|
aa_label_merge | aa_label_merge - attempt to insert new merged label of @a and @b*@ls: set of labels to insert label into (NOT NULL)*@a: label to merge with @b (NOT NULL)*@b: label to merge with @a (NOT NULL)*@gfp: memory allocation type* Requires: caller to hold valid |
Source code conversion tool public plug-in interface | X |
---|---|
Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |