Fixed bug in SFTP FileMode for AIX/Unix directory mask

This commit is contained in:
hierynomus
2011-09-14 11:02:35 +02:00
parent 4b2f42804e
commit ef082c668a
2 changed files with 24 additions and 1 deletions

View File

@@ -74,7 +74,7 @@ public class FileMode {
} }
public int getTypeMask() { public int getTypeMask() {
return mask & 0770000; return mask & 0170000;
} }
public int getPermissionsMask() { public int getPermissionsMask() {

View File

@@ -0,0 +1,23 @@
package net.schmizz.sshj.sftp;
import org.junit.Test;
import static org.hamcrest.core.IsEqual.equalTo;
import static org.junit.Assert.assertThat;
public class FileModeTest {
@Test
public void shouldDetectDirectoryWithLinuxMask() {
FileMode fileMode = new FileMode(040755);
assertThat(fileMode.toString(), equalTo("[mask=40755]"));
assertThat(fileMode.getType(), equalTo(FileMode.Type.DIRECTORY));
}
@Test
public void shouldDetectDirectoryWithAixUnixMask() {
FileMode fileMode = new FileMode(0240755);
assertThat(fileMode.toString(), equalTo("[mask=240755]"));
assertThat(fileMode.getType(), equalTo(FileMode.Type.DIRECTORY));
}
}