函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:aa_bind_mount

函数原型:int aa_bind_mount(struct aa_label *label, const struct path *path, const char *dev_name, unsigned long flags)

返回类型:int

参数:

类型参数名称
struct aa_label *label
const struct path *path
const char *dev_name
unsigned longflags
426  char * buffer = NULL, * old_buffer = NULL
430  AA_BUG(!label)
431  AA_BUG(!path)
433  如果非dev_name或非dev_name则返回:负EINVAL
436  flags与等于MS_REC按位或MS_BIND
438  error等于kern_path(dev_name, llow links at the end | rce terminal automount , & old_path)
439  如果error则返回:error
442  buffer等于aa_get_buffer(false)
443  old_buffer等于aa_get_buffer(false)
444  error等于负ENOMEM
445  如果非buffer或非old_buffer则转到:out
448  error等于fn_for_each_confined(label, profile, match_mnt - handle path matching for mount*@profile: the confining profile*@mntpath: for the mntpnt (NOT NULL)*@buffer: buffer to be used to lookup mntpath*@devpath: path devname/src_name (MAYBE NULL)*@devbuffer: buffer to be used to lookup )
451  out :
452  aa_put_buffer(buffer)
453  aa_put_buffer(old_buffer)
454  path_put( & old_path)
456  返回:error