in src/main/java/com/uber/h3core/H3CoreLoader.java [96:112]
private static File createTempLibraryFile(OperatingSystem os) throws IOException {
if (os.isPosix()) {
// Note this is already done by the implementation of Files.createTempFile that I looked at,
// but the javadoc does not seem to gaurantee the permissions will be restricted to owner
// write.
final FileAttribute<Set<PosixFilePermission>> attr =
PosixFilePermissions.asFileAttribute(PosixFilePermissions.fromString("rwx------"));
return Files.createTempFile("libh3-java", os.getSuffix(), attr).toFile();
} else {
// When not a POSIX OS, try to ensure the permissions are secure
final File f = Files.createTempFile("libh3-java", os.getSuffix()).toFile();
f.setReadable(true, true);
f.setWritable(true, true);
f.setExecutable(true, true);
return f;
}
}