函数逻辑报告 |
Source Code:fs\namei.c |
Create Date:2022-07-29 10:35:11 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:Hardlinks are often used in delicate situations. We avoid* security-related surprises by not following symlinks on the* newname. --KAB* We don't follow them on the oldname either to be compatible* with linux 2.0, and to avoid hard-linking to directories
函数原型:int do_linkat(int olddfd, const char __user *oldname, int newdfd, const char __user *newname, int flags)
返回类型:int
参数:
类型 | 参数 | 名称 |
---|---|---|
int | olddfd | |
const char __user * | oldname | |
int | newdfd | |
const char __user * | newname | |
int | flags |
4213 | struct inode * delegated_inode = NULL |
4214 | how等于0 |
4217 | 如果flags按位与Follow symbolic links. 按位或Allow empty relative pathname 的值的反的值不等于0则返回:负EINVAL |
4224 | 如果flags按位与Allow empty relative pathname 则 |
4230 | 如果flags按位与Follow symbolic links. 则how或等于llow links at the end |
4232 | retry : |
4237 | new_dentry等于user_path_create(newdfd, newname, & new_path, (how & ll ->d_revalidate() to trust no cache )) |
4247 | 如果此条件成立可能性小(为编译器优化)(error)则转到:out_dput |
4249 | error等于security_path_link(dentry, & new_path, new_dentry) |
4253 | out_dput : |
4254 | done_path_create( & new_path, new_dentry) |
4255 | 如果delegated_inode则 |
4256 | error等于break_deleg_wait( & delegated_inode) |
4257 | 如果非error则 |
4265 | 转到:retry |
4267 | out : |
4270 | 返回:error |
名称 | 描述 |
---|---|
SYSCALL_DEFINE5 | |
SYSCALL_DEFINE2 | |
ksys_link |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |