added: now we have a fourth part in permissions (guests)
e.g.: 07555 means: 7 for owner 5 for group 5 for others 5 for guests (not logged users) added: the sticky bit for directories e.g. permissions to a directory with a sticky bit set can be set to: 017555 rewritten: rm/mv winix functions to correctly understand the sticky bit added: Dir::FollowLink() recognizes ".." and "." now consequently System::FollowAllLinks recognizes it too added: umask -- calculating privileges for new files/directories all users have their own umask (in meta) and there is one in the config (for guests and when a user has not definied its own one) removed: mount option: only_root_remove git-svn-id: svn://ttmath.org/publicrep/winix/trunk@801 e52654a7-88a9-db11-a3e9-0013d4bc506e
This commit is contained in:
@@ -51,13 +51,13 @@ bool PrivChanger::ChangeOwner(Item & item, long user_id, long group_id)
|
||||
{
|
||||
if( !system->CanChangeUser(item, user_id) )
|
||||
{
|
||||
log << log3 << "Content: can't change the user" << logend;
|
||||
log << log3 << "Priv: can't change the user" << logend;
|
||||
return false;
|
||||
}
|
||||
|
||||
if( !system->CanChangeGroup(item, group_id) )
|
||||
{
|
||||
log << log3 << "Content: can't change the group" << logend;
|
||||
log << log3 << "Priv: can't change the group" << logend;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -76,7 +76,7 @@ bool PrivChanger::ChangePrivileges(Item & item, int privileges)
|
||||
{
|
||||
if( !system->CanChangePrivileges(item, privileges) )
|
||||
{
|
||||
log << log3 << "Content: can't change privileges" << logend;
|
||||
log << log3 << "Priv: can't change privileges" << logend;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -153,7 +153,7 @@ Item * root = 0;
|
||||
if( id != -1 )
|
||||
root = system->dirs.GetRootDir();
|
||||
|
||||
log << log3 << "Content: " << what;
|
||||
log << log3 << "Priv: " << what;
|
||||
|
||||
if( root && root->id == id )
|
||||
log << "(root)";
|
||||
@@ -169,7 +169,7 @@ void PrivChanger::PrivFilesInDir(long parent_id)
|
||||
DbItemQuery iq;
|
||||
|
||||
iq.SetAll(false, false);
|
||||
iq.sel_user_id = iq.sel_group_id = iq.sel_guest_name = iq.sel_privileges = true;
|
||||
iq.sel_user_id = iq.sel_group_id = iq.sel_guest_name = iq.sel_privileges = iq.sel_url = true;
|
||||
|
||||
iq.WhereParentId(parent_id);
|
||||
iq.WhereType(Item::dir, false);
|
||||
@@ -230,8 +230,8 @@ void PrivChanger::PrivDir()
|
||||
ReadPriv(L"userfile", L"groupfile", L"privilegesfile", user_id_file, group_id_file, priv_file);
|
||||
ReadPriv(L"userdir", L"groupdir", L"privilegesdir", user_id_dir, group_id_dir, priv_dir);
|
||||
|
||||
PrivLogStart(L"Content: changes for files: ", user_id_file, group_id_file, priv_file);
|
||||
PrivLogStart(L"Content: changes for dirs: ", user_id_dir, group_id_dir, priv_dir);
|
||||
PrivLogStart(L"Priv: changes for files: ", user_id_file, group_id_file, priv_file);
|
||||
PrivLogStart(L"Priv: changes for dirs: ", user_id_dir, group_id_dir, priv_dir);
|
||||
|
||||
|
||||
if( cur->request->IsPostVar(L"changecurrentdir") )
|
||||
@@ -256,7 +256,7 @@ void PrivChanger::PrivDir()
|
||||
void PrivChanger::PrivOneItem()
|
||||
{
|
||||
ReadPriv(L"user", L"group", L"privileges", user_id_file, group_id_file, priv_file);
|
||||
PrivLogStart(L"Content: changes: ", user_id_file, group_id_file, priv_file);
|
||||
PrivLogStart(L"Priv: changes: ", user_id_file, group_id_file, priv_file);
|
||||
|
||||
if( cur->request->is_item )
|
||||
{
|
||||
|
Reference in New Issue
Block a user