xypriss 9.6.97 → 9.7.0
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/README.md +55 -22
- package/dist/cjs/src/index.js +0 -19
- package/dist/cjs/src/index.js.map +1 -1
- package/dist/cjs/src/middleware/built-in/BuiltInMiddleware.js +4 -4
- package/dist/cjs/src/middleware/built-in/BuiltInMiddleware.js.map +1 -1
- package/dist/cjs/src/middleware/built-in/security/HoneypotTarpit.js +510 -0
- package/dist/cjs/src/middleware/built-in/security/HoneypotTarpit.js.map +1 -0
- package/dist/cjs/src/middleware/built-in/security/SQLInjectionDetector.js +113 -34
- package/dist/cjs/src/middleware/built-in/security/SQLInjectionDetector.js.map +1 -1
- package/dist/cjs/src/middleware/built-in/security/UriNormalizer.js +413 -0
- package/dist/cjs/src/middleware/built-in/security/UriNormalizer.js.map +1 -0
- package/dist/cjs/src/middleware/built-in/security/XyPrissCors.js +98 -0
- package/dist/cjs/src/middleware/built-in/security/XyPrissCors.js.map +1 -0
- package/dist/cjs/src/middleware/built-in/security/XyPrissHPP.js +52 -0
- package/dist/cjs/src/middleware/built-in/security/XyPrissHPP.js.map +1 -0
- package/dist/cjs/src/middleware/safe-json-middleware.js +0 -82
- package/dist/cjs/src/middleware/safe-json-middleware.js.map +1 -1
- package/dist/cjs/src/middleware/security-middleware.js +7 -4
- package/dist/cjs/src/middleware/security-middleware.js.map +1 -1
- package/dist/cjs/src/plugins/builtin/xems/XemsBuiltinPlugin.js +33 -10
- package/dist/cjs/src/plugins/builtin/xems/XemsBuiltinPlugin.js.map +1 -1
- package/dist/cjs/src/plugins/builtin/xems/XemsPlugin.js +34 -3
- package/dist/cjs/src/plugins/builtin/xems/XemsPlugin.js.map +1 -1
- package/dist/cjs/src/plugins/const/OFFICIAL_PLUGINS.js +1 -1
- package/dist/cjs/src/plugins/const/OFFICIAL_PLUGINS.js.map +1 -1
- package/dist/cjs/src/plugins/const/XyprissTempDir.js +72 -9
- package/dist/cjs/src/plugins/const/XyprissTempDir.js.map +1 -1
- package/dist/cjs/src/plugins/core/manager/PluginLoader.js +8 -0
- package/dist/cjs/src/plugins/core/manager/PluginLoader.js.map +1 -1
- package/dist/cjs/src/plugins/core/manager/PluginSecurity.js +87 -0
- package/dist/cjs/src/plugins/core/manager/PluginSecurity.js.map +1 -1
- package/dist/cjs/src/server/FastServer/index.js +5 -0
- package/dist/cjs/src/server/FastServer/index.js.map +1 -1
- package/dist/cjs/src/server/ServerFactory.js +8 -13
- package/dist/cjs/src/server/ServerFactory.js.map +1 -1
- package/dist/cjs/src/server/components/fastapi/RedirectManager.js +8 -58
- package/dist/cjs/src/server/components/fastapi/RedirectManager.js.map +1 -1
- package/dist/cjs/src/server/components/fastapi/upload/FileUploadManager.js +1 -1
- package/dist/cjs/src/server/components/fastapi/upload/FileUploadManager.js.map +1 -1
- package/dist/cjs/src/server/components/multi-server/MultiServerManager.js +9 -1
- package/dist/cjs/src/server/components/multi-server/MultiServerManager.js.map +1 -1
- package/dist/cjs/src/server/core/HttpServer.js +22 -0
- package/dist/cjs/src/server/core/HttpServer.js.map +1 -1
- package/dist/cjs/src/server/core/XHSCBridge/EngineManager.js +33 -2
- package/dist/cjs/src/server/core/XHSCBridge/EngineManager.js.map +1 -1
- package/dist/cjs/src/server/core/XHSCBridge/cmd/buildSecurityArgs.js +1 -1
- package/dist/cjs/src/server/core/XHSCBridge/cmd/buildSecurityArgs.js.map +1 -1
- package/dist/cjs/src/server/core/XyServerCreator.js +1 -0
- package/dist/cjs/src/server/core/XyServerCreator.js.map +1 -1
- package/dist/cjs/src/shared/logger/quickLogger.js +162 -0
- package/dist/cjs/src/shared/logger/quickLogger.js.map +1 -0
- package/dist/cjs/src/xhsc/PathApi.js +44 -3
- package/dist/cjs/src/xhsc/PathApi.js.map +1 -1
- package/dist/cjs/src/xhsc/System.js +2 -0
- package/dist/cjs/src/xhsc/System.js.map +1 -1
- package/dist/cjs/src/xhsc/UtilsApi.js +52 -0
- package/dist/cjs/src/xhsc/UtilsApi.js.map +1 -0
- package/dist/cjs/src/xhsc/XyPrissRunner.js +30 -2
- package/dist/cjs/src/xhsc/XyPrissRunner.js.map +1 -1
- package/dist/cjs/src/xhsc/fs/FSCore.js +148 -0
- package/dist/cjs/src/xhsc/fs/FSCore.js.map +1 -1
- package/dist/cjs/src/xhsc/fs/FileHandle.js +112 -0
- package/dist/cjs/src/xhsc/fs/FileHandle.js.map +1 -0
- package/dist/cjs/src/xhsc/ipc/XHSCDirectIPC.js +134 -0
- package/dist/cjs/src/xhsc/ipc/XHSCDirectIPC.js.map +1 -0
- package/dist/cjs/src/xhsc/utils/ArrayUtils.js +67 -0
- package/dist/cjs/src/xhsc/utils/ArrayUtils.js.map +1 -0
- package/dist/cjs/src/xhsc/utils/AsyncUtils.js +582 -0
- package/dist/cjs/src/xhsc/utils/AsyncUtils.js.map +1 -0
- package/dist/cjs/src/xhsc/utils/DateUtils.js +959 -0
- package/dist/cjs/src/xhsc/utils/DateUtils.js.map +1 -0
- package/dist/cjs/src/xhsc/utils/FunctionUtils.js +29 -0
- package/dist/cjs/src/xhsc/utils/FunctionUtils.js.map +1 -0
- package/dist/cjs/src/xhsc/utils/IdUtils.js +22 -0
- package/dist/cjs/src/xhsc/utils/IdUtils.js.map +1 -0
- package/dist/cjs/src/xhsc/utils/NumberUtils.js +79 -0
- package/dist/cjs/src/xhsc/utils/NumberUtils.js.map +1 -0
- package/dist/cjs/src/xhsc/utils/ObjectUtils.js +141 -0
- package/dist/cjs/src/xhsc/utils/ObjectUtils.js.map +1 -0
- package/dist/cjs/src/xhsc/utils/StringUtils.js +145 -0
- package/dist/cjs/src/xhsc/utils/StringUtils.js.map +1 -0
- package/dist/cjs/src/xhsc/utils/ValidationUtils.js +49 -0
- package/dist/cjs/src/xhsc/utils/ValidationUtils.js.map +1 -0
- package/dist/cjs/src/xhsc.js +5 -3
- package/dist/cjs/src/xhsc.js.map +1 -1
- package/dist/esm/src/index.js +0 -2
- package/dist/esm/src/index.js.map +1 -1
- package/dist/esm/src/middleware/built-in/BuiltInMiddleware.js +4 -4
- package/dist/esm/src/middleware/built-in/BuiltInMiddleware.js.map +1 -1
- package/dist/esm/src/middleware/built-in/security/HoneypotTarpit.js +508 -0
- package/dist/esm/src/middleware/built-in/security/HoneypotTarpit.js.map +1 -0
- package/dist/esm/src/middleware/built-in/security/SQLInjectionDetector.js +113 -34
- package/dist/esm/src/middleware/built-in/security/SQLInjectionDetector.js.map +1 -1
- package/dist/esm/src/middleware/built-in/security/UriNormalizer.js +391 -0
- package/dist/esm/src/middleware/built-in/security/UriNormalizer.js.map +1 -0
- package/dist/esm/src/middleware/built-in/security/XyPrissCors.js +96 -0
- package/dist/esm/src/middleware/built-in/security/XyPrissCors.js.map +1 -0
- package/dist/esm/src/middleware/built-in/security/XyPrissHPP.js +50 -0
- package/dist/esm/src/middleware/built-in/security/XyPrissHPP.js.map +1 -0
- package/dist/esm/src/middleware/safe-json-middleware.js +1 -79
- package/dist/esm/src/middleware/safe-json-middleware.js.map +1 -1
- package/dist/esm/src/middleware/security-middleware.js +7 -4
- package/dist/esm/src/middleware/security-middleware.js.map +1 -1
- package/dist/esm/src/plugins/builtin/xems/XemsBuiltinPlugin.js +33 -10
- package/dist/esm/src/plugins/builtin/xems/XemsBuiltinPlugin.js.map +1 -1
- package/dist/esm/src/plugins/builtin/xems/XemsPlugin.js +34 -3
- package/dist/esm/src/plugins/builtin/xems/XemsPlugin.js.map +1 -1
- package/dist/esm/src/plugins/const/OFFICIAL_PLUGINS.js +1 -1
- package/dist/esm/src/plugins/const/OFFICIAL_PLUGINS.js.map +1 -1
- package/dist/esm/src/plugins/const/XyprissTempDir.js +70 -9
- package/dist/esm/src/plugins/const/XyprissTempDir.js.map +1 -1
- package/dist/esm/src/plugins/core/manager/PluginLoader.js +8 -0
- package/dist/esm/src/plugins/core/manager/PluginLoader.js.map +1 -1
- package/dist/esm/src/plugins/core/manager/PluginSecurity.js +87 -0
- package/dist/esm/src/plugins/core/manager/PluginSecurity.js.map +1 -1
- package/dist/esm/src/server/FastServer/index.js +5 -0
- package/dist/esm/src/server/FastServer/index.js.map +1 -1
- package/dist/esm/src/server/ServerFactory.js +8 -1
- package/dist/esm/src/server/ServerFactory.js.map +1 -1
- package/dist/esm/src/server/components/fastapi/RedirectManager.js +8 -58
- package/dist/esm/src/server/components/fastapi/RedirectManager.js.map +1 -1
- package/dist/esm/src/server/components/fastapi/upload/FileUploadManager.js +1 -1
- package/dist/esm/src/server/components/fastapi/upload/FileUploadManager.js.map +1 -1
- package/dist/esm/src/server/components/multi-server/MultiServerManager.js +9 -1
- package/dist/esm/src/server/components/multi-server/MultiServerManager.js.map +1 -1
- package/dist/esm/src/server/core/HttpServer.js +22 -0
- package/dist/esm/src/server/core/HttpServer.js.map +1 -1
- package/dist/esm/src/server/core/XHSCBridge/EngineManager.js +33 -2
- package/dist/esm/src/server/core/XHSCBridge/EngineManager.js.map +1 -1
- package/dist/esm/src/server/core/XHSCBridge/cmd/buildSecurityArgs.js +1 -1
- package/dist/esm/src/server/core/XHSCBridge/cmd/buildSecurityArgs.js.map +1 -1
- package/dist/esm/src/server/core/XyServerCreator.js +1 -0
- package/dist/esm/src/server/core/XyServerCreator.js.map +1 -1
- package/dist/esm/src/shared/logger/quickLogger.js +160 -0
- package/dist/esm/src/shared/logger/quickLogger.js.map +1 -0
- package/dist/esm/src/xhsc/PathApi.js +44 -3
- package/dist/esm/src/xhsc/PathApi.js.map +1 -1
- package/dist/esm/src/xhsc/System.js +2 -0
- package/dist/esm/src/xhsc/System.js.map +1 -1
- package/dist/esm/src/xhsc/UtilsApi.js +50 -0
- package/dist/esm/src/xhsc/UtilsApi.js.map +1 -0
- package/dist/esm/src/xhsc/XyPrissRunner.js +30 -2
- package/dist/esm/src/xhsc/XyPrissRunner.js.map +1 -1
- package/dist/esm/src/xhsc/fs/FSCore.js +148 -0
- package/dist/esm/src/xhsc/fs/FSCore.js.map +1 -1
- package/dist/esm/src/xhsc/fs/FileHandle.js +110 -0
- package/dist/esm/src/xhsc/fs/FileHandle.js.map +1 -0
- package/dist/esm/src/xhsc/ipc/XHSCDirectIPC.js +113 -0
- package/dist/esm/src/xhsc/ipc/XHSCDirectIPC.js.map +1 -0
- package/dist/esm/src/xhsc/utils/ArrayUtils.js +65 -0
- package/dist/esm/src/xhsc/utils/ArrayUtils.js.map +1 -0
- package/dist/esm/src/xhsc/utils/AsyncUtils.js +580 -0
- package/dist/esm/src/xhsc/utils/AsyncUtils.js.map +1 -0
- package/dist/esm/src/xhsc/utils/DateUtils.js +957 -0
- package/dist/esm/src/xhsc/utils/DateUtils.js.map +1 -0
- package/dist/esm/src/xhsc/utils/FunctionUtils.js +27 -0
- package/dist/esm/src/xhsc/utils/FunctionUtils.js.map +1 -0
- package/dist/esm/src/xhsc/utils/IdUtils.js +20 -0
- package/dist/esm/src/xhsc/utils/IdUtils.js.map +1 -0
- package/dist/esm/src/xhsc/utils/NumberUtils.js +77 -0
- package/dist/esm/src/xhsc/utils/NumberUtils.js.map +1 -0
- package/dist/esm/src/xhsc/utils/ObjectUtils.js +139 -0
- package/dist/esm/src/xhsc/utils/ObjectUtils.js.map +1 -0
- package/dist/esm/src/xhsc/utils/StringUtils.js +143 -0
- package/dist/esm/src/xhsc/utils/StringUtils.js.map +1 -0
- package/dist/esm/src/xhsc/utils/ValidationUtils.js +47 -0
- package/dist/esm/src/xhsc/utils/ValidationUtils.js.map +1 -0
- package/dist/esm/src/xhsc.js +6 -5
- package/dist/esm/src/xhsc.js.map +1 -1
- package/dist/index.d.ts +1872 -234
- package/package.json +119 -137
|
@@ -68,88 +68,6 @@ function createSafeJsonMiddleware(options = {}) {
|
|
|
68
68
|
next();
|
|
69
69
|
};
|
|
70
70
|
}
|
|
71
|
-
/**
|
|
72
|
-
* Quick setup function for common use cases
|
|
73
|
-
*/
|
|
74
|
-
function setupSafeJson(app, options = {}) {
|
|
75
|
-
app.use(createSafeJsonMiddleware(options));
|
|
76
|
-
}
|
|
77
|
-
/**
|
|
78
|
-
* Utility function to safely stringify any object
|
|
79
|
-
*/
|
|
80
|
-
function safeJsonStringify(obj, options = {}) {
|
|
81
|
-
try {
|
|
82
|
-
return JSON.stringify(obj);
|
|
83
|
-
}
|
|
84
|
-
catch (error) {
|
|
85
|
-
return xyprissSecurity.XyPriStringify(obj);
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
/**
|
|
89
|
-
* Enhanced res.json replacement that can be used manually
|
|
90
|
-
*/
|
|
91
|
-
function sendSafeJson(res, obj, options = {}) {
|
|
92
|
-
try {
|
|
93
|
-
const result = safeJsonStringify(obj, options);
|
|
94
|
-
res.setHeader("Content-Type", "application/json");
|
|
95
|
-
res.send(result);
|
|
96
|
-
}
|
|
97
|
-
catch (error) {
|
|
98
|
-
console.error("❌ Failed to send safe JSON:", error);
|
|
99
|
-
res.status(500).json({
|
|
100
|
-
error: "Internal Server Error",
|
|
101
|
-
message: "Failed to serialize response",
|
|
102
|
-
});
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
/**
|
|
106
|
-
* Middleware specifically for debugging circular references
|
|
107
|
-
*/
|
|
108
|
-
function createCircularRefDebugger() {
|
|
109
|
-
return function circularRefDebugger(req, res, next) {
|
|
110
|
-
const originalJson = res.json.bind(res);
|
|
111
|
-
res.json = function (obj) {
|
|
112
|
-
try {
|
|
113
|
-
JSON.stringify(obj);
|
|
114
|
-
return originalJson(obj);
|
|
115
|
-
}
|
|
116
|
-
catch (error) {
|
|
117
|
-
if (error.message.includes("circular")) {
|
|
118
|
-
console.log("Circular Reference Debug Info:");
|
|
119
|
-
console.log(" Route:", req.method, req.url);
|
|
120
|
-
console.log(" Object type:", typeof obj);
|
|
121
|
-
console.log(" Object constructor:", obj?.constructor?.name);
|
|
122
|
-
console.log(" Object keys:", Object.keys(obj || {}));
|
|
123
|
-
// Try to identify the circular reference
|
|
124
|
-
const seen = new WeakSet();
|
|
125
|
-
const findCircular = (obj, path = []) => {
|
|
126
|
-
if (typeof obj !== "object" || obj === null)
|
|
127
|
-
return [];
|
|
128
|
-
if (seen.has(obj))
|
|
129
|
-
return path;
|
|
130
|
-
seen.add(obj);
|
|
131
|
-
for (const [key, value] of Object.entries(obj)) {
|
|
132
|
-
const result = findCircular(value, [...path, key]);
|
|
133
|
-
if (result.length > 0)
|
|
134
|
-
return result;
|
|
135
|
-
}
|
|
136
|
-
return [];
|
|
137
|
-
};
|
|
138
|
-
const circularPath = findCircular(obj);
|
|
139
|
-
if (circularPath.length > 0) {
|
|
140
|
-
console.log(" Circular path:", circularPath.join(" -> "));
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
throw error;
|
|
144
|
-
}
|
|
145
|
-
};
|
|
146
|
-
next();
|
|
147
|
-
};
|
|
148
|
-
}
|
|
149
71
|
|
|
150
|
-
exports.createCircularRefDebugger = createCircularRefDebugger;
|
|
151
72
|
exports.createSafeJsonMiddleware = createSafeJsonMiddleware;
|
|
152
|
-
exports.safeJsonStringify = safeJsonStringify;
|
|
153
|
-
exports.sendSafeJson = sendSafeJson;
|
|
154
|
-
exports.setupSafeJson = setupSafeJson;
|
|
155
73
|
//# sourceMappingURL=safe-json-middleware.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"safe-json-middleware.js","sources":["../../../../src/middleware/safe-json-middleware.ts"],"sourcesContent":[null],"names":["logger","XyPriStringify"],"mappings":";;;;;AAAA;;;AAGG;AA2CH;;AAEG;AACG,SAAU,wBAAwB,CAAC,OAAA,GAA2B,EAAE,EAAA;AAClE,IAAA,MAAM,IAAI,GAAG;AACT,QAAA,OAAO,EAAE,IAAI;AACb,QAGA,eAAe,EAAE,KAAK;AACtB,QAGA,GAAG,OAAO;KACb;AAED,IAAA,OAAO,SAAS,kBAAkB,CAC9B,GAAY,EACZ,GAAa,EACb,IAAkB,EAAA;AAElB,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACf,OAAO,IAAI,EAAE;QACjB;;QAGA,MAAM,YAAY,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;QACvC,MAAM,YAAY,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;;AAGvC,QAAA,GAAG,CAAC,IAAI,GAAG,UAAU,GAAQ,EAAA;AACzB,YAAA,IAAI;;gBAEA,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;AAC1C,gBAAA,OAAO,YAAY,CAAC,GAAG,CAAC;YAC5B;YAAE,OAAO,KAAU,EAAE;gBACjB,IACI,IAAI,CAAC,eAAe;oBACpB,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,EACpC;AACE,oBAAAA,aAAM,CAAC,KAAK,CACR,QAAQ,EACR,2DAA2D,EAC3D;wBACI,GAAG,EAAE,GAAG,CAAC,GAAG;wBACZ,MAAM,EAAE,GAAG,CAAC,MAAM;wBAClB,KAAK,EAAE,KAAK,CAAC,OAAO;AACvB,qBAAA,CACJ;gBACL;AAEA,gBAAA,IAAI;;AAEA,oBAAA,MAAM,UAAU,GAAGC,8BAAc,CAAC,GAAG,CAAC;oBACtC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;AAC3C,oBAAA,OAAO,YAAY,CAAC,YAAY,CAAC;gBACrC;gBAAE,OAAO,SAAc,EAAE;oBACrBD,aAAM,CAAC,KAAK,CACR,QAAQ,EACR,mCAAmC,EACnC,SAAS,CACZ;AACD,oBAAA,OAAO,YAAY,CAAC;AAChB,wBAAA,KAAK,EAAE,sBAAsB;AAC7B,wBAAA,OAAO,EAAE,qCAAqC;wBAC9C,aAAa,EAAE,SAAS,CAAC,OAAO;AACnC,qBAAA,CAAC;gBACN;YACJ;AACJ,QAAA,CAAC;;AAGD,QAAA,GAAG,CAAC,IAAI,GAAG,UAAU,IAAS,EAAA;YAC1B,IACI,OAAO,IAAI,KAAK,QAAQ;AACxB,gBAAA,IAAI,KAAK,IAAI;AACb,gBAAA,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EACxB;;AAEE,gBAAA,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;YACzB;AACA,YAAA,OAAO,YAAY,CAAC,IAAI,CAAC;AAC7B,QAAA,CAAC;AAED,QAAA,IAAI,EAAE;AACV,IAAA,CAAC;AACL
|
|
1
|
+
{"version":3,"file":"safe-json-middleware.js","sources":["../../../../src/middleware/safe-json-middleware.ts"],"sourcesContent":[null],"names":["logger","XyPriStringify"],"mappings":";;;;;AAAA;;;AAGG;AA2CH;;AAEG;AACG,SAAU,wBAAwB,CAAC,OAAA,GAA2B,EAAE,EAAA;AAClE,IAAA,MAAM,IAAI,GAAG;AACT,QAAA,OAAO,EAAE,IAAI;AACb,QAGA,eAAe,EAAE,KAAK;AACtB,QAGA,GAAG,OAAO;KACb;AAED,IAAA,OAAO,SAAS,kBAAkB,CAC9B,GAAY,EACZ,GAAa,EACb,IAAkB,EAAA;AAElB,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACf,OAAO,IAAI,EAAE;QACjB;;QAGA,MAAM,YAAY,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;QACvC,MAAM,YAAY,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;;AAGvC,QAAA,GAAG,CAAC,IAAI,GAAG,UAAU,GAAQ,EAAA;AACzB,YAAA,IAAI;;gBAEA,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;AAC1C,gBAAA,OAAO,YAAY,CAAC,GAAG,CAAC;YAC5B;YAAE,OAAO,KAAU,EAAE;gBACjB,IACI,IAAI,CAAC,eAAe;oBACpB,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,EACpC;AACE,oBAAAA,aAAM,CAAC,KAAK,CACR,QAAQ,EACR,2DAA2D,EAC3D;wBACI,GAAG,EAAE,GAAG,CAAC,GAAG;wBACZ,MAAM,EAAE,GAAG,CAAC,MAAM;wBAClB,KAAK,EAAE,KAAK,CAAC,OAAO;AACvB,qBAAA,CACJ;gBACL;AAEA,gBAAA,IAAI;;AAEA,oBAAA,MAAM,UAAU,GAAGC,8BAAc,CAAC,GAAG,CAAC;oBACtC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;AAC3C,oBAAA,OAAO,YAAY,CAAC,YAAY,CAAC;gBACrC;gBAAE,OAAO,SAAc,EAAE;oBACrBD,aAAM,CAAC,KAAK,CACR,QAAQ,EACR,mCAAmC,EACnC,SAAS,CACZ;AACD,oBAAA,OAAO,YAAY,CAAC;AAChB,wBAAA,KAAK,EAAE,sBAAsB;AAC7B,wBAAA,OAAO,EAAE,qCAAqC;wBAC9C,aAAa,EAAE,SAAS,CAAC,OAAO;AACnC,qBAAA,CAAC;gBACN;YACJ;AACJ,QAAA,CAAC;;AAGD,QAAA,GAAG,CAAC,IAAI,GAAG,UAAU,IAAS,EAAA;YAC1B,IACI,OAAO,IAAI,KAAK,QAAQ;AACxB,gBAAA,IAAI,KAAK,IAAI;AACb,gBAAA,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EACxB;;AAEE,gBAAA,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;YACzB;AACA,YAAA,OAAO,YAAY,CAAC,IAAI,CAAC;AAC7B,QAAA,CAAC;AAED,QAAA,IAAI,EAAE;AACV,IAAA,CAAC;AACL;;;;"}
|
|
@@ -136,6 +136,9 @@ class SecurityMiddleware {
|
|
|
136
136
|
falsePositiveThreshold: typeof this.sqlInjection === "object"
|
|
137
137
|
? this.sqlInjection.falsePositiveThreshold
|
|
138
138
|
: 0.6,
|
|
139
|
+
maxLength: typeof this.sqlInjection === "object"
|
|
140
|
+
? this.sqlInjection.maxLength
|
|
141
|
+
: 1000,
|
|
139
142
|
});
|
|
140
143
|
this.pathTraversalDetector = new PathTraversalDetector({
|
|
141
144
|
enabled: !!this.pathTraversal,
|
|
@@ -735,13 +738,13 @@ class SecurityMiddleware {
|
|
|
735
738
|
const additionalThreats = [
|
|
736
739
|
/javascript:/i,
|
|
737
740
|
/vbscript:/i,
|
|
738
|
-
/data
|
|
739
|
-
|
|
741
|
+
/data:text\/html/i,
|
|
742
|
+
/\s+on(load|click|error|mouseover|submit)\s*=/i, // Specific common event handlers
|
|
740
743
|
/<iframe/i,
|
|
741
744
|
/<object/i,
|
|
742
745
|
/<embed/i,
|
|
743
|
-
/<link
|
|
744
|
-
/<meta
|
|
746
|
+
/<link\s+rel=["']?stylesheet["']?/i,
|
|
747
|
+
/<meta\s+http-equiv=["']?refresh["']?/i,
|
|
745
748
|
/expression\s*\(/i, // CSS expression()
|
|
746
749
|
/url\s*\(\s*javascript:/i,
|
|
747
750
|
];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"security-middleware.js","sources":["../../../../src/middleware/security-middleware.ts"],"sourcesContent":[null],"names":["Logger","Random","BuiltInMiddleware","MobileOnlyProtector"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"security-middleware.js","sources":["../../../../src/middleware/security-middleware.ts"],"sourcesContent":[null],"names":["Logger","Random","BuiltInMiddleware","MobileOnlyProtector"],"mappings":"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"}
|
|
@@ -37,16 +37,27 @@ class XemsBuiltinPlugin {
|
|
|
37
37
|
async onServerStart(server) {
|
|
38
38
|
const app = server.app;
|
|
39
39
|
const logger = app.logger;
|
|
40
|
-
//
|
|
41
|
-
|
|
40
|
+
// 1. Configuration Extraction
|
|
41
|
+
// Use local app config strictly to avoid global singleton pollution in multi-server/auxiliary modes
|
|
42
|
+
// If not explicitly configured, fallback to global defaults only if NOT an auxiliary server
|
|
43
|
+
let xemsOptions = app.configs?.server?.xems;
|
|
44
|
+
if (!xemsOptions) {
|
|
45
|
+
if (app.configs?.isAuxiliary) {
|
|
46
|
+
// Auxiliary servers should NEVER auto-spawn persistence unless explicitly requested.
|
|
47
|
+
// We provide minimal defaults to avoid crashes but keep features disabled.
|
|
48
|
+
xemsOptions = { enable: false };
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
// Fallback to global singleton only for primary/non-auxiliary servers
|
|
52
|
+
xemsOptions = ConfigurationManager.CM.get("server")?.xems || { enable: false };
|
|
53
|
+
}
|
|
54
|
+
}
|
|
42
55
|
// Expose this instance's runner on the app object for multi-server support
|
|
43
56
|
app.xems = this.runner;
|
|
44
57
|
const isAuxiliary = app.configs?.isAuxiliary;
|
|
45
58
|
if (!isAuxiliary) {
|
|
46
59
|
logger.info("plugins", "Initializing XEMS Built-in Core Plugin...");
|
|
47
60
|
}
|
|
48
|
-
// 1. Configuration Extraction
|
|
49
|
-
const xemsOptions = xemsConfig;
|
|
50
61
|
// Apply session options from config or defaults
|
|
51
62
|
this.sessionOptions = {
|
|
52
63
|
sandbox: xemsOptions.sandbox || "auth-session",
|
|
@@ -72,15 +83,27 @@ class XemsBuiltinPlugin {
|
|
|
72
83
|
}
|
|
73
84
|
// 2. Persistence Initialization
|
|
74
85
|
if (xemsOptions.persistence?.enabled) {
|
|
75
|
-
const { path, secret, resources } = xemsOptions.persistence;
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
86
|
+
const { path: pathStr, secret, resources, } = xemsOptions.persistence;
|
|
87
|
+
if (pathStr && secret) {
|
|
88
|
+
// Use the static factory to get/create a runner for this path.
|
|
89
|
+
// This ensures multiple servers/plugins sharing a path also share the process.
|
|
90
|
+
this.runner = XemsPlugin.XemsRunner.getInstance(pathStr, {
|
|
91
|
+
secret,
|
|
79
92
|
cacheSize: resources?.cacheSize,
|
|
80
93
|
});
|
|
94
|
+
// Attach the shared runner to the app
|
|
95
|
+
app.xems = this.runner;
|
|
96
|
+
try {
|
|
97
|
+
this.runner.enablePersistence(pathStr, secret, {
|
|
98
|
+
cacheSize: resources?.cacheSize,
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
catch (err) {
|
|
102
|
+
logger.error("plugins", "Failed to enable XEMS persistence on shared runner", err);
|
|
103
|
+
}
|
|
81
104
|
}
|
|
82
|
-
|
|
83
|
-
logger.
|
|
105
|
+
else if (!isAuxiliary) {
|
|
106
|
+
logger.warn("plugins", "XEMS Persistence requested but path or secret missing. Running in ephemeral mode.");
|
|
84
107
|
}
|
|
85
108
|
}
|
|
86
109
|
// 3. Resource & Health Validation (Warmup)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"XemsBuiltinPlugin.js","sources":["../../../../../../src/plugins/builtin/xems/XemsBuiltinPlugin.ts"],"sourcesContent":[null],"names":["XemsRunner","Configs"],"mappings":";;;;;AAAA;;;;;;;AAOG;MAOU,iBAAiB,CAAA;AA6B1B,IAAA,WAAA,GAAA;QA5BgB,IAAA,CAAA,IAAI,GAAG,oBAAoB;QAC3B,IAAA,CAAA,OAAO,GAAG,OAAO;QACjB,IAAA,CAAA,IAAI,GAAG,UAAU;QACjB,IAAA,CAAA,WAAW,GACvB,qDAAqD;AAIjD,QAAA,IAAA,CAAA,cAAc,GAQlB;AACA,YAAA,OAAO,EAAE,uBAAuB;AAChC,YAAA,UAAU,EAAE,YAAY;AACxB,YAAA,UAAU,EAAE,iBAAiB;AAC7B,YAAA,GAAG,EAAE,KAAK;AACV,YAAA,YAAY,EAAE,IAAI;AAClB,YAAA,QAAQ,EAAE,SAAS;AACnB,YAAA,WAAW,EAAE,IAAI;SACpB;QAEO,IAAA,CAAA,cAAc,GAAY,KAAK;;;AAKnC,QAAA,IAAI,CAAC,MAAM,GAAG,IAAIA,qBAAU,EAAE;IAClC;AAEA;;AAEG;IACI,MAAM,aAAa,CAAC,MAAoB,EAAA;AAC3C,QAAA,MAAM,GAAG,GAAG,MAAM,CAAC,GAAU;AAC7B,QAAA,MAAM,MAAM,GAAI,GAAW,CAAC,MAAM
|
|
1
|
+
{"version":3,"file":"XemsBuiltinPlugin.js","sources":["../../../../../../src/plugins/builtin/xems/XemsBuiltinPlugin.ts"],"sourcesContent":[null],"names":["XemsRunner","Configs"],"mappings":";;;;;AAAA;;;;;;;AAOG;MAOU,iBAAiB,CAAA;AA6B1B,IAAA,WAAA,GAAA;QA5BgB,IAAA,CAAA,IAAI,GAAG,oBAAoB;QAC3B,IAAA,CAAA,OAAO,GAAG,OAAO;QACjB,IAAA,CAAA,IAAI,GAAG,UAAU;QACjB,IAAA,CAAA,WAAW,GACvB,qDAAqD;AAIjD,QAAA,IAAA,CAAA,cAAc,GAQlB;AACA,YAAA,OAAO,EAAE,uBAAuB;AAChC,YAAA,UAAU,EAAE,YAAY;AACxB,YAAA,UAAU,EAAE,iBAAiB;AAC7B,YAAA,GAAG,EAAE,KAAK;AACV,YAAA,YAAY,EAAE,IAAI;AAClB,YAAA,QAAQ,EAAE,SAAS;AACnB,YAAA,WAAW,EAAE,IAAI;SACpB;QAEO,IAAA,CAAA,cAAc,GAAY,KAAK;;;AAKnC,QAAA,IAAI,CAAC,MAAM,GAAG,IAAIA,qBAAU,EAAE;IAClC;AAEA;;AAEG;IACI,MAAM,aAAa,CAAC,MAAoB,EAAA;AAC3C,QAAA,MAAM,GAAG,GAAG,MAAM,CAAC,GAAU;AAC7B,QAAA,MAAM,MAAM,GAAI,GAAW,CAAC,MAAM;;;;QAKlC,IAAI,WAAW,GAAG,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI;QAE3C,IAAI,CAAC,WAAW,EAAE;AACd,YAAA,IAAI,GAAG,CAAC,OAAO,EAAE,WAAW,EAAE;;;AAG1B,gBAAA,WAAW,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE;YACnC;iBAAO;;AAEH,gBAAA,WAAW,GAAGC,uBAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,IAAI,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE;YAClE;QACJ;;AAGA,QAAA,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM;AAEtB,QAAA,MAAM,WAAW,GAAG,GAAG,CAAC,OAAO,EAAE,WAAW;QAE5C,IAAI,CAAC,WAAW,EAAE;AACd,YAAA,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,2CAA2C,CAAC;QACvE;;QAGA,IAAI,CAAC,cAAc,GAAG;AAClB,YAAA,OAAO,EAAE,WAAW,CAAC,OAAO,IAAI,cAAc;AAC9C,YAAA,UAAU,EAAE,WAAW,CAAC,UAAU,IAAI,YAAY;AAClD,YAAA,UAAU,EAAE,WAAW,CAAC,UAAU,IAAI,iBAAiB;AACvD,YAAA,GAAG,EAAE,WAAW,CAAC,GAAG,IAAI,KAAK;AAC7B,YAAA,YAAY,EAAE,WAAW,CAAC,YAAY,KAAK,KAAK;AAChD,YAAA,QAAQ,EAAE,WAAW,CAAC,QAAQ,IAAI,SAAS;AAC3C,YAAA,WAAW,EAAE,WAAW,CAAC,WAAW,IAAI,IAAI;SAC/C;QAED,IAAI,CAAC,WAAW,EAAE;AACd,YAAA,MAAM,CAAC,IAAI,CACP,SAAS,EACT,CAAA,sBAAA,EAAyB,IAAI,CAAC,cAAc,CAAC,OAAO,CAAA,CAAE,CACzD;QACL;;AAGA,QAAA,MAAM,MAAM,GAAG,WAAW,CAAC,WAAW,EAAE,MAAM;AAC9C,QAAA,IACI,MAAM;YACN,OAAO,MAAM,KAAK,QAAQ;YAC1B,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,EAC1C;AACE,YAAA,IAAI,CAAC,cAAc,GAAG,IAAI;QAC9B;AAAO,aAAA,IAAI,WAAW,CAAC,WAAW,EAAE,OAAO,EAAE;AACzC,YAAA,MAAM,CAAC,KAAK,CACR,SAAS,EACT,6DAA6D,CAChE;QACL;;AAGA,QAAA,IAAI,WAAW,CAAC,WAAW,EAAE,OAAO,EAAE;AAClC,YAAA,MAAM,EACF,IAAI,EAAE,OAAO,EACb,MAAM,EACN,SAAS,GACZ,GAAG,WAAW,CAAC,WAAW;AAE3B,YAAA,IAAI,OAAO,IAAI,MAAM,EAAE;;;gBAGnB,IAAI,CAAC,MAAM,GAAGD,qBAAU,CAAC,WAAW,CAAC,OAAO,EAAE;oBAC1C,MAAM;oBACN,SAAS,EAAE,SAAS,EAAE,SAAS;AAClC,iBAAA,CAAC;;AAGF,gBAAA,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM;AAEtB,gBAAA,IAAI;oBACA,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,OAAQ,EAAE,MAAM,EAAE;wBAC5C,SAAS,EAAE,SAAS,EAAE,SAAS;AAClC,qBAAA,CAAC;gBACN;gBAAE,OAAO,GAAG,EAAE;oBACV,MAAM,CAAC,KAAK,CACR,SAAS,EACT,oDAAoD,EACpD,GAAG,CACN;gBACL;YACJ;iBAAO,IAAI,CAAC,WAAW,EAAE;AACrB,gBAAA,MAAM,CAAC,IAAI,CACP,SAAS,EACT,mFAAmF,CACtF;YACL;QACJ;;AAGA,QAAA,IAAI;AACA,YAAA,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE;YACnC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;YACrC,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS;AAE9C,YAAA,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,EAAE;gBACzB,IAAI,CAAC,WAAW,EAAE;AACd,oBAAA,MAAM,CAAC,IAAI,CACP,SAAS,EACT,CAAA,wCAAA,EAA2C,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA,GAAA,CAAK,CACtE;gBACL;YACJ;iBAAO;AACH,gBAAA,MAAM,CAAC,IAAI,CACP,SAAS,EACT,6CAA6C,CAChD;YACL;QACJ;QAAE,OAAO,CAAC,EAAE;YACR,MAAM,CAAC,KAAK,CACR,SAAS,EACT,oEAAoE,EACpE,CAAC,CACJ;QACL;IACJ;AAEA;;AAEG;AACI,IAAA,MAAM,SAAS,CAClB,GAAY,EACZ,GAAa,EACb,IAAkB,EAAA;AAElB,QAAA,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,EAAE,YAAY,EAAE,QAAQ,EAAE,GAClE,IAAI,CAAC,cAAc;;AAGvB,QAAA,MAAM,KAAK,GACP,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC;AACtC,YAAA,GAAG,CAAC,OAAO,CAAC,UAAU,CAAY;;QAGtC,GAAW,CAAC,KAAK,GAAG,OACjB,IAAS,EACT,WAEY,KACZ;AACA,YAAA,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;gBACtB,MAAM,IAAI,KAAK,CACX,oGAAoG;AAChG,oBAAA,sDAAsD,CAC7D;YACL;YAEA,IAAI,aAAa,GAAG,OAAO;YAC3B,IAAI,cAAc,GAAG,QAAQ;YAC7B,IAAI,SAAS,GAAG,GAAG;AAEnB,YAAA,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE;gBACjC,aAAa,GAAG,WAAW;YAC/B;iBAAO,IAAI,WAAW,EAAE;gBACpB,IAAI,WAAW,CAAC,OAAO;AAAE,oBAAA,aAAa,GAAG,WAAW,CAAC,OAAO;gBAC5D,IAAI,WAAW,CAAC,QAAQ;AAAE,oBAAA,cAAc,GAAG,WAAW,CAAC,QAAQ;gBAC/D,IAAI,WAAW,CAAC,GAAG;AAAE,oBAAA,SAAS,GAAG,WAAW,CAAC,GAAG;YACpD;AAEA,YAAA,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC;iBACvB,IAAI,CAAC,aAAa;iBAClB,aAAa,CAAC,IAAI,EAAE;AACjB,gBAAA,GAAG,EAAE,SAAS;AACjB,aAAA,CAAC;AACL,YAAA,GAAW,CAAC,aAAa,GAAG,QAAQ;;AAGrC,YAAA,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,EAAE;AAC7B,gBAAA,QAAQ,EAAE,IAAI;AACd,gBAAA,MAAM,EAAE,IAAI;AACZ,gBAAA,QAAQ,EAAE,QAAQ;AACrB,aAAA,CAAC;AACF,YAAA,GAAG,CAAC,SAAS,CAAC,UAAU,EAAE,QAAQ,CAAC;AAElC,YAAA,GAAW,CAAC,cAAc,CAAC,GAAG,IAAI;AACnC,YAAA,OAAO,QAAQ;AACnB,QAAA,CAAC;;AAGA,QAAA,GAAW,CAAC,OAAO,GAAG,OACnB,aAAgE,KAChE;YACA,IAAI,aAAa,GAAG,OAAO;YAC3B,IAAI,cAAc,GAAG,QAAQ;AAE7B,YAAA,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE;gBACnC,aAAa,GAAG,aAAa;YACjC;iBAAO,IAAI,aAAa,EAAE;gBACtB,IAAI,aAAa,CAAC,OAAO;AACrB,oBAAA,aAAa,GAAG,aAAa,CAAC,OAAO;gBACzC,IAAI,aAAa,CAAC,QAAQ;AACtB,oBAAA,cAAc,GAAG,aAAa,CAAC,QAAQ;YAC/C;AAEA,YAAA,MAAM,YAAY,GACd,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC;AACtC,gBAAA,GAAG,CAAC,OAAO,CAAC,UAAU,CAAY;YAEvC,IAAI,YAAY,EAAE;AACd,gBAAA,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC;YAC3D;AAEA,YAAA,GAAG,CAAC,WAAW,CAAC,UAAU,CAAC;AAC3B,YAAA,GAAG,CAAC,YAAY,CAAC,UAAU,CAAC;AAC3B,YAAA,GAAW,CAAC,cAAc,CAAC,GAAG,IAAI;AACvC,QAAA,CAAC;;AAGD,QAAA,IAAI,KAAK,IAAI,IAAI,CAAC,cAAc,EAAE;AAC9B,YAAA,IAAI;AACA,gBAAA,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE;oBAC1D,GAAG;AACH,oBAAA,WAAW,EAAE,IAAI,CAAC,cAAc,CAAC,WAAW;AAC/C,iBAAA,CAAC;gBAEF,IAAI,OAAO,EAAE;AACR,oBAAA,GAAW,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,IAAI;AAErC,oBAAA,IAAI,YAAY,IAAI,OAAO,CAAC,QAAQ,EAAE;AACjC,wBAAA,GAAW,CAAC,aAAa,GAAG,OAAO,CAAC,QAAQ;;AAG7C,wBAAA,MAAM,YAAY,GAAG,GAAG,CAAC,IAAI;AAC7B,wBAAA,GAAG,CAAC,IAAI,GAAG,UAAqB,IAAS,EAAA;AACrC,4BAAA,MAAM,QAAQ,GAAI,GAAW,CAAC,aAAa;4BAC3C,IAAI,QAAQ,EAAE;AACV,gCAAA,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,EAAE;AAC7B,oCAAA,QAAQ,EAAE,IAAI;AACd,oCAAA,MAAM,EAAE,IAAI;AACZ,oCAAA,QAAQ,EAAE,QAAQ;AACrB,iCAAA,CAAC;AACF,gCAAA,GAAG,CAAC,SAAS,CAAC,UAAU,EAAE,QAAQ,CAAC;4BACvC;4BACA,OAAO,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC;AACxC,wBAAA,CAAC;AAED,wBAAA,MAAM,YAAY,GAAG,GAAG,CAAC,IAAI;AAC7B,wBAAA,GAAG,CAAC,IAAI,GAAG,UAAqB,IAAS,EAAA;AACrC,4BAAA,MAAM,QAAQ,GAAI,GAAW,CAAC,aAAa;4BAC3C,IAAI,QAAQ,EAAE;AACV,gCAAA,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,EAAE;AAC7B,oCAAA,QAAQ,EAAE,IAAI;AACd,oCAAA,MAAM,EAAE,IAAI;AACZ,oCAAA,QAAQ,EAAE,QAAQ;AACrB,iCAAA,CAAC;AACF,gCAAA,GAAG,CAAC,SAAS,CAAC,UAAU,EAAE,QAAQ,CAAC;4BACvC;4BACA,OAAO,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC;AACxC,wBAAA,CAAQ;oBACZ;gBACJ;YACJ;YAAE,OAAO,GAAG,EAAE;;YAEd;QACJ;AAEA,QAAA,IAAI,EAAE;IACV;AAEA;;AAEG;AACI,IAAA,MAAM,YAAY,GAAA;AACrB,QAAA,IAAI,IAAI,CAAC,MAAM,EAAE;AACb,YAAA,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;QACzB;IACJ;AACH;;;;"}
|
|
@@ -4,9 +4,9 @@ var node_child_process = require('node:child_process');
|
|
|
4
4
|
var path = require('node:path');
|
|
5
5
|
var fs = require('node:fs');
|
|
6
6
|
var node_url = require('node:url');
|
|
7
|
-
var node_crypto = require('node:crypto');
|
|
8
7
|
var readline = require('node:readline');
|
|
9
8
|
var Logger = require('../../../shared/logger/Logger.js');
|
|
9
|
+
var xyprissSecurity = require('xypriss-security');
|
|
10
10
|
|
|
11
11
|
var _documentCurrentScript = typeof document !== 'undefined' ? document.currentScript : null;
|
|
12
12
|
function _interopNamespaceDefault(e) {
|
|
@@ -53,8 +53,22 @@ class XemsRunner {
|
|
|
53
53
|
// or during the first command if needed.
|
|
54
54
|
}
|
|
55
55
|
/**
|
|
56
|
-
*
|
|
56
|
+
* Internal factory for getting or creating a runner for a specific path.
|
|
57
|
+
* This ensures only one process exists for a given file in the entire process.
|
|
57
58
|
*/
|
|
59
|
+
static getInstance(pathStr, options = {}) {
|
|
60
|
+
const absPath = path.resolve(process.cwd(), pathStr);
|
|
61
|
+
const existing = XemsRunner.runnersByPath.get(absPath);
|
|
62
|
+
if (existing) {
|
|
63
|
+
// Merge options if provided
|
|
64
|
+
if (options.secret)
|
|
65
|
+
existing.options.secret = options.secret;
|
|
66
|
+
return existing;
|
|
67
|
+
}
|
|
68
|
+
const runner = new XemsRunner({ ...options, persistPath: pathStr });
|
|
69
|
+
XemsRunner.runnersByPath.set(absPath, runner);
|
|
70
|
+
return runner;
|
|
71
|
+
}
|
|
58
72
|
enablePersistence(pathStr, secret, resources) {
|
|
59
73
|
if (!pathStr) {
|
|
60
74
|
throw new XemsError("EPNOTDEF", "Path is required when persistence is enabled");
|
|
@@ -68,6 +82,19 @@ class XemsRunner {
|
|
|
68
82
|
this.logger.error("xems", `Failed to create persistence directory: ${dir}`);
|
|
69
83
|
}
|
|
70
84
|
}
|
|
85
|
+
// Register this runner in the global registry for this path
|
|
86
|
+
const absPath = path.resolve(process.cwd(), pathStr);
|
|
87
|
+
const existing = XemsRunner.runnersByPath.get(absPath);
|
|
88
|
+
if (existing && existing !== this) {
|
|
89
|
+
this.logger.warn("xems", `Path ${pathStr} is already being managed by another runner. Switching to shared mode.`);
|
|
90
|
+
// Transitions this instance to delegate to the existing one if needed?
|
|
91
|
+
// Actually, for simplicity, we just ensure WE don't spawn if another one is already there.
|
|
92
|
+
}
|
|
93
|
+
XemsRunner.runnersByPath.set(absPath, this);
|
|
94
|
+
// Avoid redundant restarts if path is the same
|
|
95
|
+
if (this.options.persistPath === pathStr && this.process) {
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
71
98
|
this.options.persistPath = pathStr;
|
|
72
99
|
this.options.secret = secret;
|
|
73
100
|
if (resources?.cacheSize) {
|
|
@@ -273,7 +300,7 @@ class XemsRunner {
|
|
|
273
300
|
* @returns The generated session token (opaque handle)
|
|
274
301
|
*/
|
|
275
302
|
async createSession(sandbox, data, options = {}) {
|
|
276
|
-
const token =
|
|
303
|
+
const token = xyprissSecurity.getRandomBytes(24).toString("hex");
|
|
277
304
|
const value = typeof data === "string" ? data : JSON.stringify(data);
|
|
278
305
|
await this.set(sandbox, token, value, options.ttl);
|
|
279
306
|
return token;
|
|
@@ -349,6 +376,10 @@ class XemsRunner {
|
|
|
349
376
|
}
|
|
350
377
|
}
|
|
351
378
|
}
|
|
379
|
+
/**
|
|
380
|
+
* Enables hardware-bound persistent storage for XEMS.
|
|
381
|
+
*/
|
|
382
|
+
XemsRunner.runnersByPath = new Map();
|
|
352
383
|
/**
|
|
353
384
|
* Contextual wrapper for XEMS operations within a specific sandbox.
|
|
354
385
|
* Provides a cleaner, fluent API for advanced operations.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"XemsPlugin.js","sources":["../../../../../../src/plugins/builtin/xems/XemsPlugin.ts"],"sourcesContent":[null],"names":["Logger","fileURLToPath","spawn","readline","randomBytes"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"XemsPlugin.js","sources":["../../../../../../src/plugins/builtin/xems/XemsPlugin.ts"],"sourcesContent":[null],"names":["Logger","fileURLToPath","spawn","readline","getRandomBytes"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OFFICIAL_PLUGINS.js","sources":["../../../../../src/plugins/const/OFFICIAL_PLUGINS.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAAO,MAAM,gBAAgB,GAAG;IAC5B,oBAAoB
|
|
1
|
+
{"version":3,"file":"OFFICIAL_PLUGINS.js","sources":["../../../../../src/plugins/const/OFFICIAL_PLUGINS.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAAO,MAAM,gBAAgB,GAAG;IAC5B,oBAAoB;;IAEpB,8BAA8B;IAC9B,sBAAsB;;;;;"}
|
|
@@ -1,18 +1,81 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var os = require('os');
|
|
5
|
-
var fs = require('fs');
|
|
3
|
+
var xyprissSecurity = require('xypriss-security');
|
|
6
4
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
5
|
+
/**
|
|
6
|
+
* Lazy accessor for `localSysApi`.
|
|
7
|
+
*
|
|
8
|
+
* Deferred to call-time to break the circular initialization chain:
|
|
9
|
+
* `xhsc.ts` -> `PathApi` -> `XyprissTempDir` -> `xhsc` (localSysApi)
|
|
10
|
+
*/
|
|
11
|
+
function getSysApi() {
|
|
12
|
+
return require("../../xhsc").localSysApi;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Returns the absolute path to the XyPriss shared temp directory.
|
|
16
|
+
*
|
|
17
|
+
* @returns {string} Path to `<os.tmpdir>/nehonix.xypriss.data`
|
|
18
|
+
*/
|
|
19
|
+
function getXyprissTempDir() {
|
|
20
|
+
const sys = getSysApi();
|
|
21
|
+
return sys.path.join(sys.path.tempDir(), "nehonix.xypriss.data");
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Resolves and ensures a sub-path within the XyPriss temp directory exists.
|
|
25
|
+
*
|
|
26
|
+
* @param {string | string[]} _p - Sub-path segment(s) to append.
|
|
27
|
+
* @returns {string} The absolute resolved temp sub-path.
|
|
28
|
+
*/
|
|
29
|
+
function createXyprissTempDir(_p) {
|
|
30
|
+
const sys = getSysApi();
|
|
31
|
+
const base = getXyprissTempDir();
|
|
32
|
+
const segment = typeof _p === "string"
|
|
33
|
+
? _p
|
|
34
|
+
: _p.includes("/")
|
|
35
|
+
? _p.map((p) => p.replace("/", "")).join("/")
|
|
36
|
+
: _p.join("/");
|
|
37
|
+
// Use the native corrective layer to prevent doubling or redundant separators
|
|
38
|
+
const rawPath = segment.startsWith(base)
|
|
39
|
+
? segment
|
|
40
|
+
: sys.path.join(base, segment);
|
|
41
|
+
const normalisedPath = sys.path.correct(rawPath, { tentative: 2 });
|
|
42
|
+
// console.log("normalisedPath: ", normalisedPath);
|
|
43
|
+
if (!sys.fs.exists(normalisedPath)) {
|
|
44
|
+
sys.fs.mkdir(normalisedPath, { parents: true });
|
|
12
45
|
}
|
|
13
46
|
return normalisedPath;
|
|
14
47
|
}
|
|
48
|
+
/**
|
|
49
|
+
* **Session Temp Directory (singleton)**
|
|
50
|
+
*
|
|
51
|
+
* Unique sub-path generated once per process lifetime under the XyPriss
|
|
52
|
+
* temp root (`<os.tmpdir>/nehonix.xypriss.data/xuser/<hex4>`).
|
|
53
|
+
*
|
|
54
|
+
* The value is memoized on first access and remains stable for the entire
|
|
55
|
+
* duration of the running process, ensuring all callers within the same
|
|
56
|
+
* session share the same isolated scratch space.
|
|
57
|
+
*/
|
|
58
|
+
let _sessionTmpDir = null;
|
|
59
|
+
/**
|
|
60
|
+
* Returns the process-scoped user temp directory path.
|
|
61
|
+
*
|
|
62
|
+
* Generates a 4-byte hex identifier once and caches it for the lifetime
|
|
63
|
+
* of the process. Subsequent calls always return the same path.
|
|
64
|
+
*
|
|
65
|
+
* @returns {string} Absolute path, e.g. `/tmp/nehonix.xypriss.data/xuser/a3f1`
|
|
66
|
+
*/
|
|
67
|
+
function generateXUserTmpDir() {
|
|
68
|
+
if (_sessionTmpDir !== null) {
|
|
69
|
+
return _sessionTmpDir;
|
|
70
|
+
}
|
|
71
|
+
const sys = getSysApi();
|
|
72
|
+
const hex = xyprissSecurity.getRandomBytes(16).slice(0, 4).toString("hex");
|
|
73
|
+
_sessionTmpDir = sys.path.join(getXyprissTempDir(), "xuser", hex);
|
|
74
|
+
return _sessionTmpDir;
|
|
75
|
+
}
|
|
15
76
|
|
|
16
|
-
exports.XyprissTempDir = XyprissTempDir;
|
|
17
77
|
exports.createXyprissTempDir = createXyprissTempDir;
|
|
78
|
+
exports.generateXUserTmpDir = generateXUserTmpDir;
|
|
79
|
+
exports.getSysApi = getSysApi;
|
|
80
|
+
exports.getXyprissTempDir = getXyprissTempDir;
|
|
18
81
|
//# sourceMappingURL=XyprissTempDir.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"XyprissTempDir.js","sources":["../../../../../src/plugins/const/XyprissTempDir.ts"],"sourcesContent":[null],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"XyprissTempDir.js","sources":["../../../../../src/plugins/const/XyprissTempDir.ts"],"sourcesContent":[null],"names":["getRandomBytes"],"mappings":";;;;AAEA;;;;;AAKG;SACa,SAAS,GAAA;AACrB,IAAA,OAAQ,OAAO,CAAC,YAAY,CAAiC,CAAC,WAAW;AAC7E;AAEA;;;;AAIG;SACa,iBAAiB,GAAA;AAC7B,IAAA,MAAM,GAAG,GAAG,SAAS,EAAE;AACvB,IAAA,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,sBAAsB,CAAC;AACpE;AAEA;;;;;AAKG;AACG,SAAU,oBAAoB,CAAC,EAAqB,EAAA;AACtD,IAAA,MAAM,GAAG,GAAG,SAAS,EAAE;AACvB,IAAA,MAAM,IAAI,GAAG,iBAAiB,EAAE;AAEhC,IAAA,MAAM,OAAO,GACT,OAAO,EAAE,KAAK;AACV,UAAE;AACF,UAAE,EAAE,CAAC,QAAQ,CAAC,GAAG;cACb,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG;AAC5C,cAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC;;AAGxB,IAAA,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI;AACnC,UAAE;UACA,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC;AAClC,IAAA,MAAM,cAAc,GAAG,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;;IAGlE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE;AAChC,QAAA,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACnD;AAEA,IAAA,OAAO,cAAc;AACzB;AAEA;;;;;;;;;AASG;AACH,IAAI,cAAc,GAAkB,IAAI;AAExC;;;;;;;AAOG;SACa,mBAAmB,GAAA;AAC/B,IAAA,IAAI,cAAc,KAAK,IAAI,EAAE;AACzB,QAAA,OAAO,cAAc;IACzB;AAEA,IAAA,MAAM,GAAG,GAAG,SAAS,EAAE;AACvB,IAAA,MAAM,GAAG,GAAGA,8BAAc,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;AAC1D,IAAA,cAAc,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,OAAO,EAAE,GAAG,CAAC;AAEjE,IAAA,OAAO,cAAc;AACzB;;;;;;;"}
|