函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:fs\namei.c Create Date:2022-07-29 10:34:48
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:getname_flags

函数原型:struct filename *getname_flags(const char __user *filename, int flags, int *empty)

返回类型:struct filename

参数:

类型参数名称
const char __user *filename
intflags
int *empty
134  result等于audit_reusename(filename)
135  如果result则返回:result
138  result等于__getname()
139  如果此条件成立可能性小(为编译器优化)(!result)则返回:错误号
146  kname等于iname
147  pointer to actual string 等于kname
149  len等于复制用户字符串
150  如果此条件成立可能性小(为编译器优化)(len < 0)则
151  __putname(result)
152  返回:错误号
161  如果此条件成立可能性小(为编译器优化)(len == In order to reduce some races, while at the same time doing additional* checking and hopefully speeding things up, we copy filenames to the* kernel data space before using them..* POSIX.1 2.4: an empty pathname is invalid (ENOENT).)则
162  size等于offsetof(structfilename, iname[1])
163  kname等于result
170  result等于分配内存并置零
172  __putname(kname)
173  返回:错误号
175  pointer to actual string 等于kname
176  len等于复制用户字符串
178  __putname(kname)
179  释放内存
180  返回:错误号
183  __putname(kname)
184  释放内存
185  返回:错误号
189  refcnt等于1
191  如果此条件成立可能性小(为编译器优化)(!len)则
192  如果emptyempty等于1
194  如果非flags按位与accept empty path [user_... only] 的值则
195  putname(result)
196  返回:错误号
200  original userland pointer 等于filename
201  aname = NULL
202  audit_getname(result)
203  返回:result
调用者
名称描述
COMPAT_SYSCALL_DEFINE5
getname
user_path_at_empty