|
@@ -391,23 +391,23 @@ prot_to_mode(u32 prot)
|
|
|
umode_t mode = 0;
|
|
|
|
|
|
if (!(prot & FIBF_NOWRITE))
|
|
|
- mode |= S_IWUSR;
|
|
|
+ mode |= 0200;
|
|
|
if (!(prot & FIBF_NOREAD))
|
|
|
- mode |= S_IRUSR;
|
|
|
+ mode |= 0400;
|
|
|
if (!(prot & FIBF_NOEXECUTE))
|
|
|
- mode |= S_IXUSR;
|
|
|
+ mode |= 0100;
|
|
|
if (prot & FIBF_GRP_WRITE)
|
|
|
- mode |= S_IWGRP;
|
|
|
+ mode |= 0020;
|
|
|
if (prot & FIBF_GRP_READ)
|
|
|
- mode |= S_IRGRP;
|
|
|
+ mode |= 0040;
|
|
|
if (prot & FIBF_GRP_EXECUTE)
|
|
|
- mode |= S_IXGRP;
|
|
|
+ mode |= 0010;
|
|
|
if (prot & FIBF_OTR_WRITE)
|
|
|
- mode |= S_IWOTH;
|
|
|
+ mode |= 0002;
|
|
|
if (prot & FIBF_OTR_READ)
|
|
|
- mode |= S_IROTH;
|
|
|
+ mode |= 0004;
|
|
|
if (prot & FIBF_OTR_EXECUTE)
|
|
|
- mode |= S_IXOTH;
|
|
|
+ mode |= 0001;
|
|
|
|
|
|
return mode;
|
|
|
}
|
|
@@ -418,23 +418,23 @@ mode_to_prot(struct inode *inode)
|
|
|
u32 prot = AFFS_I(inode)->i_protect;
|
|
|
umode_t mode = inode->i_mode;
|
|
|
|
|
|
- if (!(mode & S_IXUSR))
|
|
|
+ if (!(mode & 0100))
|
|
|
prot |= FIBF_NOEXECUTE;
|
|
|
- if (!(mode & S_IRUSR))
|
|
|
+ if (!(mode & 0400))
|
|
|
prot |= FIBF_NOREAD;
|
|
|
- if (!(mode & S_IWUSR))
|
|
|
+ if (!(mode & 0200))
|
|
|
prot |= FIBF_NOWRITE;
|
|
|
- if (mode & S_IXGRP)
|
|
|
+ if (mode & 0010)
|
|
|
prot |= FIBF_GRP_EXECUTE;
|
|
|
- if (mode & S_IRGRP)
|
|
|
+ if (mode & 0040)
|
|
|
prot |= FIBF_GRP_READ;
|
|
|
- if (mode & S_IWGRP)
|
|
|
+ if (mode & 0020)
|
|
|
prot |= FIBF_GRP_WRITE;
|
|
|
- if (mode & S_IXOTH)
|
|
|
+ if (mode & 0001)
|
|
|
prot |= FIBF_OTR_EXECUTE;
|
|
|
- if (mode & S_IROTH)
|
|
|
+ if (mode & 0004)
|
|
|
prot |= FIBF_OTR_READ;
|
|
|
- if (mode & S_IWOTH)
|
|
|
+ if (mode & 0002)
|
|
|
prot |= FIBF_OTR_WRITE;
|
|
|
|
|
|
AFFS_I(inode)->i_protect = prot;
|