Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
raspberrypi-kernel
提交
d61e5808
R
raspberrypi-kernel
项目概览
openeuler
/
raspberrypi-kernel
通知
13
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
raspberrypi-kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
d61e5808
编写于
10月 26, 2007
作者:
S
Steve French
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[CIFS] acl support part 7
Also fixes typo, build break Signed-off-by:
N
Steve French
<
sfrench@us.ibm.com
>
上级
630f3f0c
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
19 addition
and
4 deletion
+19
-4
fs/cifs/cifsacl.c
fs/cifs/cifsacl.c
+18
-3
fs/cifs/cifsacl.h
fs/cifs/cifsacl.h
+1
-1
未找到文件。
fs/cifs/cifsacl.c
浏览文件 @
d61e5808
...
...
@@ -134,14 +134,29 @@ int compare_sids(const struct cifs_sid *ctsid, const struct cifs_sid *cwsid)
pmode is the existing mode (we only want to overwrite part of this
bits to set can be: S_IRWXU, S_IRWXG or S_IRWXO ie 00700 or 00070 or 00007
*/
static
void
access_flags_to_mode
(
__u32
ac
cess_flags
,
umode_t
*
pmode
,
static
void
access_flags_to_mode
(
__u32
ac
e_flags
,
umode_t
*
pmode
,
umode_t
bits_to_set
)
{
*
pmode
&=
~
bits_to_set
;
if
(
ace_flags
&
GENERIC_ALL
)
{
*
pmode
|=
(
S_IRWXUGO
&
bits_to_set
);
#ifdef CONFIG_CIFS_DEBUG2
cFYI
(
1
,
(
"access flags 0x%x mode now 0x%x"
,
access_flags
,
*
pmode
);
cFYI
(
1
,
(
"all perms"
)
);
#endif
return
;
}
if
((
ace_flags
&
GENERIC_WRITE
)
||
(
ace_flags
&
FILE_WRITE_RIGHTS
))
*
pmode
|=
(
S_IWUGO
&
bits_to_set
);
if
((
ace_flags
&
GENERIC_READ
)
||
(
ace_flags
&
FILE_READ_RIGHTS
))
*
pmode
|=
(
S_IRUGO
&
bits_to_set
);
if
((
ace_flags
&
GENERIC_EXECUTE
)
||
(
ace_flags
&
FILE_EXEC_RIGHTS
))
*
pmode
|=
(
S_IXUGO
&
bits_to_set
);
#ifdef CONFIG_CIFS_DEBUG2
cFYI
(
1
,
(
"access flags 0x%x mode now 0x%x"
,
ace_flags
,
*
pmode
);
#endif
return
;
}
...
...
@@ -242,7 +257,7 @@ static void parse_ace(struct cifs_ace *pace, char *end_of_acl)
static
void
parse_dacl
(
struct
cifs_acl
*
pdacl
,
char
*
end_of_acl
,
struct
cifs_sid
*
pownersid
,
struct
cifs_sid
*
pgrpsid
struct
cifs_sid
*
pownersid
,
struct
cifs_sid
*
pgrpsid
,
struct
inode
*
inode
)
{
int
i
;
...
...
fs/cifs/cifsacl.h
浏览文件 @
d61e5808
...
...
@@ -73,7 +73,7 @@ struct cifs_wksid {
#ifdef CONFIG_CIFS_EXPERIMENTAL
extern
int
match_sid
(
struct
cifs_sid
*
);
extern
int
compare_sids
(
struct
cifs_sid
*
,
struct
cifs_sid
*
);
extern
int
compare_sids
(
const
struct
cifs_sid
*
,
const
struct
cifs_sid
*
);
#endif
/* CONFIG_CIFS_EXPERIMENTAL */
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录