From 758f00419b1e53b49ef78a753b65e5146e75c8ea Mon Sep 17 00:00:00 2001 From: Olivier Gagnon Date: Wed, 13 Jun 2018 00:03:02 -0400 Subject: [PATCH] added ps function to netscript, returns the list of processes currently running on that server --- src/NetscriptFunctions.js | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/NetscriptFunctions.js b/src/NetscriptFunctions.js index 23faf4ee1..a844dd68f 100644 --- a/src/NetscriptFunctions.js +++ b/src/NetscriptFunctions.js @@ -948,6 +948,23 @@ function NetscriptFunctions(workerScript) { allFiles.sort(); return allFiles; }, + ps : function(ip=workerScript.serverIp) { + if (workerScript.checkingRam) { + return updateStaticRam("ps", CONSTANTS.ScriptScanRamCost); + } + updateDynamicRam("ps", CONSTANTS.ScriptScanRamCost); + var server = getServer(ip); + if (server == null){ + workerScript.scriptRef.log("ps() failed. Invalid IP or hostname passed in: " + ip); + throw makeRuntimeRejectMsg(workerScript, "ps() failed. Invalid IP or hostname passed in: " + ip); + } + const processes = []; + for(const i in server.runningScripts) { + const script = server.runningScripts[i]; + processes.push({filename:script.filename, threads: script.threads, args: script.args.slice()}) + } + return processes; + }, hasRootAccess : function(ip) { if (workerScript.checkingRam) { return updateStaticRam("hasRootAccess", CONSTANTS.ScriptHasRootAccessRamCost);