Force sgid bit to be off before checking volume permission

This commit is contained in:
Hemant Kumar 2020-04-01 11:20:38 -04:00
parent 8ae26096f7
commit 6362a616ec

View File

@ -154,15 +154,19 @@ func TestSkipPermissionChange(t *testing.T) {
mask := rwMask mask := rwMask
if test.sgidMatch {
mask |= os.ModeSetgid
}
if test.permissionMatch { if test.permissionMatch {
mask |= execMask mask |= execMask
} }
err = os.Chmod(tmpDir, info.Mode()|mask) if test.sgidMatch {
mask |= os.ModeSetgid
mask = info.Mode() | mask
} else {
nosgidPerm := info.Mode() &^ os.ModeSetgid
mask = nosgidPerm | mask
}
err = os.Chmod(tmpDir, mask)
if err != nil { if err != nil {
t.Errorf("Chmod failed on %v: %v", tmpDir, err) t.Errorf("Chmod failed on %v: %v", tmpDir, err)
} }
@ -206,7 +210,8 @@ func TestSetVolumeOwnership(t *testing.T) {
// create a subdirectory with invalid permissions // create a subdirectory with invalid permissions
rogueDir := filepath.Join(path, "roguedir") rogueDir := filepath.Join(path, "roguedir")
err = os.Mkdir(rogueDir, info.Mode()) nosgidPerm := info.Mode() &^ os.ModeSetgid
err = os.Mkdir(rogueDir, nosgidPerm)
if err != nil { if err != nil {
return err return err
} }