Skip to content

Commit

Permalink
Tweaks to Java discovery.
Browse files Browse the repository at this point in the history
Add AdoptOpenJDK directory to the file scan.
Remove TLS reject unauthorized flag.
Use async/await for the fs scan function. Code was originally wrote
using fs and not fs-extra.
  • Loading branch information
dscalzi committed Sep 13, 2020
1 parent 17e36fa commit 25e7e5a
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 42 deletions.
2 changes: 0 additions & 2 deletions app/assets/js/assetexec.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,6 @@ if(target == null){
}
let tracker = new target(...(process.argv.splice(3)))

process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0'

//const tracker = new AssetGuard(process.argv[2], process.argv[3])
console.log('AssetExec Started')

Expand Down
59 changes: 19 additions & 40 deletions app/assets/js/assetguard.js
Original file line number Diff line number Diff line change
Expand Up @@ -709,51 +709,26 @@ class JavaGuard extends EventEmitter {
* @returns {Promise.<Set.<string>>} A promise which resolves to a set of the discovered
* root JVM folders.
*/
static _scanFileSystem(scanDir){
return new Promise((resolve, reject) => {

fs.exists(scanDir, (e) => {

let res = new Set()

if(e){
fs.readdir(scanDir, (err, files) => {
if(err){
resolve(res)
console.log(err)
} else {
let pathsDone = 0
static async _scanFileSystem(scanDir){

for(let i=0; i<files.length; i++){
let res = new Set()

const combinedPath = path.join(scanDir, files[i])
const execPath = JavaGuard.javaExecFromRoot(combinedPath)
if(await fs.pathExists(scanDir)) {

fs.exists(execPath, (v) => {
const files = await fs.readdir(scanDir)
for(let i=0; i<files.length; i++){

if(v){
res.add(combinedPath)
}

++pathsDone
const combinedPath = path.join(scanDir, files[i])
const execPath = JavaGuard.javaExecFromRoot(combinedPath)

if(pathsDone === files.length){
resolve(res)
}

})
}
if(pathsDone === files.length){
resolve(res)
}
}
})
} else {
resolve(res)
if(await fs.pathExists(execPath)) {
res.add(combinedPath)
}
})
}
}

return res

})
}

/**
Expand Down Expand Up @@ -859,9 +834,13 @@ class JavaGuard extends EventEmitter {

// Get possible paths from the registry.
let pathSet1 = await JavaGuard._scanRegistry()
if(pathSet1.length === 0){
if(pathSet1.size === 0){
// Do a manual file system scan of program files.
pathSet1 = JavaGuard._scanFileSystem('C:\\Program Files\\Java')
pathSet1 = new Set([
...pathSet1,
...(await JavaGuard._scanFileSystem('C:\\Program Files\\Java')),
...(await JavaGuard._scanFileSystem('C:\\Program Files\\AdoptOpenJDK'))
])
}

// Get possible paths from the data directory.
Expand Down

0 comments on commit 25e7e5a

Please sign in to comment.