函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:security\tomoyo\common.c Create Date:2022-07-27 21:05:00
Last Modify:2020-03-18 09:15:18 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:moyo_print_entry - Print an ACL entry.*@head: Pointer to "struct tomoyo_io_buffer".*@acl: Pointer to an ACL entry.* Returns true on success, false otherwise.

函数原型:static bool tomoyo_print_entry(struct tomoyo_io_buffer *head, struct tomoyo_acl_info *acl)

返回类型:bool

参数:

类型参数名称
struct tomoyo_io_buffer *head
struct tomoyo_acl_info *acl
1395  acl_type等于 One of values in "enum tomoyo_acl_entry_type_index".
1396  bool first = true
1399  如果print_cond_part则转到:print_cond_part
1401  如果 true or false or TOMOYO_GC_IN_PROGRESS 则返回:true
1403  如果非moyo_flush - Flush queued string to userspace's buffer.*@head: Pointer to "struct tomoyo_io_buffer".* Returns true if all data was flushed, false otherwise.则返回:false
1405  否则如果acl_type恒等于TOMOYO_TYPE_PATH_ACL
1406  ptr等于container_of - cast a member of a structure out to the containing structure*@ptr: the pointer to the member.*@type: the type of the container struct this is embedded in.*@member: the name of the member within the struct.(acl, typeof( * ptr), head)
1408  perm等于Bitmask of values in "enum tomoyo_path_acl_index".
1411  如果非perm按位与1左移bit位的值则继续下一循环
1413  如果print_transition_related_onlybit不等于TOMOYO_TYPE_EXECUTE则继续下一循环
1416  如果first
1419  否则
1424  如果first则返回:true
1426  moyo_print_name_union - Print a tomoyo_name_union.*@head: Pointer to "struct tomoyo_io_buffer".*@ptr: Pointer to "struct tomoyo_name_union".
1427  否则如果acl_type恒等于TOMOYO_TYPE_MANUAL_TASK_ACL
1428  ptr等于container_of - cast a member of a structure out to the containing structure*@ptr: the pointer to the member.*@type: the type of the container struct this is embedded in.*@member: the name of the member within the struct.(acl, typeof( * ptr), head)
1431  moyo_set_group - Print "acl_group " header keyword and category name.*@head: Pointer to "struct tomoyo_io_buffer".*@category: Category name.* Returns nothing.
1432  moyo_set_string - Queue string to "struct tomoyo_io_buffer" structure
1433  moyo_set_string - Queue string to "struct tomoyo_io_buffer" structure
1434  否则如果print_transition_related_only
1435  返回:true
1436  否则如果acl_type恒等于TOMOYO_TYPE_PATH2_ACL
1437  ptr等于container_of - cast a member of a structure out to the containing structure*@ptr: the pointer to the member.*@type: the type of the container struct this is embedded in.*@member: the name of the member within the struct.(acl, typeof( * ptr), head)
1439  perm等于Bitmask of values in "enum tomoyo_path2_acl_index".
1442  如果非perm按位与1左移bit位的值则继续下一循环
1444  如果first
1447  否则
1453  如果first则返回:true
1455  moyo_print_name_union - Print a tomoyo_name_union.*@head: Pointer to "struct tomoyo_io_buffer".*@ptr: Pointer to "struct tomoyo_name_union".
1456  moyo_print_name_union - Print a tomoyo_name_union.*@head: Pointer to "struct tomoyo_io_buffer".*@ptr: Pointer to "struct tomoyo_name_union".
1457  否则如果acl_type恒等于TOMOYO_TYPE_PATH_NUMBER_ACL
1458  ptr等于container_of - cast a member of a structure out to the containing structure*@ptr: the pointer to the member.*@type: the type of the container struct this is embedded in.*@member: the name of the member within the struct.(acl, typeof( * ptr), head)
1460  perm等于Bitmask of values in "enum tomoyo_path_number_acl_index".
1463  如果非perm按位与1左移bit位的值则继续下一循环
1465  如果first
1468  否则
1474  如果first则返回:true
1476  moyo_print_name_union - Print a tomoyo_name_union.*@head: Pointer to "struct tomoyo_io_buffer".*@ptr: Pointer to "struct tomoyo_name_union".
1477  moyo_print_number_union - Print a tomoyo_number_union.*@head: Pointer to "struct tomoyo_io_buffer".*@ptr: Pointer to "struct tomoyo_number_union".* Returns nothing.
1478  否则如果acl_type恒等于TOMOYO_TYPE_MKDEV_ACL
1479  ptr等于container_of - cast a member of a structure out to the containing structure*@ptr: the pointer to the member.*@type: the type of the container struct this is embedded in.*@member: the name of the member within the struct.(acl, typeof( * ptr), head)
1481  perm等于Bitmask of values in "enum tomoyo_mkdev_acl_index".
1484  如果非perm按位与1左移bit位的值则继续下一循环
1486  如果first
1489  否则
1495  如果first则返回:true
1497  moyo_print_name_union - Print a tomoyo_name_union.*@head: Pointer to "struct tomoyo_io_buffer".*@ptr: Pointer to "struct tomoyo_name_union".
1498  moyo_print_number_union - Print a tomoyo_number_union.*@head: Pointer to "struct tomoyo_io_buffer".*@ptr: Pointer to "struct tomoyo_number_union".* Returns nothing.
1499  moyo_print_number_union - Print a tomoyo_number_union.*@head: Pointer to "struct tomoyo_io_buffer".*@ptr: Pointer to "struct tomoyo_number_union".* Returns nothing.
1500  moyo_print_number_union - Print a tomoyo_number_union.*@head: Pointer to "struct tomoyo_io_buffer".*@ptr: Pointer to "struct tomoyo_number_union".* Returns nothing.
1501  否则如果acl_type恒等于TOMOYO_TYPE_INET_ACL
1502  ptr等于container_of - cast a member of a structure out to the containing structure*@ptr: the pointer to the member.*@type: the type of the container struct this is embedded in.*@member: the name of the member within the struct.(acl, typeof( * ptr), head)
1504  perm等于Bitmask of values in "enum tomoyo_network_acl_index"
1507  如果非perm按位与1左移bit位的值则继续下一循环
1509  如果first
1515  否则
1520  如果first则返回:true
1522  moyo_set_space - Put a space to "struct tomoyo_io_buffer" structure.*@head: Pointer to "struct tomoyo_io_buffer".* Returns nothing.
1523  如果Pointer to address group.
1527  否则
1530  tomoyo_print_ip(buf, buf的长度, & address)
1533  moyo_print_number_union - Print a tomoyo_number_union.*@head: Pointer to "struct tomoyo_io_buffer".*@ptr: Pointer to "struct tomoyo_number_union".* Returns nothing.
1534  否则如果acl_type恒等于TOMOYO_TYPE_UNIX_ACL
1535  ptr等于container_of - cast a member of a structure out to the containing structure*@ptr: the pointer to the member.*@type: the type of the container struct this is embedded in.*@member: the name of the member within the struct.(acl, typeof( * ptr), head)
1537  perm等于Bitmask of values in "enum tomoyo_network_acl_index"
1540  如果非perm按位与1左移bit位的值则继续下一循环
1542  如果first
1548  否则
1553  如果first则返回:true
1555  moyo_print_name_union - Print a tomoyo_name_union.*@head: Pointer to "struct tomoyo_io_buffer".*@ptr: Pointer to "struct tomoyo_name_union".
1556  否则如果acl_type恒等于TOMOYO_TYPE_MOUNT_ACL
1557  ptr等于container_of - cast a member of a structure out to the containing structure*@ptr: the pointer to the member.*@type: the type of the container struct this is embedded in.*@member: the name of the member within the struct.(acl, typeof( * ptr), head)
1560  moyo_set_group - Print "acl_group " header keyword and category name.*@head: Pointer to "struct tomoyo_io_buffer".*@category: Category name.* Returns nothing.
1561  moyo_print_name_union - Print a tomoyo_name_union.*@head: Pointer to "struct tomoyo_io_buffer".*@ptr: Pointer to "struct tomoyo_name_union".
1562  moyo_print_name_union - Print a tomoyo_name_union.*@head: Pointer to "struct tomoyo_io_buffer".*@ptr: Pointer to "struct tomoyo_name_union".
1563  moyo_print_name_union - Print a tomoyo_name_union.*@head: Pointer to "struct tomoyo_io_buffer".*@ptr: Pointer to "struct tomoyo_name_union".
1564  moyo_print_number_union - Print a tomoyo_number_union.*@head: Pointer to "struct tomoyo_io_buffer".*@ptr: Pointer to "struct tomoyo_number_union".* Returns nothing.
1565  否则如果acl_type恒等于TOMOYO_TYPE_ENV_ACL
1566  ptr等于container_of - cast a member of a structure out to the containing structure*@ptr: the pointer to the member.*@type: the type of the container struct this is embedded in.*@member: the name of the member within the struct.(acl, typeof( * ptr), head)
1569  moyo_set_group - Print "acl_group " header keyword and category name.*@head: Pointer to "struct tomoyo_io_buffer".*@category: Category name.* Returns nothing.
1570  moyo_set_string - Queue string to "struct tomoyo_io_buffer" structure
1572  如果 Maybe NULL.
1573  print_cond_part = true
1574  cond_step等于0
1575  如果非moyo_flush - Flush queued string to userspace's buffer.*@head: Pointer to "struct tomoyo_io_buffer".* Returns true if all data was flushed, false otherwise.则返回:false
1577  print_cond_part :
1578  如果非moyo_print_condition - Print condition part.*@head: Pointer to "struct tomoyo_io_buffer".*@cond: Pointer to "struct tomoyo_condition".* Returns true on success, false otherwise.则返回:false
1580  print_cond_part = false
1581  否则
1582  moyo_set_lf - Put a line feed to "struct tomoyo_io_buffer" structure.*@head: Pointer to "struct tomoyo_io_buffer".* Returns nothing.
1584  返回:true
调用者
名称描述
tomoyo_read_domain2moyo_read_domain2 - Read domain policy.*@head: Pointer to "struct tomoyo_io_buffer".*@list: Pointer to "struct list_head".* Caller holds tomoyo_read_lock().* Returns true on success, false otherwise.