mirror of
https://github.com/Ylianst/MeshCentral.git
synced 2025-02-05 02:38:05 -05:00
Updated various commands to support agent branding
This commit is contained in:
parent
b39b733e22
commit
91f33dfd73
@ -47,7 +47,8 @@ function createMeshCore(agent) {
|
|||||||
var agentFileHttpPendingRequests = []; // Pending HTTPS GET requests from the server.
|
var agentFileHttpPendingRequests = []; // Pending HTTPS GET requests from the server.
|
||||||
var debugConsole = (_MSH().debugConsole == 1);
|
var debugConsole = (_MSH().debugConsole == 1);
|
||||||
|
|
||||||
if (process.platform == 'win32' && require('user-sessions').isRoot()) {
|
if (process.platform == 'win32' && require('user-sessions').isRoot())
|
||||||
|
{
|
||||||
// Check the Agent Uninstall MetaData for correctness, as the installer may have written an incorrect value
|
// Check the Agent Uninstall MetaData for correctness, as the installer may have written an incorrect value
|
||||||
try {
|
try {
|
||||||
var writtenSize = 0, actualSize = Math.floor(require('fs').statSync(process.execPath).size / 1024);
|
var writtenSize = 0, actualSize = Math.floor(require('fs').statSync(process.execPath).size / 1024);
|
||||||
@ -56,10 +57,20 @@ function createMeshCore(agent) {
|
|||||||
} catch (x) { }
|
} catch (x) { }
|
||||||
|
|
||||||
// Check to see if we are the Installed Mesh Agent Service, if we are, make sure we can run in Safe Mode
|
// Check to see if we are the Installed Mesh Agent Service, if we are, make sure we can run in Safe Mode
|
||||||
try {
|
var svcname = process.platform == 'win32' ? 'Mesh Agent' : 'meshagent';
|
||||||
|
try
|
||||||
|
{
|
||||||
|
svcname = require('MeshAgent').serviceName;
|
||||||
|
}
|
||||||
|
catch (x)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
var meshCheck = false;
|
var meshCheck = false;
|
||||||
try { meshCheck = require('service-manager').manager.getService('Mesh Agent').isMe(); } catch (e) { }
|
try { meshCheck = require('service-manager').manager.getService(svcname).isMe(); } catch (e) { }
|
||||||
if (meshCheck && require('win-bcd').isSafeModeService && !require('win-bcd').isSafeModeService('Mesh Agent')) { require('win-bcd').enableSafeModeService('Mesh Agent'); }
|
if (meshCheck && require('win-bcd').isSafeModeService && !require('win-bcd').isSafeModeService(svcname)) { require('win-bcd').enableSafeModeService(svcname); }
|
||||||
} catch (e) { }
|
} catch (e) { }
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1054,6 +1065,14 @@ function createMeshCore(agent) {
|
|||||||
case 'uninstallagent':
|
case 'uninstallagent':
|
||||||
// Uninstall this agent
|
// Uninstall this agent
|
||||||
var agentName = process.platform == 'win32' ? 'Mesh Agent' : 'meshagent';
|
var agentName = process.platform == 'win32' ? 'Mesh Agent' : 'meshagent';
|
||||||
|
try
|
||||||
|
{
|
||||||
|
agentName = require('MeshAgent').serviceName;
|
||||||
|
}
|
||||||
|
catch (x)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
if (require('service-manager').manager.getService(agentName).isMe()) {
|
if (require('service-manager').manager.getService(agentName).isMe()) {
|
||||||
try { diagnosticAgent_uninstall(); } catch (e) { }
|
try { diagnosticAgent_uninstall(); } catch (e) { }
|
||||||
var js = "require('service-manager').manager.getService('" + agentName + "').stop(); require('service-manager').manager.uninstallService('" + agentName + "'); process.exit();";
|
var js = "require('service-manager').manager.getService('" + agentName + "').stop(); require('service-manager').manager.uninstallService('" + agentName + "'); process.exit();";
|
||||||
@ -3119,29 +3138,45 @@ function createMeshCore(agent) {
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'safemode':
|
case 'safemode':
|
||||||
if (process.platform != 'win32') {
|
if (process.platform != 'win32')
|
||||||
|
{
|
||||||
response = 'safemode only supported on Windows Platforms'
|
response = 'safemode only supported on Windows Platforms'
|
||||||
}
|
}
|
||||||
else {
|
else
|
||||||
if (args['_'].length != 1) {
|
{
|
||||||
|
if (args['_'].length != 1)
|
||||||
|
{
|
||||||
response = 'Proper usage: safemode (ON|OFF|STATUS)'; // Display usage
|
response = 'Proper usage: safemode (ON|OFF|STATUS)'; // Display usage
|
||||||
}
|
}
|
||||||
else {
|
else
|
||||||
switch (args['_'][0].toUpperCase()) {
|
{
|
||||||
|
var svcname = process.platform == 'win32' ? 'Mesh Agent' : 'meshagent';
|
||||||
|
try
|
||||||
|
{
|
||||||
|
svcname = require('MeshAgent').serviceName;
|
||||||
|
}
|
||||||
|
catch (x)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
switch (args['_'][0].toUpperCase())
|
||||||
|
{
|
||||||
default:
|
default:
|
||||||
response = 'Proper usage: safemode (ON|OFF|STATUS)'; // Display usage
|
response = 'Proper usage: safemode (ON|OFF|STATUS)'; // Display usage
|
||||||
break;
|
break;
|
||||||
case 'ON':
|
case 'ON':
|
||||||
require('win-bcd').setKey('safeboot', 'Network');
|
require('win-bcd').setKey('safeboot', 'Network');
|
||||||
require('win-bcd').enableSafeModeService('Mesh Agent');
|
require('win-bcd').enableSafeModeService(svcname);
|
||||||
break;
|
break;
|
||||||
case 'OFF':
|
case 'OFF':
|
||||||
require('win-bcd').deleteKey('safeboot');
|
require('win-bcd').deleteKey('safeboot');
|
||||||
break;
|
break;
|
||||||
case 'STATUS':
|
case 'STATUS':
|
||||||
var nextboot = require('win-bcd').getKey('safeboot');
|
var nextboot = require('win-bcd').getKey('safeboot');
|
||||||
if (nextboot) {
|
if (nextboot)
|
||||||
switch (nextboot) {
|
{
|
||||||
|
switch (nextboot)
|
||||||
|
{
|
||||||
case 'Network':
|
case 'Network':
|
||||||
case 'network':
|
case 'network':
|
||||||
nextboot = 'SAFE_MODE_NETWORK';
|
nextboot = 'SAFE_MODE_NETWORK';
|
||||||
@ -3280,6 +3315,14 @@ function createMeshCore(agent) {
|
|||||||
}
|
}
|
||||||
case 'uninstallagent': // Uninstall this agent
|
case 'uninstallagent': // Uninstall this agent
|
||||||
var agentName = process.platform == 'win32' ? 'Mesh Agent' : 'meshagent';
|
var agentName = process.platform == 'win32' ? 'Mesh Agent' : 'meshagent';
|
||||||
|
try
|
||||||
|
{
|
||||||
|
agentName = require('MeshAgent').serviceName;
|
||||||
|
}
|
||||||
|
catch (x)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
if (!require('service-manager').manager.getService(agentName).isMe()) {
|
if (!require('service-manager').manager.getService(agentName).isMe()) {
|
||||||
response = 'Uininstall failed, this instance is not the service instance';
|
response = 'Uininstall failed, this instance is not the service instance';
|
||||||
} else {
|
} else {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user