greybel-mock-environment 1.3.5 → 1.3.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/environment.js +3 -0
- package/dist/generators/network.js +6 -4
- package/dist/types/computer.js +1 -1
- package/dist/types/device.js +7 -2
- package/dist/types/router.js +1 -5
- package/dist/types/switch.js +0 -3
- package/dist/utils.d.ts +1 -0
- package/dist/utils.js +24 -1
- package/package.json +1 -1
package/dist/environment.js
CHANGED
|
@@ -150,6 +150,7 @@ var MockEnvironment = /** @class */ (function () {
|
|
|
150
150
|
MockEnvironment.prototype.findRoutersCloseToLocation = function (loc) {
|
|
151
151
|
var e_1, _a;
|
|
152
152
|
var me = this;
|
|
153
|
+
var session = me.getLatestSession();
|
|
153
154
|
var getDistance = function (routerLoc) {
|
|
154
155
|
var y = routerLoc.x - loc.x;
|
|
155
156
|
var x = routerLoc.y - loc.y;
|
|
@@ -159,6 +160,8 @@ var MockEnvironment = /** @class */ (function () {
|
|
|
159
160
|
try {
|
|
160
161
|
for (var _b = __values(me.networkGenerator.serverMap.values()), _c = _b.next(); !_c.done; _c = _b.next()) {
|
|
161
162
|
var serverMapGenerator = _c.value;
|
|
163
|
+
if (session.device.getRouter() === serverMapGenerator.router)
|
|
164
|
+
continue;
|
|
162
165
|
var distance = getDistance(serverMapGenerator.router.location);
|
|
163
166
|
if (distance < me.WIFI_MAX_DISTANCE) {
|
|
164
167
|
var percentage = Math.round(((me.WIFI_MAX_DISTANCE - distance) * 100) / me.WIFI_MAX_DISTANCE);
|
|
@@ -33,6 +33,7 @@ var random_seed_1 = __importDefault(require("random-seed"));
|
|
|
33
33
|
var fs_1 = require("../fs");
|
|
34
34
|
var types_1 = require("../types");
|
|
35
35
|
var net_card_1 = require("../types/net-card");
|
|
36
|
+
var utils_1 = require("../utils");
|
|
36
37
|
var ServerMapGenerator = /** @class */ (function () {
|
|
37
38
|
function ServerMapGenerator(_a) {
|
|
38
39
|
var router = _a.router, networkRng = _a.networkRng, portRng = _a.portRng, basicGenerator = _a.basicGenerator, userGenerator = _a.userGenerator, networkGenerator = _a.networkGenerator, libraryManager = _a.libraryManager;
|
|
@@ -47,7 +48,7 @@ var ServerMapGenerator = /** @class */ (function () {
|
|
|
47
48
|
ServerMapGenerator.prototype.generateLocalIp = function (router) {
|
|
48
49
|
var me = this;
|
|
49
50
|
var ip = "192.168.".concat(me.networkRng.intBetween(0, 255), ".").concat(me.networkRng.intBetween(0, 255));
|
|
50
|
-
if (router.
|
|
51
|
+
if (router.findByLanIp(ip) !== null) {
|
|
51
52
|
return me.generateLocalIp(router);
|
|
52
53
|
}
|
|
53
54
|
return ip;
|
|
@@ -143,10 +144,11 @@ var ServerMapGenerator = /** @class */ (function () {
|
|
|
143
144
|
var portAmount = me.portRng.intBetween(1, 3);
|
|
144
145
|
var result = new Map();
|
|
145
146
|
for (var i = 0; i < portAmount; i++) {
|
|
147
|
+
var service = types_1.ServiceTypeList[me.portRng.intBetween(0, 5)];
|
|
146
148
|
var port = new types_1.Port({
|
|
147
|
-
port:
|
|
148
|
-
isClosed:
|
|
149
|
-
service:
|
|
149
|
+
port: (0, utils_1.getServicePort)(service),
|
|
150
|
+
isClosed: me.portRng.intBetween(0, 100) < 20,
|
|
151
|
+
service: service
|
|
150
152
|
});
|
|
151
153
|
result.set(port.port, port);
|
|
152
154
|
}
|
package/dist/types/computer.js
CHANGED
|
@@ -28,7 +28,7 @@ var Computer = /** @class */ (function (_super) {
|
|
|
28
28
|
}
|
|
29
29
|
Computer.prototype.isForwarded = function (port) {
|
|
30
30
|
var router = this.getRouter();
|
|
31
|
-
if (router.forwarded.has(port)) {
|
|
31
|
+
if (!router.forwarded.has(port)) {
|
|
32
32
|
return false;
|
|
33
33
|
}
|
|
34
34
|
var ip = router.forwarded.get(port).ip;
|
package/dist/types/device.js
CHANGED
|
@@ -756,7 +756,10 @@ var Device = /** @class */ (function () {
|
|
|
756
756
|
Device.prototype.addService = function (serviceType, portNumber) {
|
|
757
757
|
var libFolder = this.getFile(['lib']);
|
|
758
758
|
if (!(libFolder instanceof file_system_1.Folder)) {
|
|
759
|
-
return;
|
|
759
|
+
return null;
|
|
760
|
+
}
|
|
761
|
+
if (this.services.has(serviceType)) {
|
|
762
|
+
return null;
|
|
760
763
|
}
|
|
761
764
|
var libFile;
|
|
762
765
|
var configFile;
|
|
@@ -822,7 +825,9 @@ var Device = /** @class */ (function () {
|
|
|
822
825
|
if (this.ports.has(port.port) || this.services.has(port.service)) {
|
|
823
826
|
return false;
|
|
824
827
|
}
|
|
825
|
-
this.addService(port.service, port.port)
|
|
828
|
+
if (this.addService(port.service, port.port) === null) {
|
|
829
|
+
return false;
|
|
830
|
+
}
|
|
826
831
|
this.ports.set(port.port, port);
|
|
827
832
|
this.forward(port.port);
|
|
828
833
|
return true;
|
package/dist/types/router.js
CHANGED
|
@@ -76,11 +76,7 @@ var Router = /** @class */ (function (_super) {
|
|
|
76
76
|
return this.devices.get(ip);
|
|
77
77
|
};
|
|
78
78
|
Router.prototype.isForwarded = function (port) {
|
|
79
|
-
|
|
80
|
-
return false;
|
|
81
|
-
}
|
|
82
|
-
var ip = this.forwarded.get(port).ip;
|
|
83
|
-
return ip === this.localIp;
|
|
79
|
+
return this.forwarded.has(port);
|
|
84
80
|
};
|
|
85
81
|
Router.prototype.forward = function (port) {
|
|
86
82
|
if (this.forwarded.has(port)) {
|
package/dist/types/switch.js
CHANGED
package/dist/utils.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ import { User } from './types/user';
|
|
|
4
4
|
export declare function isValidIp(target: string): boolean;
|
|
5
5
|
export declare function isLanIp(target: string): boolean;
|
|
6
6
|
export declare function getServiceLibrary(service: ServiceType): Library | null;
|
|
7
|
+
export declare function getServicePort(service: ServiceType): number;
|
|
7
8
|
export declare function getUserPath(user: User): string;
|
|
8
9
|
export declare function getTraversalPath(path: string | null, currentLocation?: string[]): null | string[];
|
|
9
10
|
export declare function getRandom(min: number, max: number): number;
|
package/dist/utils.js
CHANGED
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.capitalize = exports.getRandomInt = exports.getRandom = exports.getTraversalPath = exports.getUserPath = exports.getServiceLibrary = exports.isLanIp = exports.isValidIp = void 0;
|
|
6
|
+
exports.capitalize = exports.getRandomInt = exports.getRandom = exports.getTraversalPath = exports.getUserPath = exports.getServicePort = exports.getServiceLibrary = exports.isLanIp = exports.isValidIp = void 0;
|
|
7
7
|
var random_seed_1 = __importDefault(require("random-seed"));
|
|
8
8
|
var library_1 = require("./types/library");
|
|
9
9
|
var service_1 = require("./types/service");
|
|
@@ -38,6 +38,29 @@ function getServiceLibrary(service) {
|
|
|
38
38
|
return null;
|
|
39
39
|
}
|
|
40
40
|
exports.getServiceLibrary = getServiceLibrary;
|
|
41
|
+
function getServicePort(service) {
|
|
42
|
+
switch (service) {
|
|
43
|
+
case service_1.ServiceType.FTP:
|
|
44
|
+
return 21;
|
|
45
|
+
case service_1.ServiceType.HTTP:
|
|
46
|
+
return 80;
|
|
47
|
+
case service_1.ServiceType.RSHELL:
|
|
48
|
+
return 1222;
|
|
49
|
+
case service_1.ServiceType.SMTP:
|
|
50
|
+
return 25;
|
|
51
|
+
case service_1.ServiceType.SQL:
|
|
52
|
+
return 141;
|
|
53
|
+
case service_1.ServiceType.SSH:
|
|
54
|
+
return 22;
|
|
55
|
+
case service_1.ServiceType.CHAT:
|
|
56
|
+
return 6667;
|
|
57
|
+
case service_1.ServiceType.REPOSITORY:
|
|
58
|
+
return 1542;
|
|
59
|
+
default:
|
|
60
|
+
}
|
|
61
|
+
return getRandomInt(1, 1000);
|
|
62
|
+
}
|
|
63
|
+
exports.getServicePort = getServicePort;
|
|
41
64
|
function getUserPath(user) {
|
|
42
65
|
switch (user.username) {
|
|
43
66
|
case 'root':
|