Function report | 
Source Code:kernel\audit.c | 
Create Date:2022-07-28 11:22:56 | 
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick | 
| home page | Tree | 
| Annotation kernel can get tool activity | Download SCCT | Chinese | 
Name:audit_set_feature
Proto:static int audit_set_feature(struct audit_features *uaf)
Type:int
Parameter:
| Type | Parameter | Name | 
|---|---|---|
| struct audit_features * | uaf | 
| 1107 | BUILD_BUG_ON - break compile if a condition is true(AUDIT_LAST_FEATURE + 1 > ARRAY_SIZE - get the number of elements in array @arr*@arr: array to be sized(audit_feature_names)) | 
| 1111 | When i <= AUDIT_LAST_FEATURE cycle | 
| 1112 | feature = mask for __u32 (i) | 
| 1116 | If Not (feature & which bits we are dealing with ) Then Continue | 
| 1121 | new_lock = ( which features to lock | which features to lock ) & feature | 
| 1122 | old_lock = which features to lock & feature | 
| 1125 | If old_lock && new_feature != old_feature Then | 
| 1126 | audit_log_feature_change(i, old_feature, new_feature, old_lock, new_lock, 0) | 
| 1128 | Return -EPERM | 
| 1132 | When i <= AUDIT_LAST_FEATURE cycle | 
| 1133 | feature = mask for __u32 (i) | 
| 1137 | If Not (feature & which bits we are dealing with ) Then Continue | 
| 1142 | old_lock = which features to lock & feature | 
| 1143 | new_lock = ( which features to lock | which features to lock ) & feature | 
| 1145 | If new_feature != old_feature Then audit_log_feature_change(i, old_feature, new_feature, old_lock, new_lock, 1) | 
| 1149 | If new_feature Then which feature to enable/disable |= feature | 
| 1151 | Else which feature to enable/disable &= ~feature | 
| 1153 | which features to lock |= new_lock | 
| 1156 | Return 0 | 
| Name | Describe | 
|---|---|
| audit_receive_msg | 
| 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  |